]> granicus.if.org Git - libx264/log
libx264
22 months agoFix high bit depth deinterleave of YUYV or UYVY master
Anton Mitrofanov [Sat, 28 Jan 2023 20:03:35 +0000 (23:03 +0300)]
Fix high bit depth deinterleave of YUYV or UYVY

22 months agoFix compilation of only 8 or 10 bit by a non-optimizing compiler
Anton Mitrofanov [Sat, 28 Jan 2023 18:45:30 +0000 (21:45 +0300)]
Fix compilation of only 8 or 10 bit by a non-optimizing compiler

22 months agoBump dates to 2023
Anton Mitrofanov [Sat, 28 Jan 2023 13:37:02 +0000 (16:37 +0300)]
Bump dates to 2023

2 years agoAdd Risc-V 64 bit
Roger Hardiman [Fri, 18 Nov 2022 20:15:40 +0000 (20:15 +0000)]
Add Risc-V 64 bit

2 years agoaarch64: pixel: add 10bits sad functions
Hubert Mazur [Thu, 6 Oct 2022 11:37:53 +0000 (11:37 +0000)]
aarch64: pixel: add 10bits sad functions

Provide routines for sad functions for high bit depth, i.e. 10 bits.
Benchmarks run on AWS Gravtion 2 instances.

sad_4x4_c: 583
sad_4x4_neon: 273
sad_4x8_c: 1179
sad_4x8_neon: 366
sad_4x16_c: 2121
sad_4x16_neon: 550
sad_8x4_c: 924
sad_8x4_neon: 213
sad_8x8_c: 1711
sad_8x8_neon: 316
sad_8x16_c: 3505
sad_8x16_neon: 497
sad_16x8_c: 3070
sad_16x8_neon: 635
sad_16x16_c: 6113
sad_16x16_neon: 1118

Signed-off-by: Hubert Mazur <hum@semihalf.com>
Signed-off-by: Grzegorz Bernacki <gjb@semihalf.com>
2 years agoffms: Fix crash if stream properties changes
Anton Mitrofanov [Wed, 5 Oct 2022 13:36:50 +0000 (16:36 +0300)]
ffms: Fix crash if stream properties changes

2 years agocli: Use space instead of newline as autocomplete delimiter
Henrik Gramner [Sat, 1 Oct 2022 15:21:11 +0000 (17:21 +0200)]
cli: Use space instead of newline as autocomplete delimiter

On most systems any whitespace is fine, but MSYS2 wants ASCII 0x20.

2 years agoMakefile: Add missing dependency of '.depend' on 'oclobj.h'
Sergei Trofimovich [Mon, 19 Sep 2022 20:05:56 +0000 (21:05 +0100)]
Makefile: Add missing dependency of '.depend' on 'oclobj.h'

Without the change parallel build occasionally fails as:

    $ make --shuffle
    ...
    gcc ... -c common/opencl.c -o common/opencl-8.o ...
    common/opencl.c:116:10: fatal error: common/oclobj.h: No such file or directory
      116 | #include "common/oclobj.h"
          |          ^~~~~~~~~~~~~~~~~

Best reproducible with `make --shuffle` mode:
   https://savannah.gnu.org/bugs/index.php?62100

This happens because `common/oclobj.h` is an autogenerated file.
Normally `.depend` would contain this autogenerated dependency.
But nothing forces `common/oclobj.h` to be generated.

The change moves dependency of $(GENERATED) from final binaries
to `.depend` itself:

    .depend: $(GENERATED)

2 years agoFix memory overread in mbtree
Anton Mitrofanov [Wed, 31 Aug 2022 16:45:23 +0000 (19:45 +0300)]
Fix memory overread in mbtree

2 years agoCI: Fix vlc-contrib linking on macOS
Anton Mitrofanov [Thu, 1 Sep 2022 20:17:40 +0000 (23:17 +0300)]
CI: Fix vlc-contrib linking on macOS

Use pkg-config from the custom PATH.

2 years agoCI: Migrate build runners to macOS Monterey
Anton Mitrofanov [Wed, 31 Aug 2022 17:06:58 +0000 (20:06 +0300)]
CI: Migrate build runners to macOS Monterey

2 years agoCI: Fix vlc-contrib processing on macos stable
Anton Mitrofanov [Wed, 1 Jun 2022 22:31:50 +0000 (01:31 +0300)]
CI: Fix vlc-contrib processing on macos

Use perl for in-place editing because sed doesn't work with symlinks.

2 years agoconfigure: Allow AviSynth+ on *BSD and Haiku
Stephen Hutchinson [Mon, 21 Feb 2022 23:22:09 +0000 (18:22 -0500)]
configure: Allow AviSynth+ on *BSD and Haiku

2 years agoFix build on MIPS with AviSynth+ support
Anton Mitrofanov [Tue, 22 Feb 2022 17:46:39 +0000 (20:46 +0300)]
Fix build on MIPS with AviSynth+ support

2 years agoReplace AvxSynth with AviSynth+ on POSIX systems
Anton Mitrofanov [Sat, 19 Feb 2022 11:34:04 +0000 (14:34 +0300)]
Replace AvxSynth with AviSynth+ on POSIX systems

2 years agoCheck user-entered fps parameter range
Anton Mitrofanov [Sat, 19 Feb 2022 12:14:22 +0000 (15:14 +0300)]
Check user-entered fps parameter range

2 years agoFix -Wchar-subscripts and -Wstrict-aliasing warnings
Anton Mitrofanov [Sat, 19 Feb 2022 11:42:14 +0000 (14:42 +0300)]
Fix -Wchar-subscripts and -Wstrict-aliasing warnings

2 years agox86inc: Add REPX macro to repeat instructions/operations
Henrik Gramner [Sun, 20 Feb 2022 13:54:25 +0000 (14:54 +0100)]
x86inc: Add REPX macro to repeat instructions/operations

When operating on large blocks of data it's common to repeatedly use
an instruction on multiple registers. Using the REPX macro makes it
easy to quickly write dense code to achieve this without having to
explicitly duplicate the same instruction over and over.

For example,

    REPX {paddw x, m4}, m0, m1, m2, m3
    REPX {mova [r0+16*x], m5}, 0, 1, 2, 3

will expand to

    paddw       m0, m4
    paddw       m1, m4
    paddw       m2, m4
    paddw       m3, m4
    mova [r0+16*0], m5
    mova [r0+16*1], m5
    mova [r0+16*2], m5
    mova [r0+16*3], m5

2 years agox86inc: Fix edge case in forced VEX-encoding
Henrik Gramner [Sun, 20 Feb 2022 13:21:34 +0000 (14:21 +0100)]
x86inc: Fix edge case in forced VEX-encoding

Correctly handle emulation of 4-operand instructions (e.g. 'shufps')
where src1 is a memory operand.

2 years agox86inc: Enable 4-operand emulation for variable blend instructions
Henrik Gramner [Sat, 19 Feb 2022 21:57:49 +0000 (22:57 +0100)]
x86inc: Enable 4-operand emulation for variable blend instructions

With legacy encoding the last operand (the index) must be xmm0,
but aside from that emulating non-destructive forms works
the same as any other instruction.

2 years agoFix build on OpenBSD and Android
Anton Mitrofanov [Sat, 5 Feb 2022 20:33:10 +0000 (20:33 +0000)]
Fix build on OpenBSD and Android

2 years agoFix implicit integer sign change and truncation (part 2)
Anton Mitrofanov [Tue, 25 Jan 2022 18:18:44 +0000 (21:18 +0300)]
Fix implicit integer sign change and truncation (part 2)

2 years agocheckasm: Print all errors to stderr
Anton Mitrofanov [Tue, 25 Jan 2022 14:06:56 +0000 (17:06 +0300)]
checkasm: Print all errors to stderr

2 years agoFix integer overflow with special CQM and 10-bit encoding
Anton Mitrofanov [Mon, 24 Jan 2022 18:28:14 +0000 (21:28 +0300)]
Fix integer overflow with special CQM and 10-bit encoding

2 years agoBump dates to 2022
Anton Mitrofanov [Mon, 24 Jan 2022 16:46:08 +0000 (19:46 +0300)]
Bump dates to 2022

2 years agoconfigure: Always make shared imply PIC
Jessica Clarke [Sun, 19 Dec 2021 22:13:09 +0000 (22:13 +0000)]
configure: Always make shared imply PIC

Building a shared library without -fPIC does not make sense. On most
architectures, especially recent ones, doing so will give link-time
errors due to relocations in read-only sections like .text. On some
legacy architectures, including i386, it is allowed by default, but will
warn, and is highly discouraged due to the overheads it adds at library
load time. Most architectures were already listed here as having shared
imply PIC, but not all, such as i386 which ends up with unwanted text
relocations, as well as architectures not known to the build system
currently like RISC-V, which does not permit text relocations by
default. There is no good reason to want shared without PIC on any
architecture, so just remove the architecture list.

3 years agoRemove thread priority tweaking
Henrik Gramner [Sun, 12 Dec 2021 22:15:51 +0000 (23:15 +0100)]
Remove thread priority tweaking

Back in 2009 when this was added it improved scheduling of lookahead
threads on prevalent operating systems at the time.

According to more recent testing by Intel however, lowering thread
priorities does not improve performance on modern operating systems.
And more importantly, doing so on systems with heterogeneous CPU
topologies may actually result in a severe performance reduction.

Removing this code altogether eliminates the issue with performance
degradation on such systems, while having no noticeable impact on
regular systems with homogeneous CPU topologies.

3 years agoMakefile: Do not create multiple directories in one go
Claes Nästén [Fri, 19 Nov 2021 13:46:06 +0000 (14:46 +0100)]
Makefile: Do not create multiple directories in one go

/usr/ucb/bin/install on Solaris does not support creating multiple
directories in one go, issue multiple install commands instead.

3 years agoRemove redundant dot in help
Anton Mitrofanov [Tue, 7 Dec 2021 13:59:00 +0000 (16:59 +0300)]
Remove redundant dot in help

3 years agolavf: Remove use of deprecated av_init_packet
Anton Mitrofanov [Wed, 29 Sep 2021 22:55:08 +0000 (01:55 +0300)]
lavf: Remove use of deprecated av_init_packet

3 years agoCI: Update docker images
Anton Mitrofanov [Mon, 6 Dec 2021 19:02:31 +0000 (22:02 +0300)]
CI: Update docker images

3 years agolookahead: Keep b_exit_thread under ifbuf.mutex
Jean-Baptiste Kempf [Tue, 28 Sep 2021 19:47:40 +0000 (21:47 +0200)]
lookahead: Keep b_exit_thread under ifbuf.mutex

The lookahead_thread main loop checks b_exit_thread and exits if it is set.
That flag is set by x264_lookahead_delete, which uses ifbuf.mutex to guard accessing it.
However, the read in the while-loop condition of lookahead_thread is not guarded,
and so TSAN sometimes reports a data race.

3 years agocheckasm: Correctly parse the seed argument as unsigned
Martin Storsjö [Sat, 25 Sep 2021 22:18:47 +0000 (01:18 +0300)]
checkasm: Correctly parse the seed argument as unsigned

This fixes rerunning checkasm with an earlier printed seed, when
it's outside of the signed range.

3 years agoFix implicit integer sign change and truncation
Anton Mitrofanov [Fri, 27 Aug 2021 16:18:31 +0000 (19:18 +0300)]
Fix implicit integer sign change and truncation

3 years agoFix integer overflow in cavlc trellis
Anton Mitrofanov [Fri, 10 Sep 2021 12:36:19 +0000 (15:36 +0300)]
Fix integer overflow in cavlc trellis

3 years agoFix integer overflow in cabac psy-trellis
Anton Mitrofanov [Fri, 10 Sep 2021 12:35:46 +0000 (15:35 +0300)]
Fix integer overflow in cabac psy-trellis

3 years agoFix integer overflow in psy-rd
Vitaly Lysenkov [Tue, 10 Aug 2021 21:17:58 +0000 (21:17 +0000)]
Fix integer overflow in psy-rd

3 years agoFix gcc warnings
Anton Mitrofanov [Thu, 26 Aug 2021 16:03:09 +0000 (19:03 +0300)]
Fix gcc warnings

3 years agoFix typos with codespell tool
Ziemowit Zabawa [Fri, 9 Jul 2021 10:42:05 +0000 (12:42 +0200)]
Fix typos with codespell tool

This includes fixing convert_method_to_flag so it recognizes "gauss"
parameter properly instead of silently defaulting to bicubic.

3 years agox86inc: Add an option for forcing VEX-encoding in non-AVX functions
Henrik Gramner [Wed, 25 Aug 2021 20:01:38 +0000 (22:01 +0200)]
x86inc: Add an option for forcing VEX-encoding in non-AVX functions

3 years agox86inc: Support memory operands in src1 in 3-operand instructions
Henrik Gramner [Mon, 14 Jun 2021 10:20:01 +0000 (12:20 +0200)]
x86inc: Support memory operands in src1 in 3-operand instructions

Particularly in code that makes heavy use of macros it's possible
to end up with 3-operand instructions with a memory operand in src1.
In the case of SSE this works fine due to automatic move insertions,
but in AVX that fails since memory operands are only allowed in src2.

The main purpose of this feature is to minimize the amount of code
changes required to facilitate conversion of existing SSE code to AVX.

3 years agoAdd support for Sony XAVC Class 300 and 480
Phillip Blucas [Thu, 4 Oct 2018 18:35:57 +0000 (13:35 -0500)]
Add support for Sony XAVC Class 300 and 480

This allows for 2160p UHD at up to 960 Mbit/s.

3 years agoCosmetics: Add missing backslashes inside #defines
Ziemowit Zabawa [Sun, 13 Jun 2021 00:35:11 +0000 (02:35 +0200)]
Cosmetics: Add missing backslashes inside #defines

3 years agoFix --tcfile-in support
Anton Mitrofanov [Wed, 19 May 2021 16:40:22 +0000 (19:40 +0300)]
Fix --tcfile-in support

Accept files created by MKVToolNix version 17.0.0 or newer.

3 years agoFix undefined behavior: left shift of negative value
Anton Mitrofanov [Mon, 17 May 2021 12:28:01 +0000 (15:28 +0300)]
Fix undefined behavior: left shift of negative value

Compilers are good at optimizing multiplication by shift.

3 years agoFix gcc warnings
Anton Mitrofanov [Fri, 14 May 2021 13:21:43 +0000 (16:21 +0300)]
Fix gcc warnings

3 years agolavf: Fix compilation with new versions of ffmpeg
Anton Mitrofanov [Sun, 13 Jun 2021 12:43:57 +0000 (15:43 +0300)]
lavf: Fix compilation with new versions of ffmpeg

Add the missing header as avcodec.h is no longer included in avformat.h.

3 years agoCosmetics: Fix vertical alignment for long_options
Anton Mitrofanov [Mon, 19 Apr 2021 17:00:18 +0000 (20:00 +0300)]
Cosmetics: Fix vertical alignment for long_options

3 years agoSupport writing the content light level information SEI message
Phillip Blucas [Tue, 13 Apr 2021 01:13:11 +0000 (20:13 -0500)]
Support writing the content light level information SEI message

Use --cll to specify the maximum content light level (MaxCLL)
and the maximum frame average light level (MaxFALL) as described
by the CTA 861.3 specification.

3 years agoSupport writing the mastering display color volume SEI message
Phillip Blucas [Wed, 12 Jun 2019 14:52:38 +0000 (09:52 -0500)]
Support writing the mastering display color volume SEI message

Use --mastering-display to specify the properties of the reference display.
A formatted string with all 10 values is required: G,B,R primaries and
white point coordinates, plus max/min brightness. Coordinates are in
0.00002 increments. Brightness units are 0.0001 cd/m^2.

For example, a 1000 nit BT.2020 display with a 0.0001 nit black level:
--mastering-display G(13250,34500)B(7500,3000)R(34000,16000)WP(15635,16450)L(10000000,1)

3 years agoFix parsing of enums
Anton Mitrofanov [Mon, 19 Apr 2021 16:35:56 +0000 (19:35 +0300)]
Fix parsing of enums

Ignore empty string values for enum.

3 years agoy4m: Support ffmpeg's color range extension
Anton Mitrofanov [Mon, 3 May 2021 10:54:26 +0000 (13:54 +0300)]
y4m: Support ffmpeg's color range extension

3 years agoy4m: Support files with longer sequence header
Anton Mitrofanov [Wed, 21 Apr 2021 15:49:34 +0000 (18:49 +0300)]
y4m: Support files with longer sequence header

ffmpeg can now generate y4m files with sequence header length > 80.

3 years agoCI: Add macos-arm64 target (cross-compile)
Anton Mitrofanov [Mon, 5 Apr 2021 19:39:12 +0000 (22:39 +0300)]
CI: Add macos-arm64 target (cross-compile)

Rename the old macos target to macos-x86_64.

3 years agoUse sysconf(_SC_NPROCESSORS_ONLN) on OpenBSD
Brad Smith [Sat, 3 Apr 2021 20:53:21 +0000 (16:53 -0400)]
Use sysconf(_SC_NPROCESSORS_ONLN) on OpenBSD

On modern versions of OpenBSD, the number of processors online may differ from
the number of processors configured.

3 years agoarm: Enable HAVE_SECTION_DATA_REL_RO for OpenBSD
Brad Smith [Sat, 7 Mar 2020 19:38:27 +0000 (14:38 -0500)]
arm: Enable HAVE_SECTION_DATA_REL_RO for OpenBSD

3 years agomp4: Add GPAC detection with pkg-config
Anton Mitrofanov [Thu, 11 Feb 2021 18:10:31 +0000 (21:10 +0300)]
mp4: Add GPAC detection with pkg-config

3 years agoaarch64: Fix the zigzag_interleave_8x8_cavlc_neon function
Martin Storsjö [Mon, 12 Apr 2021 06:54:56 +0000 (09:54 +0300)]
aarch64: Fix the zigzag_interleave_8x8_cavlc_neon function

Use 'cmhs' (which does an unsigned greater or equal comparison)
instead of 'cmhi' (which does an unsigned greater comparison).

This makes sure that dct coeffs with a magnitude of 1 are recognized
in the output nnz buffer.

3 years agox86inc: Add stack probing on Windows
Henrik Gramner [Wed, 10 Feb 2021 14:40:32 +0000 (15:40 +0100)]
x86inc: Add stack probing on Windows

Large stack allocations on Windows need to use stack probing in order
to guarantee that all stack memory is committed before accessing it.
This is done by ensuring that the guard page(s) at the end of the
currently committed pages are touched prior to any pages beyond that.

3 years agoSilence false positive -Wformat-truncation warning
Henrik Gramner [Thu, 11 Feb 2021 13:24:27 +0000 (14:24 +0100)]
Silence false positive -Wformat-truncation warning

3 years agoFix MB stats
Anton Mitrofanov [Mon, 8 Feb 2021 18:07:36 +0000 (21:07 +0300)]
Fix MB stats

Bug report by Zhengzhi Duan.

3 years agoCI: Update macos URL to vlc-contrib
Anton Mitrofanov [Mon, 8 Feb 2021 21:25:32 +0000 (00:25 +0300)]
CI: Update macos URL to vlc-contrib

3 years agoFix VBV overflow check for B-frames
Anton Mitrofanov [Mon, 1 Feb 2021 19:32:37 +0000 (22:32 +0300)]
Fix VBV overflow check for B-frames

3 years agox86inc: Fix LOAD_MM_PERMUTATION for AVX-512
Anton Mitrofanov [Wed, 27 Jan 2021 14:14:55 +0000 (17:14 +0300)]
x86inc: Fix LOAD_MM_PERMUTATION for AVX-512

3 years agoFix PADH alignment
Anton Mitrofanov [Thu, 21 Jan 2021 20:26:27 +0000 (23:26 +0300)]
Fix PADH alignment

Make pointers to padded buffers aligned both before and after padding.

3 years agoFix alignment of chroma buffer for weightp
Anton Mitrofanov [Tue, 26 Jan 2021 17:43:34 +0000 (20:43 +0300)]
Fix alignment of chroma buffer for weightp

In 10-bit mode pixel_asd8 expects 16-byte alignment for pix1 and pix2.

3 years agoMakefile: Drop the -T argument to install
Henrik Gramner [Tue, 26 Jan 2021 01:21:16 +0000 (02:21 +0100)]
Makefile: Drop the -T argument to install

It's not required, and BSD doesn't support it.

3 years agoFix use of nalu_process callback
Anton Mitrofanov [Thu, 21 Jan 2021 13:41:42 +0000 (16:41 +0300)]
Fix use of nalu_process callback

Broke after unifying of 8-bit and 10-bit libraries.

3 years agoFix weighting for B-frames
Anton Mitrofanov [Tue, 19 Jan 2021 21:20:18 +0000 (00:20 +0300)]
Fix weighting for B-frames

This bug never occurs with the current reference management logic.
Bug report by Lingjiang Fang.

3 years agoFix CAVLC encoding
Anton Mitrofanov [Fri, 22 Jan 2021 00:51:23 +0000 (03:51 +0300)]
Fix CAVLC encoding

This bug mainly occurred when encoding with high bitrate (low QP).
It did not occur when encoding in baseline or main profile.

3 years agoBump dates to 2021
Anton Mitrofanov [Sun, 24 Jan 2021 13:28:24 +0000 (16:28 +0300)]
Bump dates to 2021

3 years agoCI: Move macos to catalina builders
Konstantin Pavlov [Tue, 24 Nov 2020 17:53:11 +0000 (20:53 +0300)]
CI: Move macos to catalina builders

3 years agoCI: Update URLs to the latest vlc-contrib
Anton Mitrofanov [Fri, 8 Jan 2021 15:51:45 +0000 (18:51 +0300)]
CI: Update URLs to the latest vlc-contrib

3 years agogitlab-ci: Add build-only configurations with llvm-mingw targeting armv7/aarch64
Martin Storsjö [Mon, 26 Oct 2020 08:01:33 +0000 (10:01 +0200)]
gitlab-ci: Add build-only configurations with llvm-mingw targeting armv7/aarch64

3 years agoconfigure: Fix endianness test when LTO is enabled through CFLAGS
Henrik Gramner [Sun, 29 Nov 2020 13:38:07 +0000 (14:38 +0100)]
configure: Fix endianness test when LTO is enabled through CFLAGS

3 years agogitlab-ci: Remove the unused _PATH variable
Martin Storsjö [Mon, 26 Oct 2020 08:36:36 +0000 (10:36 +0200)]
gitlab-ci: Remove the unused _PATH variable

It became unused in cde9a93319bea766a92e306d69059c76de970190.

3 years agoaarch64/asm: optimize cabac asm
Janne Grunau [Thu, 1 Oct 2020 21:08:37 +0000 (21:08 +0000)]
aarch64/asm: optimize cabac asm

0.5% - 2% overall speedup on
`./x264 --threads X --profile high --preset veryfast --crf 15 -o /dev/null park_joy_420_720p50.y4m`
cabac is responsible for roughly 1/6 of the CPU use.
Branch mispredictions are reduced by 15% to 20%.

cortex-s53: 0.5% faster
cortex-a72: 2%  faster
neoverse-n1: 0.9% faster

3 years agoaarch64/asm: support offsets in movrel macro
Janne Grunau [Thu, 1 Oct 2020 20:15:18 +0000 (22:15 +0200)]
aarch64/asm: support offsets in movrel macro

Imported from dav1d.

3 years agoaarch64/asm: optimize cabac_encode_terminal with extrinsic knowledge
Janne Grunau [Thu, 1 Oct 2020 23:49:53 +0000 (01:49 +0200)]
aarch64/asm: optimize cabac_encode_terminal with extrinsic knowledge

Approach taken from x86 asm. Overall speedup meaningless.
cabac_encode_terminal on average twice as fast on cortex-53 while
encoding with following command:
./x264 --threads 1 --profile high --preset veryfast --crf 15 -o /dev/null park_joy_420_720p50.y4m

Less relative speedup on cortex-a72/73.

4 years agoAdd a missing include of stdlib.h
Martin Storsjö [Mon, 26 Oct 2020 07:42:20 +0000 (09:42 +0200)]
Add a missing include of stdlib.h

Since 7ab4c928ef4511ea5753a36a57c3506d9fd5086b, osdep.h contains
calls to malloc/free.

This fixes building with MSVC targeting WinRT.

4 years agoconfigure: Add Apple Silicon support
Damiano Galassi [Thu, 23 Jul 2020 15:23:09 +0000 (17:23 +0200)]
configure: Add Apple Silicon support

4 years agox86: Remove workaround for nasm on macho64
Anton Mitrofanov [Thu, 8 Oct 2020 18:16:53 +0000 (21:16 +0300)]
x86: Remove workaround for nasm on macho64

4 years agox86: Fix exhaustive search ME asm
Anton Mitrofanov [Sat, 19 Sep 2020 10:30:28 +0000 (13:30 +0300)]
x86: Fix exhaustive search ME asm

4 years agox86: Fix memory operands for inline asm
Anton Mitrofanov [Tue, 8 Sep 2020 13:36:24 +0000 (16:36 +0300)]
x86: Fix memory operands for inline asm

4 years agox86: Fix clobbers for inline asm
Anton Mitrofanov [Fri, 4 Sep 2020 15:00:45 +0000 (18:00 +0300)]
x86: Fix clobbers for inline asm

4 years agoAdd support for long filenames on Windows 10
Henrik Gramner [Sat, 12 Sep 2020 17:24:00 +0000 (19:24 +0200)]
Add support for long filenames on Windows 10

4 years agomp4: Remove GPAC Windows Unicode compatibility shim
Henrik Gramner [Sat, 12 Sep 2020 17:23:57 +0000 (19:23 +0200)]
mp4: Remove GPAC Windows Unicode compatibility shim

GPAC has native UTF-8 support nowadays.

Also move the compatibility code to input/avs.c since that's the only
remaining code that uses it now.

4 years agomp4: Fix compiling with recent GPAC versions
Henrik Gramner [Sat, 12 Sep 2020 17:23:55 +0000 (19:23 +0200)]
mp4: Fix compiling with recent GPAC versions

4 years agoRename function x264_strdup to x264_param_strdup
Anton Mitrofanov [Sun, 12 Jul 2020 15:53:32 +0000 (18:53 +0300)]
Rename function x264_strdup to x264_param_strdup

4 years agocli: Add info about gpac/lsmash into version info
Anton Mitrofanov [Sun, 12 Jul 2020 15:12:53 +0000 (18:12 +0300)]
cli: Add info about gpac/lsmash into version info

4 years agoconfigure: Add options for bash-completion install
Anton Mitrofanov [Tue, 14 Jul 2020 13:35:11 +0000 (15:35 +0200)]
configure: Add options for bash-completion install

4 years agoAdd new API function: x264_param_cleanup
Anton Mitrofanov [Thu, 2 Jul 2020 20:23:50 +0000 (22:23 +0200)]
Add new API function: x264_param_cleanup

Should be called to free struct members allocated internally by libx264,
e.g. by x264_param_parse.
Partially based on videolan/x264!18 by Derek Buitenhuis.

4 years agomp4: Update GPAC support to v0.8.0 or later
A. David [Thu, 2 Jul 2020 17:45:50 +0000 (19:45 +0200)]
mp4: Update GPAC support to v0.8.0 or later

4 years agocli: Install bash autocomplete during 'make install'
Henrik Gramner [Wed, 10 Jun 2020 17:18:08 +0000 (19:18 +0200)]
cli: Install bash autocomplete during 'make install'

4 years agolavf: Update to the new API for iterating demuxers
Henrik Gramner [Wed, 10 Jun 2020 01:21:24 +0000 (03:21 +0200)]
lavf: Update to the new API for iterating demuxers

4 years agoCI: Add lsmash support + Change ffmpeg source
Anton Mitrofanov [Tue, 30 Jun 2020 19:28:05 +0000 (22:28 +0300)]
CI: Add lsmash support + Change ffmpeg source

4 years agoFix compilation with nasm 2.15
Henrik Gramner [Thu, 2 Jul 2020 01:00:32 +0000 (03:00 +0200)]
Fix compilation with nasm 2.15

4 years agoRemove code for non-positive f_ip_factor/f_pb_factor
Anton Mitrofanov [Sun, 26 Apr 2020 00:19:00 +0000 (03:19 +0300)]
Remove code for non-positive f_ip_factor/f_pb_factor

Currently they are guaranteed to be positive.

4 years agoconfigure: Fix building under the MSYS shell
JHammler [Mon, 15 Jun 2020 19:57:16 +0000 (21:57 +0200)]
configure: Fix building under the MSYS shell

4 years agoconfigure: allow 'strings' override via STRINGS variable
Sergei Trofimovich [Fri, 5 Jun 2020 17:34:02 +0000 (19:34 +0200)]
configure: allow 'strings' override via STRINGS variable

This allows building x264 on systems where 'strings' or
'${HOST}-strings' does not exist, but llvm-strings exists.