From 36e6517ebc963fce977c94672c50313e376a1d54 Mon Sep 17 00:00:00 2001 From: Sebastian Ramacher Date: Sat, 26 Feb 2022 17:21:41 +0000 Subject: [PATCH] Import x264_0.163.3060+git5db6aa6-2.debian.tar.xz [dgit import tarball x264 2:0.163.3060+git5db6aa6-2 x264_0.163.3060+git5db6aa6-2.debian.tar.xz] --- README.Debian | 10 + README.source | 1 + changelog | 1023 +++++++++++++++++++++++++++++ confflags | 159 +++++ control | 75 +++ control.in | 75 +++ copyright | 164 +++++ debian-version.sh | 11 + gbp.conf | 6 + libx264-dev.install.in | 4 + libx264N.install.in | 1 + patches/properly_detect_x32.patch | 40 ++ patches/series | 1 + rules | 66 ++ source/format | 1 + tests/control | 3 + tests/encode-testimage | 14 + upstream/metadata | 2 + watch | 1 + x264-get-orig-source | 61 ++ x264.1 | 809 +++++++++++++++++++++++ x264.docs | 1 + x264.install | 1 + x264.manpages | 1 + 24 files changed, 2530 insertions(+) create mode 100644 README.Debian create mode 100644 README.source create mode 100644 changelog create mode 100644 confflags create mode 100644 control create mode 100644 control.in create mode 100644 copyright create mode 100644 debian-version.sh create mode 100644 gbp.conf create mode 100644 libx264-dev.install.in create mode 100644 libx264N.install.in create mode 100644 patches/properly_detect_x32.patch create mode 100644 patches/series create mode 100755 rules create mode 100644 source/format create mode 100644 tests/control create mode 100755 tests/encode-testimage create mode 100644 upstream/metadata create mode 100644 watch create mode 100755 x264-get-orig-source create mode 100644 x264.1 create mode 100644 x264.docs create mode 100644 x264.install create mode 100644 x264.manpages diff --git a/README.Debian b/README.Debian new file mode 100644 index 0000000..5f29696 --- /dev/null +++ b/README.Debian @@ -0,0 +1,10 @@ +This package ships non-PIC code in shared objects in the i386 variant + +The reason is that x264 uses a lot of hand written assembler that is not +relocatable for performance reasons. Writing the assembler code in a way +that is becomes relocatable is unfeasible. + +Upstream takes care to use non-pic code only on architectures that +support this. + + -- Reinhard Tartler , Fri, 10 Feb 2012 21:30:39 +0100 diff --git a/README.source b/README.source new file mode 100644 index 0000000..37b17f9 --- /dev/null +++ b/README.source @@ -0,0 +1 @@ +This package uses quilt for patching. See /usr/share/doc/quilt/README.source. diff --git a/changelog b/changelog new file mode 100644 index 0000000..11b21c6 --- /dev/null +++ b/changelog @@ -0,0 +1,1023 @@ +x264 (2:0.163.3060+git5db6aa6-2) unstable; urgency=medium + + * Team upload + * Upload to unstable + + -- Sebastian Ramacher Sat, 26 Feb 2022 18:21:41 +0100 + +x264 (2:0.163.3060+git5db6aa6-1) experimental; urgency=medium + + [ Debian Janitor ] + * Use secure URI in Homepage field. + * Set upstream metadata fields: Repository. + * Update standards version to 4.5.1, no changes needed. + + [ Rico Tzschichholz ] + * Update to new stable upstream + * New upstream version 0.163.3060+git5db6aa6 + * Update debian/control for soname bump + * Drop upstream and obsolete GPAC patches + * Add build-dep on pkg-config + * Regenerate manpage + + [ Sebastian Ramacher ] + * debian/control: Bump Standards-Version + * debian/copyright: Bump copyright years + + -- Rico Tzschichholz Fri, 18 Feb 2022 08:35:05 +0100 + +x264 (2:0.160.3011+gitcde9a93-2.1) unstable; urgency=medium + + * Non-maintainer upload. + * Backport upstream fix to support GPAC >= 0.8.0. (Closes: #975441) + + -- Adrian Bunk Thu, 15 Jul 2021 15:06:22 +0300 + +x264 (2:0.160.3011+gitcde9a93-2) unstable; urgency=medium + + * Team upload + * Upload to unstable + * debian/rules: Fix awk invocation to work with make 4.2 and 4.3 (Closes: + #966241) + + -- Sebastian Ramacher Sun, 26 Jul 2020 16:52:56 +0200 + +x264 (2:0.160.3011+gitcde9a93-1) experimental; urgency=medium + + * Update to new stable upstream + * New upstream version 0.160.3011+gitcde9a93 + * Update debian/control for soname bump + * Regenerate manpage + + -- Rico Tzschichholz Mon, 13 Jul 2020 21:29:33 +0200 + +x264 (2:0.159.2999+git296494a-2) unstable; urgency=medium + + * Team upload + * Upload to unstable + + -- Sebastian Ramacher Sun, 12 Jul 2020 18:46:44 +0200 + +x264 (2:0.159.2999+git296494a-1) experimental; urgency=medium + + [ Fabian Greffrath ] + * Remove myself from Uploaders + + [ Rico Tzschichholz ] + * Update to new stable upstream + * New upstream version 0.159.2999+git296494a + * Drop upstreamed "Export x264_stack_align" patch + * Update debian/control for soname bump + * Regenerate manpage + + [ Ondřej Nový ] + * Use debhelper-compat instead of debian/compat + + [ Sebastian Ramacher ] + * debian/control: + - Bump debhlper compat to 13 + - Bump Standards-Version + - Set RRR: no + * debian/copyright: Bump copyright years + * debian/rules: Fix awk invocation + + -- Rico Tzschichholz Sun, 21 Jun 2020 15:52:08 +0200 + +x264 (2:0.155.2917+git0a84d98-2) unstable; urgency=medium + + * Team upload. + * Upload to unstable. + + -- Sebastian Ramacher Thu, 27 Sep 2018 22:03:40 +0200 + +x264 (2:0.155.2917+git0a84d98-1) experimental; urgency=medium + + [ Ondřej Nový ] + * d/copyright: Change Format URL to correct one + * d/control: Set Vcs-* to salsa.debian.org + * d/changelog: Remove trailing whitespaces + + [ Felipe Sateler ] + * Change maintainer address to debian-multimedia@lists.debian.org + + [ Ondřej Nový ] + * d/tests: Use AUTOPKGTEST_TMP instead of ADTTMP + + [ Rico Tzschichholz ] + * Update to new stable upstream + * New upstream version 0.155.2917+git0a84d98 + * Drop custom 10bit build, upstream supports this as runtime option now + * Update debian/control for soname bump + * Regenerate manpage + * Update copyright years + + [ Sebastian Ramacher ] + * debian/{rules,confflags}: + - Use dpkg include for architecture variables. + - Fix dh_install --list-missing warning. + - Remove cruft. + - Handle CPPFLAGS. + * debian/patches: Export x264_stack_align. + * debian/: Bump debhelper compat to 11. + * debian/control: + - Drop obsolete dpkg-dev B-D. + - Bump Standards-Version. + + -- Rico Tzschichholz Fri, 24 Aug 2018 17:25:59 +0200 + +x264 (2:0.152.2854+gite9a5903-2) unstable; urgency=medium + + * Team upload. + * Upload to unstable. + + -- Sebastian Ramacher Fri, 19 Jan 2018 12:36:28 +0100 + +x264 (2:0.152.2854+gite9a5903-1) experimental; urgency=medium + + [ Rico Tzschichholz ] + * Update to new stable upstream + * New upstream version 0.152.2854+gite9a5903 + * Require nasm (>= 2.13) instead of yasm + * Update debian/control for soname bump + * Regenerate manpage + + [ Sebastian Ramacher ] + * debian/control: + - Bump Standards-Version. + - Remove obsolete Pre-Depends. + + -- Rico Tzschichholz Fri, 05 Jan 2018 12:14:48 +0100 + +x264 (2:0.148.2795+gitaaa9aa8-1) unstable; urgency=medium + + [ Rico Tzschichholz ] + * Update to new stable upstream + * New upstream version 0.148.2795+gitaaa9aa8 + * Regenerate manpage + * Update copyright years + + [ Sebastian Ramacher ] + * debian/control: Bump Standards-Version. + + -- Rico Tzschichholz Wed, 28 Jun 2017 08:31:44 +0200 + +x264 (2:0.148.2748+git97eaef2-1) unstable; urgency=medium + + * Update to new stable upstream + * New upstream version 0.148.2748+git97eaef2 + * Regenerate manpage + + -- Rico Tzschichholz Wed, 25 Jan 2017 10:40:48 +0100 + +x264 (2:0.148.2728+git4d5c8b0-1) unstable; urgency=medium + + * Update to new stable upstream + * New upstream version 0.148.2728+git4d5c8b0 + + -- Rico Tzschichholz Thu, 08 Dec 2016 09:36:51 +0100 + +x264 (2:0.148.2708+git86b7198-1) unstable; urgency=medium + + [ Ondřej Nový ] + * autopkgtest: Use ffmpeg/ffprobe instead of deprecated avconv/avprobe + * autopkgtest: Use $ADTTMP instead of own tmp directory + * autopkgtest: Check if produced file is H.264 + + [ Rico Tzschichholz ] + * Update to new stable upstream + * Imported Upstream version 0.148.2708+git86b7198 + + [ Helmut Grohne ] + * Fix FTCBFS: Pass cross flags to configure. (Closes: #838317) + + -- Rico Tzschichholz Wed, 21 Sep 2016 22:59:37 +0200 + +x264 (2:0.148.2699+gita5e06b9-1) unstable; urgency=medium + + * Update to new stable upstream + * Imported Upstream version 0.148.2699+gita5e06b9 + + -- Rico Tzschichholz Tue, 14 Jun 2016 08:20:58 +0200 + +x264 (2:0.148.2668+gitfd2c324-1) unstable; urgency=medium + + [ Sebastian Ramacher ] + * debian/rules: Update comment. + * debian/control.in: + - Update Vcs-*. + - Bump Standards-Version. + + [ Rico Tzschichholz ] + * Update to new stable upstream + * Imported Upstream version 0.148.2668+gitfd2c324 + + -- Rico Tzschichholz Thu, 12 May 2016 11:12:16 +0200 + +x264 (2:0.148.2643+git5c65704-1) unstable; urgency=medium + + [ Rico Tzschichholz ] + * Update to new stable upstream + * Imported Upstream version 0.148.2643+git5c65704 + * Refresh properly_detect_x32.patch + + [ Sebastian Ramacher ] + * debian/confflags: No longer filter -g since we have automatic dbgsym + packages now. + + -- Rico Tzschichholz Mon, 18 Jan 2016 18:36:02 +0100 + +x264 (2:0.148.2601+gita0cd7d3-3) unstable; urgency=medium + + * Team upload. + * Upload to unstable. + + -- Sebastian Ramacher Sun, 01 Nov 2015 19:42:10 +0100 + +x264 (2:0.148.2601+gita0cd7d3-2) experimental; urgency=medium + + * Pass --disable-asm while building on mips, mipsel, mips64el + (Closes: #802550) + + -- Rico Tzschichholz Wed, 21 Oct 2015 12:27:32 +0200 + +x264 (2:0.148.2601+gita0cd7d3-1) experimental; urgency=medium + + * Update to new stable upstream + * Imported Upstream version 0.148.2601+gita0cd7d3 + * Update debian/control for soname bump + * Refresh patches and drop aarch64 build-fix + + -- Rico Tzschichholz Wed, 14 Oct 2015 20:26:50 +0200 + +x264 (2:0.146.2555+git0c21480-1) unstable; urgency=medium + + [ Rico Tzschichholz ] + * Update to new stable upstream + * Imported Upstream version 0.146.2555+git0c21480 + + [ Sebastian Ramacher ] + * debian/source/lintian-overrides: Removed, no longer needed. + + -- Rico Tzschichholz Mon, 03 Aug 2015 16:37:49 +0200 + +x264 (2:0.146.2538+git121396c-3) unstable; urgency=medium + + * Team upload. + + [ Johannes Schauer ] + * To avoid a circular build dependency, do not build depend on + libavformat-dev, libffms2-dev and libgpac-dev and do not build the x264 + package when building the stage1 profile. To that end: + - add build profile annotations to Build-Depends + - add Build-Profiles field so that only the library is built in the + stage1 build profile + - add --disable-avs --disable-ffms --disable-gpac to common_confflags + when building with stage1 + - depend on the proper versions of debhelper and dpkg-dev for parsing + build profile information in debian/control + Based on patch by Peter Pentchev + (Closes: #752103, #735742) + + [ Sebastian Ramacher ] + * debian/copyright: other is Expat. + + -- Sebastian Ramacher Wed, 15 Jul 2015 23:03:53 +0200 + +x264 (2:0.146.2538+git121396c-2) unstable; urgency=medium + + * Team upload. + * Upload to unstable. + + -- Sebastian Ramacher Sat, 23 May 2015 14:57:56 +0200 + +x264 (2:0.146.2538+git121396c-1) experimental; urgency=medium + + [ Rico Tzschichholz ] + * Update to new upstream snapshot + * Imported Upstream version 0.146.2538+git121396c + * Fix the build on AArch64 (Thanks to Matthias Klose) + + [ Sebastian Ramacher ] + * debian/copyright: + - Fix path to gas-processor.pl. + - Update copyright years. + - Remove unused paragraph. + + -- Rico Tzschichholz Mon, 11 May 2015 12:34:22 +0200 + +x264 (2:0.142.2495+git6a301b6-1) experimental; urgency=low + + [ Fabian Greffrath ] + * Add a wrapper script to load the 10-bit variant of libx264. + (Closes: #751458) + + [ Rico Tzschichholz ] + * Update to new upstream snapshot + * Imported Upstream version 0.142.2495+git6a301b6 + * Fix wrapper script installation and don't require dpkg-dev + * Drop obsolete build-dep on libx11-dev (Closes: #752093) + * Add properly_detect_x32.patch (Closes: #775349) + + -- Rico Tzschichholz Wed, 14 Jan 2015 23:32:51 +0100 + +x264 (2:0.142.2431+gita5831aa-1) unstable; urgency=low + + * Update to new upstream snapshot + * Imported Upstream version 0.142.2431+gita5831aa + * Fixes for armel and armhf (Closes: #752168) + + -- Reinhard Tartler Thu, 10 Jul 2014 21:21:51 -0400 + +x264 (2:0.142.2412+gitd7e6896-1) unstable; urgency=medium + + * Update to new upstream snapshot + * Imported Upstream version 0.142.2412+gitd7e6896 + * Drop powerpcspe.patch which got upstreamed + + -- Rico Tzschichholz Sat, 07 Jun 2014 09:16:36 +0200 + +x264 (2:0.142.2389+git956c8d8-5) unstable; urgency=medium + + [ Peter Michael Green ] + * Check gcc version directly to determine whether or not + -fno-aggressive-loop-optimizations should be set rather than assuming based + on architecture. Closes: #745104 + + [ Reinhard Tartler ] + * Recompile against libav10 + * Link dynamically against libgpac + + -- Reinhard Tartler Mon, 12 May 2014 18:52:02 -0400 + +x264 (2:0.142.2389+git956c8d8-4) unstable; urgency=low + + * Do not set -fno-aggressive-loop-optimizations on sparc, which was + introduced only in gcc 4.8 and the debian sparc port currently uses + only gcc 4.6 (closes: #743713) + + -- Reinhard Tartler Sat, 05 Apr 2014 17:45:59 -0400 + +x264 (2:0.142.2389+git956c8d8-3) unstable; urgency=low + + * Upload to unstable + * Remove Andres Meja from Uploaders. Andres is MIA according to the MIA + team. Thank you for maintaining x264, Andres! (Closes: #743527) + * Bump standards version to 3.9.5, no changes needed + + -- Reinhard Tartler Sat, 05 Apr 2014 08:52:14 -0400 + +x264 (2:0.142.2389+git956c8d8-2) experimental; urgency=low + + [ William Grant ] + * Add aarch64-pic.patch to enable -fPIC on arm64 to fix link failure. + + [ Andrew Starr-Bochicchio ] + * Compile using -fno-aggressive-loop-optimizations (LP: #1241772) + + [ Dimitri John Ledkov ] + * Update config.guess/sub, attempt building on pp64el + + [ Reinhard Tartler ] + * Document the license of extras/cl*.h (Closes: #739499) + * Pickup the patches documented above from Ubuntu while retaining proper + attribution. + * Add autopkgtest test case "encode_testimage" + + [ Roland Stigge ] + * Disable altivec on powerpcspe (Closes: #701628) + + -- Reinhard Tartler Sun, 23 Mar 2014 11:09:02 -0400 + +x264 (2:0.142.2389+git956c8d8-1) experimental; urgency=low + + * Update to new upstream snapshot + + -- Reinhard Tartler Thu, 13 Feb 2014 23:27:06 +0000 + +x264 (2:0.133.2339+git585324f-2) unstable; urgency=low + + * Upload to unstable + * Tighten dependency on libgpac-dev + + -- Reinhard Tartler Mon, 19 Aug 2013 17:58:18 +0200 + +x264 (2:0.133.2339+git585324f-1) experimental; urgency=low + + * Update to new upstream snapshot + * Imported Upstream version 0.133.2339+git585324f + * Regenerate debian/control and manpage + + -- Rico Tzschichholz Fri, 26 Jul 2013 18:44:18 +0200 + +x264 (2:0.130.2282+git1db4621-2) experimental; urgency=low + + * Build against libav9 in debian/experimental + + -- Reinhard Tartler Mon, 20 May 2013 14:14:53 +0200 + +x264 (2:0.130.2282+git1db4621-1) experimental; urgency=low + + [ Rico Tzschichholz ] + * Update to new upstream snapshot + * Imported Upstream version 0.130.2282+git1db4621 + * Regenerate debian/control + * Regenerate manpage + * Fix some lintian warnings + + [ Reinhard Tartler ] + * Upload to experimental for now until the release team approves this + transition. + + -- Reinhard Tartler Mon, 20 May 2013 13:46:44 +0200 + +x264 (2:0.129.2238+git9c4ba4b-1) experimental; urgency=low + + [ Reinhard Tartler ] + * Build both 8bit and 10bit versions of libx264, Closes: #667573 + + [ Rico Tzschichholz ] + * Update to new upstream snapshot + * Imported Upstream version 0.129.2238+git9c4ba4b + * Regenerate manpage + * Regenerate debian/control + + -- Rico Tzschichholz Mon, 14 Jan 2013 16:51:23 +0100 + +x264 (2:0.125.2209+git68dfb7b-1) experimental; urgency=low + + * Update to new upstream snapshot + * Imported Upstream version 0.125.2209+git68dfb7b + * Regenerate manpage + * Regenerate debian/control + + -- Rico Tzschichholz Wed, 19 Sep 2012 09:58:50 +0200 + +x264 (2:0.124.2198+git1c97f35-1) experimental; urgency=low + + * Update to new upstream snapshot + * Imported Upstream version 0.124.2198+git1c97f35 + * Regenerate manpage + * Regenerate debian/control + + -- Rico Tzschichholz Fri, 25 May 2012 07:37:26 +0200 + +x264 (2:0.123.2189+git35cf912-1) unstable; urgency=low + + * Update to new upstream snapshot + * Imported Upstream version 0.123.2189+git35cf912 + * Regenerate manpage + + -- Rico Tzschichholz Sun, 29 Apr 2012 19:56:17 +0200 + +x264 (2:0.120.2171+git01f7a33-4) unstable; urgency=low + + * Team upload. + * Rebuild to pick gpac's new shlib. + + -- Alessio Treglia Sat, 21 Apr 2012 08:25:51 +0200 + +x264 (2:0.120.2171+git01f7a33-3) unstable; urgency=low + + * Fix issue of setting hardened CFLAGS for shared library. + + -- Andres Mejia Sat, 17 Mar 2012 14:00:21 -0400 + +x264 (2:0.120.2171+git01f7a33-2) unstable; urgency=low + + * Allow dev package to be multiarch installable. + * Bump to Standards-Version 3.9.3. + * Add hardened build flags excluding -O2 and -g. + + -- Andres Mejia Sat, 17 Mar 2012 13:37:11 -0400 + +x264 (2:0.120.2171+git01f7a33-1) unstable; urgency=low + + * Update to new upstream snapshot + * Imported Upstream version 0.120.2171+git01f7a33 + * Regenerate manpage + + -- Rico Tzschichholz Thu, 15 Mar 2012 17:37:19 +0100 + +x264 (2:0.120.2151+gita3f4407-3) unstable; urgency=low + + * Upload to unstable + + -- Reinhard Tartler Wed, 15 Feb 2012 22:58:10 +0100 + +x264 (2:0.120.2151+gita3f4407-2) experimental; urgency=low + + [ Fabian Greffrath ] + * Meanwhile, upstream enabled PIC for the shared library build on ia64, + mips* and hppa/parisc (once more closes: #642810), so remove our + Debian-specific workarounds. + + [ Reinhard Tartler ] + * Build against libgpac to enable MP4 output + * Add a note about non-relocatable code in the README.Debian file, + Closes: #657019, LP: #919509 + + -- Reinhard Tartler Fri, 10 Feb 2012 21:26:18 +0100 + +x264 (2:0.120.2151+gita3f4407-1) unstable; urgency=low + + * Update to new upstream snapshot + * Imported Upstream version 0.120.2151+gita3f4407 + * Regenerate manpage + + -- Rico Tzschichholz Sun, 05 Feb 2012 10:31:05 +0100 + +x264 (2:0.120.2127+gitf33c8cb-2) experimental; urgency=low + + * don't forcefully set --as-needed linker flag to avoid setting it twice + * Filter out system-wide setting of -Bsymbolic-functions to avoid FTBFS + + -- Reinhard Tartler Wed, 18 Jan 2012 15:22:35 +0100 + +x264 (2:0.120.2127+gitf33c8cb-1) experimental; urgency=low + + [ Fabian Greffrath ] + * Simplify the debhelper install file generation. + * Do not hard-code the library SONAME in debian/rules + and the debhelper install file anymore. + * Build the CLI only for the shared library build, + as this is the actual configuration that we ship in the x264 package. + * Generate the manpage from the CLI of the shared build. + * Simplify the manpage generation. + * Do not hard-code the library SONAME anywhere. Instead, read it from + the upstream files and regenerate debian/control. + + [ Reinhard Tartler ] + * Update to new upstream snapshot + * Imported Upstream version 0.120.2127+gitf33c8cb + + -- Reinhard Tartler Mon, 16 Jan 2012 21:35:50 +0100 + +x264 (2:0.118.2092+git6eac7c3-2) unstable; urgency=low + + [ Fabian Greffrath ] + * Remove build-on-hurd.patch, it has already been applied upstream and + is thus applied twice in Debian. + + [ Reinhard Tartler ] + * Rebuild against newer libav 0.7.3 to enable libavfilter/libavcodec + input support. + + -- Reinhard Tartler Sat, 31 Dec 2011 11:43:02 +0100 + +x264 (2:0.118.2092+git6eac7c3-1) unstable; urgency=low + + [ Rico Tzschichholz ] + * New upstream snapshot. + * Drop arch-alpha.patch which is upstream + + [ Reinhard Tartler ] + * debian/control: normalize fieldswith wrap-and-sort + * remove unnecessary Conflicts/Replaces on non-existing package x264-bin + + -- Reinhard Tartler Mon, 31 Oct 2011 19:47:16 +0100 + +x264 (2:0.118.2085+git8a62835-1) unstable; urgency=low + + * Team upload. + * New upstream snapshot. + * Drop basic-spell-check.patch which is upstream + * Rename shared library package to lib264-118 + + -- Rico Tzschichholz Thu, 13 Oct 2011 10:27:50 +0200 + +x264 (2:0.116.2042+git178455c-3) unstable; urgency=low + + * Debian's alpha buildds identify themselves as alphaev67, + so consider alpha* as ALPHA (Closes: #642810). + + -- Fabian Greffrath Thu, 06 Oct 2011 10:33:25 +0200 + +x264 (2:0.116.2042+git178455c-2) unstable; urgency=low + + * Convert package to include multiarch support. + + -- Andres Mejia Sat, 17 Sep 2011 14:08:08 -0400 + +x264 (2:0.116.2042+git178455c-1) unstable; urgency=low + + * New upstream snapshot. + * Allow compilation on the Hurd + + -- Reinhard Tartler Tue, 09 Aug 2011 20:44:54 +0200 + +x264 (2:0.116.2037+gitf8ebd4a-3) unstable; urgency=low + + [ Fabian Greffrath ] + * Build-Depend on yasm on all i386 and amd64 archs, + fixes FTBFS on kfreebsd-i386. Remove lpia, it's deprecated. + * Remove trailing comma from Build-Depends. + * Build shared lib with --enable-pic on mips*, + hopefully fixes FTBFS on these arches. + + [ Reinhard Tartler ] + * enable parallel builds + * print config.log in case the configure script fails + * enable ffms2 input module + + -- Reinhard Tartler Wed, 27 Jul 2011 21:36:26 +0200 + +x264 (2:0.116.2037+gitf8ebd4a-2) unstable; urgency=low + + [ Fabian Greffrath ] + * Override dh_auto_clean, not dh_clean. + * Actually build the cli against the shared lib. + + [ Andres Mejia ] + * Prepare new revision. + * Generate x264 manpage only once and drop build-depends on help2man. This + makes for one less build dependency to put on the buildd machines. x264 + manpage should be generated once for each new release on a dev machine and + tracked in git packaging repo. + + -- Andres Mejia Tue, 26 Jul 2011 22:23:58 -0400 + +x264 (2:0.116.2037+gitf8ebd4a-1) unstable; urgency=low + + [ Andres Mejia ] + * New upstream release. (Closes: #405212) + * version.sh modifications no longer need to be made, an updated version.sh + is installed in upstream tarball. + * Shared library package is renamed to lib264-116. + * fix-8x8dct+slices+no-sliced-threads+cavlc+deblock.patch is removed, has + been applied upstream. + * Add DM-Upload-Allowed: yes. + * Convert package to 3.0 (quilt). + * Convert packaging to dh 7. + * Change Priority to optional. + * Update to my @debian.org email. + * Update VCS-* entries to new anonscm location. + * --enable-static must be explicitly set to build static library. + * Add proper version depends for debhelper. + * Update debian/copyright with new license information for new upstream + snapshot. + * Update debian/copyright to use DEP-5 spec. + * Add patch to do basic spell check. + * Include all public headers in dev package. + + [ Reinhard Tartler ] + * Lower debhelper compat level to 7 + * Don't set --enable-debug, no longer a known option for ./configure. + + -- Andres Mejia Mon, 25 Jul 2011 19:37:52 -0400 + +x264 (2:0.98.1653+git88b90d9-3) unstable; urgency=low + + * Build for unstable. + * Relax dependency on libavformat-dev down to 4:0.5 or greater. + * Bump Standards-Version to 3.9.1, no changes needed. + + -- Andres Mejia Thu, 05 Aug 2010 16:28:28 -0400 + +x264 (2:0.98.1653+git88b90d9-2) experimental; urgency=low + + * Upload to Debian. Closes: #354667, #405212 + * update download site in debian/copyright + * avoid running configure on distclean + * remove libgpac-dev from build-depends, not available in debian yet. + + -- Reinhard Tartler Sat, 31 Jul 2010 20:57:46 -0400 + +x264 (2:0.98.1653+git88b90d9-1) maverick; urgency=low + + * require libavformat-dev from 0.6 or better + * remove conflicts/replaces to ancient package x264-bin (dapper! + times) + * new upstream release + + -- Reinhard Tartler Sun, 04 Jul 2010 16:23:51 -0400 + +x264 (2:0.85.1448+git1a6d32-5) unstable; urgency=low + + * Prepare new upload for Debian. + * Edit git-buildpackage config file for master branch. + * Add myself to Uploaders field. + * Note the x264 homepage. + + -- Andres Mejia Sat, 08 May 2010 02:08:19 -0400 + +x264 (2:0.85.1448+git1a6d32-4) lucid; urgency=low + + * install sse optimized version in /usr/lib/sse2. LP: #550524 + + -- Reinhard Tartler Tue, 30 Mar 2010 22:27:28 +0200 + +x264 (2:0.85.1448+git1a6d32-3) lucid; urgency=low + + [ Loïc Minier ] + * Finish confflags logic and/or add workarounds + + [ Reinhard Tartler ] + * build depend on libgpac-dev to enable mp4 support, LP: #464797 + * simplify configure line, LP: #538555 + * generate manpage with help2man to keep it up-to-date, LP: #391281 + + -- Reinhard Tartler Sun, 14 Mar 2010 10:10:26 +0100 + +x264 (2:0.85.1448+git1a6d32-2) lucid; urgency=low + + * Add check_c() macro and use it for altivec check + + -- Loïc Minier Tue, 09 Mar 2010 21:40:23 +0100 + +x264 (2:0.85.1448+git1a6d32-1) lucid; urgency=low + + [ Loic Minier ] + * Drop --enable-pic, let's see what breaks, LP: #524859 + + [ Reinhard Tartler ] + * New upstream snapshot, no new features, LP: #526396 + * remove quilt infrastructure + * don't set CFLAGS in debian/rules, upstream build system overrides + this anyways + + -- Reinhard Tartler Sun, 21 Feb 2010 16:57:21 +0100 + +x264 (2:0.85.1442.1+git781d30-1) lucid; urgency=low + + * use proper upstream version + (NB: the first number (85) is the API version, + the second the number of git commits so far) + * New upstream version should fix: LP: #315697, #463516 + * Many ARM Neon Optimisations, LP: #388388 + * this package is properly maintained in ubuntu. Indicate this by using + "-N" as versioning scheme. + * change versioning scheme as discussed with upstream. Requires bumping + epoch, though. + * ensure that MP4 output support is enabled, LP: #464797 + + -- Reinhard Tartler Thu, 18 Feb 2010 07:39:51 +0100 + +x264 (1:0.svn20100213+gitfcf70c-0ubuntu1~ppa1) lucid; urgency=low + + * new upstream version test upload. + + -- Reinhard Tartler Sat, 13 Feb 2010 18:07:40 +0100 + +x264 (1:0.svn20090621+git364d7d-0ubuntu2) karmic; urgency=low + + * update symbol files with architecture specific symbols. + * remove reference to the now removed bime version, LP: #371786 + + -- Reinhard Tartler Sun, 21 Jun 2009 18:18:51 +0200 + +x264 (1:0.svn20090621+git364d7d-0ubuntu1) karmic; urgency=low + + * New Upstream Version + * add symbols file + * make dh_makeshlibs less strict + + -- Reinhard Tartler Sun, 21 Jun 2009 11:22:31 +0200 + +x264 (1:0.svn20090502-0.0ubuntu2) karmic; urgency=low + + * take over marillats package under the umbrella of pkg-multimedia + + -- Reinhard Tartler Sun, 14 Jun 2009 17:49:13 +0200 + +x264 (1:0.svn20090502-0.0ubuntu1) karmic; urgency=low + + * Merge from debian-multimedia, Ubuntu remaining changes: + - Build-Depends on yasm for lpia. + + -- Alessio Treglia Mon, 04 May 2009 23:15:42 +0200 + +x264 (1:0.svn20090502-0.0) unstable; urgency=low + + * New git release. + + -- Christian Marillat Sat, 02 May 2009 10:34:20 +0200 + +x264 (1:0.svn20090413-0.0) unstable; urgency=low + + * New git release. + + -- Christian Marillat Mon, 13 Apr 2009 15:43:31 +0200 + +x264 (1:0.svn20090327-0.1) unstable; urgency=low + + * New patch to fix powerpc build. + + -- Christian Marillat Sat, 28 Mar 2009 14:12:38 +0100 + +x264 (1:0.svn20090327-0.0) unstable; urgency=low + + * New git release. + * New library soname (67). + * Don't Build-Depends on libgpac-dev (circulary dependency with ffmpeg, + gpac and x264) and remove --enable-mp4-output. + + -- Christian Marillat Fri, 27 Mar 2009 15:02:02 +0100 + +x264 (1:0.svn20090222-0.0) unstable; urgency=low + + * New git release. + * New library soname (66). + + -- Christian Marillat Sun, 22 Feb 2009 09:07:29 +0100 + +x264 (1:0.svn20090115-0.0) unstable; urgency=low + + * New git release. + + -- Christian Marillat Thu, 15 Jan 2009 18:22:50 +0100 + +x264 (1:0.svn20081230-0.0ubuntu1) jaunty; urgency=low + + * Merge from Debian multimedia (LP: #243451), remaining Ubuntu changes: + - b-d on yasm on lpia. + + -- Lionel Le Folgoc Thu, 15 Jan 2009 23:15:42 +0100 + +x264 (1:0.svn20081230-0.0) unstable; urgency=low + + * New git release. + + -- Christian Marillat Tue, 30 Dec 2008 16:11:33 +0100 + +x264 (1:0.svn20081210-0.0) unstable; urgency=low + + * Net git release. + * Now yasm is the default assembler. + * The GTK frontend is gone. + + -- Christian Marillat Wed, 10 Dec 2008 14:40:45 +0100 + +x264 (1:0.svn20080712-0.1) unstable; urgency=high + + * Seems to be a problem with the previous release (Segfault) that I'm + unable to reproduce, so back to this version for Lenny. + + -- Christian Marillat Sat, 13 Sep 2008 17:53:03 +0200 + +x264 (0.svn20080828-0.0) unstable; urgency=low + + * New git release. + + -- Christian Marillat Thu, 28 Aug 2008 12:59:18 +0200 + +x264 (0.svn20080712-0.0) unstable; urgency=low + + * New git release. + + -- Christian Marillat Sat, 12 Jul 2008 23:13:24 +0200 + +x264 (0.svn20080616-0.0) unstable; urgency=low + + * New git release. + + -- Christian Marillat Mon, 16 Jun 2008 15:26:32 +0200 + +x264 (1:0.svn20080408-0.0ubuntu1) intrepid; urgency=low + + * Merge from debian-multimedia. Remaining Ubuntu changes: + - Maintainer field + - Set epoch + + -- John Dong Sat, 03 May 2008 01:12:18 -0400 + +x264 (0.svn20080408-0.0) unstable; urgency=low + + * New git release. + + -- Christian Marillat Tue, 08 Apr 2008 14:21:37 +0200 + +x264 (0.svn20080223-0.0) unstable; urgency=low + + * New svn release 736. + + -- Christian Marillat Sat, 23 Feb 2008 14:31:31 +0100 + +x264 (1:0.svn20071224-0.0ubuntu1) hardy; urgency=low + + * Merge from debian-multimedia (LP: #177082) + - Maintainer field + - Set epoch + - b-d nasm on lpia + - Drop b-d version on nasm, associated Debian issue not relevant + to Ubuntu. + + -- John Dong Sun, 06 Jan 2008 23:38:50 -0500 + +x264 (0.svn20071224-0.0) unstable; urgency=low + + * New svn release 714. + + -- Christian Marillat Mon, 24 Dec 2007 09:23:30 +0100 + +x264 (0.svn20071202-0.0) unstable; urgency=low + + * New svn release 705. + + -- Christian Marillat Sun, 02 Dec 2007 14:24:50 +0100 + +x264 (1:0.svn20070930-0.0ubuntu2) hardy; urgency=low + + * No source change reupload, got accidentally removed from archive. + + -- John Dong Fri, 30 Nov 2007 23:00:11 -0500 + +x264 (1:0.svn20070930-0.0ubuntu1) hardy; urgency=low + + * Fakesync with debian-multimedia (LP: #138854) + - Set epoch + - b-d nasm on lpia + - Drop b-d version on nasm, associated Debian issue not relevant + to Ubuntu. + + -- John Dong Sun, 18 Nov 2007 15:14:01 -0500 + +x264 (0.svn20070930-0.0) unstable; urgency=low + + * New svn release 680. + + -- Christian Marillat Sun, 30 Sep 2007 09:25:00 +0200 + +x264 (0.svn20070823-0.1) unstable; urgency=low + + * Same bug as in 0.svn20070613-0.2 yasm doesn't work and the latest nasm + (0.99.01-1) doesn't work too... So make a Build-Depends on + nasm (= 0.98.38-1.2). + + + -- Christian Marillat Fri, 31 Aug 2007 18:41:42 +0200 + +x264 (0.svn20070823-0.0) unstable; urgency=low + + * New svn release 671. + * Back to yasm for i386 (doesn't build with latest nasm and yasm support + for i386 seem's to be fixed). + + -- Christian Marillat Thu, 23 Aug 2007 10:19:52 +0200 + +x264 (0.svn20070613-0.2) unstable; urgency=low + + * Build with nasm for i386. + + -- Christian Marillat Sat, 23 Jun 2007 11:50:58 +0200 + +x264 (0.svn20070613-0.1) unstable; urgency=low + + * Forgot to add dpatch in Build-Depends. Also this package is build with + --enable-mp4-output + + -- Christian Marillat Wed, 13 Jun 2007 23:31:55 +0200 + +x264 (0.svn20070613-0.0) unstable; urgency=low + + * New svn release. + * Build with --enable-gtk, --enable-mp4-output and --enable-visualize + * Use yasm instead of nasm for i386. + + -- Christian Marillat Wed, 13 Jun 2007 17:45:02 +0200 + +x264 (0.svn20070309-5) unstable; urgency=low + + * Upload for my repository. + + -- Christian Marillat Wed, 16 May 2007 15:29:36 +0200 + +x264 (0.svn20070309-4) unstable; urgency=low + + * debian/patches/010_altivec_crash.diff: + + Updated upstream patch to fix an FTBFS. + + -- Sam Hocevar (Debian packages) Wed, 14 Mar 2007 23:10:23 +0100 + +x264 (0.svn20070309-3) unstable; urgency=low + + * debian/control: + + Set pkg-multimedia-maintainers as main maintainer, added Fabian + Greffrath as uploader. + + Updated VCS fields. + + * debian/patches/010_altivec_crash.diff: + + New patch from upstream: runtime AltiVec detection and workaround + for gcc generating AltiVec code here and there with -maltivec. + + -- Sam Hocevar (Debian packages) Wed, 14 Mar 2007 19:20:43 +0100 + +x264 (0.svn20070309-2) unstable; urgency=low + + * debian/rules: + + Activate --enable-pthread. + * debian/control: + + Added conflicts/replaces x264-bin because of unofficial packages that + decided "x264" was not a good package name for the "x264" program + (Closes: #414648). + * debian/copyright: + + Cleaned up, removed mention to NetBSD files that are no longer here. + * debian/patches/000_usr_prefix.diff: + + Remove this patch in favour of --prefix=/usr. + + -- Sam Hocevar (Debian packages) Tue, 13 Mar 2007 02:04:58 +0100 + +x264 (0.svn20070309-1) unstable; urgency=low + + * Initial release (Closes: #405212). + + -- Sam Hocevar (Debian packages) Fri, 9 Mar 2007 22:59:37 +0100 diff --git a/confflags b/confflags new file mode 100644 index 0000000..ff81e82 --- /dev/null +++ b/confflags @@ -0,0 +1,159 @@ +# -*- mode: makefile -*- +# vi:syntax=make +# configure flags logic + +extra_cflags = $(CFLAGS) $(CPPFLAGS) + +LDFLAGS := $(filter-out %-Bsymbolic-functions,$(LDFLAGS)) + +ifneq (,$(filter parallel=%,$(DEB_BUILD_OPTIONS))) + NUMJOBS = $(patsubst parallel=%,%,$(filter parallel=%,$(DEB_BUILD_OPTIONS))) + MAKEFLAGS += -j$(NUMJOBS) +endif + +common_confflags += --prefix=/usr --libdir=/usr/lib/$(DEB_HOST_MULTIARCH) + +ifneq ($(DEB_HOST_GNU_TYPE),$(DEB_BUILD_GNU_TYPE)) +common_confflags += --host=$(DEB_HOST_GNU_TYPE) --cross-prefix=$(DEB_HOST_GNU_TYPE)- +endif + +ifneq (,$(filter stage1,$(DEB_BUILD_PROFILES))) +common_confflags += --disable-avs --disable-ffms --disable-gpac +endif + +# XXX why isn't --enable-visualize used in the static build? +# TODO --disable-asm when we build an opt flavor? +static_confflags += \ + $(common_confflags) \ + --enable-static \ + --disable-cli + +# upstream defaults to forcing a bunch of optimizations on various arches; +# --disable-asm should disable them all, but then we need to figure out what +# the toolchain actually targets to turn then back on ourselves if appropriate; +# also, we try providing an optimized flavor for the arches / toolchain +# combinations where it makes sense + +shared_confflags += \ + $(common_confflags) \ + --enable-shared \ + --system-libx264 + +opt_confflags += \ + $(common_confflags) \ + --enable-shared \ + --disable-cli \ + --libdir=$(opt_libdir) + +# this is only used for the check_asm macro +ifeq ($(DEB_BUILD_GNU_TYPE),$(DEB_HOST_GNU_TYPE)) +CC := gcc +else +CC := $(DEB_HOST_GNU_TYPE)-gcc +endif + +# this outputs 0 or 1 depending on whether a piece of C or assembly can be +# compiled with the *default* gcc flags; this is used to test the toolchain +# *default* configuration +check_c = $(shell echo 'int main(void) { $(1); }' | $(CC) -Werror $(2) -x c - -o /dev/null 2>/dev/null && echo 1 || echo 0) +check_asm = $(call check_c, __asm__ volatile("$(1)")) + +do_opt := no + +# X86 upstream arch, hurd-i386, i386, and kfreebsd-i386 Debian arches; upstream +# adds -march=i686 and -mfpmath=sse -msse by default and runtime detects MMX, +# SSE, SSE2 etc. +ifneq (,$(filter i386 i486 i586 i686 pentium,$(DEB_HOST_GNU_CPU))) +sse_asm := addss m0, m0 +has_sse := $(call check_asm, $(sse_asm)) +ifneq ($(has_sse),1) +# build an SSE optimized flavor for i686 +do_opt := yes +opt_libdir := /usr/lib/$(DEB_HOST_MULTIARCH)/i686/sse2 +shared_confflags += --disable-asm +endif +endif + +# X86_64 upstream arch, amd64 and kfreebsd-amd64 Debian arches; no upstream +# flags by default +#ifeq (x86-64,$(DEB_HOST_GNU_CPU)) +#endif + +# PPC upstream arch, powerpc and ppc64 Debian arches; upstream adds -maltivec +# -mabi=altivec by default +# XXX upstream: --disable-asm should disable altivec; fixed in +# 6a443d3cdf338408b1b39e7f336306d2a34703f6 +ifneq (,$(filter powerpc powerpc64,$(DEB_HOST_GNU_CPU))) +altivec_c := vector signed int v1, v2, v3; v1 = vec_add(v2, v3) +has_altivec := $(call check_c, $(altivec_c), -include altivec.h) +ifneq ($(has_altivec),1) +# build an Altivec optimized flavor +do_opt := yes +opt_libdir := /usr/lib/$(DEB_HOST_MULTIARCH)/altivec +shared_confflags += --disable-asm +static_confflags += --disable-asm +opt_confflags += --disable-asm +endif +endif + +# Sparc and UltraSparc upstream arches, sparc Debian arch; upstream adds +# -mcpu=ultrasparc to CFLAGS and LDFLAGS and -xarch=v8plusa to ASFLAGS by +# default +# XXX upstream: --disable-asm should disable vis; fixed in +# 6a443d3cdf338408b1b39e7f336306d2a34703f6 +ifeq (sparc,$(DEB_HOST_GNU_CPU)) +vis_asm := pdist %f0, %f0, %f0 +has_vis := $(call check_asm, $(vis_asm)) +ifneq ($(has_vis),1) +# build a VIS optimized flavor +do_opt := yes +opt_libdir := /usr/lib/$(DEB_HOST_MULTIARCH)/v9 +shared_confflags += --disable-asm +endif +endif + +# MIPS upstream arch, mips, mipsel and mips64el Debian arches; no upstream flags by +# default +ifneq (,$(filter mips mipsel mips64el,$(DEB_HOST_GNU_CPU))) +shared_confflags += --disable-asm +static_confflags += --disable-asm +opt_confflags += --disable-asm +endif + +# ARM upsteam arch, arm, armeb, and armel Debian arches; upstream prepends -O3 +# -fno-fast-math by default, but that's ok as we override -O and we don't care +# about -ffast-math which is said to be negligible and buggy by upstream, and +# appends -mcpu=cortex-a8 -mfpu=neon -mfloat-abi=softfp by default; upstream +# supports ARMv6t2 with runtime detection of NEON, so if the baseline supports +# ARMv6t2, use it, otherwise build a NEON opt flavor; note that NEON implies +# VFP and ARMv7 and hence the flags are ok +ifeq (arm,$(DEB_HOST_GNU_CPU)) +armv6t2_asm := movt r0, \#0 +has_armv6t2 := $(call check_asm, $(armv6t2_asm)) +ifeq ($(has_armv6t2),1) +# extract the actual -march= the toolchain targets +toolchain_arch := $(shell $(CC) -v 2>&1 | sed -n '/^Configured with: / s/.* --with-arch=\([^ ]*\).*/\1/p') +ifeq ($(toolchain_arch),) +toolchain_arch := armv6t2 +endif +extra_cflags += -march=$(toolchain_arch) +else +do_opt := yes +opt_libdir := /usr/lib/$(DEB_HOST_MULTIARCH)/neon/vfp +shared_confflags += --disable-asm +endif +endif + +# S390 upstream arch, s390 and s390x Debian arches; no upstream flags by +# default +#ifneq (,$(filter s390 s390x,$(DEB_HOST_GNU_CPU))) +#endif + +# IA64 upstream arch, ia64 Debian arch; no upstream flags by default +#ifeq (ia64,$(DEB_HOST_GNU_CPU)) +#endif + +# there's no special handling for other arches upstream, except for PARISC +# which is not supported in Debian and for which there's no upstream flags by +# default + diff --git a/control b/control new file mode 100644 index 0000000..ebd29e9 --- /dev/null +++ b/control @@ -0,0 +1,75 @@ +Source: x264 +Section: libs +Priority: optional +Maintainer: Debian Multimedia Maintainers +Uploaders: + Reinhard Tartler , + Rico Tzschichholz +Build-Depends: + debhelper-compat (= 13), + libavformat-dev (>= 6:9) , + libffms2-dev , + libgpac-dev (>= 0.5.0+svn4288~) , + nasm (>= 2.13) [any-i386 any-amd64], + pkg-config +Standards-Version: 4.5.1 +Vcs-Git: https://salsa.debian.org/multimedia-team/x264.git +Vcs-Browser: https://salsa.debian.org/multimedia-team/x264 +Homepage: https://www.videolan.org/developers/x264.html +Rules-Requires-Root: no + +Package: x264 +Section: graphics +Architecture: any +Build-Profiles: +Depends: + ${misc:Depends}, + ${shlibs:Depends} +Description: video encoder for the H.264/MPEG-4 AVC standard + x264 is an advanced commandline encoder for creating H.264 (MPEG-4 AVC) + video streams. + . + x264 supports the following features: + * CABAC (context-based adaptive binary arithmetic coding) and CAVLC + (context-based adaptive variable length coding + * multiple reference frames + * 16x16, 8x8 and 4x4 intra-predicted macroblocks + * all P-frame inter-predicted macroblock types + * B-Inter-predicted macroblock types from 16x16 down to 8x8 + * rate distortion optimization + * multiple rate control modes (constant quantizer, constant quality, single + or multipass ABR with the option of VBV) + * scene cut detection + * adaptive B-frame placement, with the option of keeping B-frames as + references / arbitrary frame order + * 8x8 and 4x4 adaptive spatial transform (high profile) + * lossless mode (high 4:4:4 profile) + * custom quantization matrices (high profile) + * parallel encoding on multiple CPUs + * interlaced streams + +Package: libx264-163 +Architecture: any +Multi-Arch: same +Depends: + ${misc:Depends}, + ${shlibs:Depends} +Description: x264 video coding library + libx264 is an advanced encoding library for creating H.264 (MPEG-4 AVC) + video streams. + . + This package contains the libx264 shared library. + +Package: libx264-dev +Section: libdevel +Architecture: any +Multi-Arch: same +Depends: + libx264-163 (= ${binary:Version}), + ${misc:Depends} +Description: development files for libx264 + libx264 is an advanced encoding library for creating H.264 (MPEG-4 AVC) + video streams. + . + This package contains the static library and headers used to build programs + that use libx264. diff --git a/control.in b/control.in new file mode 100644 index 0000000..2afbf4e --- /dev/null +++ b/control.in @@ -0,0 +1,75 @@ +Source: x264 +Section: libs +Priority: optional +Maintainer: Debian Multimedia Maintainers +Uploaders: + Reinhard Tartler , + Rico Tzschichholz +Build-Depends: + debhelper-compat (= 13), + libavformat-dev (>= 6:9) , + libffms2-dev , + libgpac-dev (>= 0.5.0+svn4288~) , + nasm (>= 2.13) [any-i386 any-amd64], + pkg-config +Standards-Version: 4.5.1 +Vcs-Git: https://salsa.debian.org/multimedia-team/x264.git +Vcs-Browser: https://salsa.debian.org/multimedia-team/x264 +Homepage: https://www.videolan.org/developers/x264.html +Rules-Requires-Root: no + +Package: x264 +Section: graphics +Architecture: any +Build-Profiles: +Depends: + ${misc:Depends}, + ${shlibs:Depends} +Description: video encoder for the H.264/MPEG-4 AVC standard + x264 is an advanced commandline encoder for creating H.264 (MPEG-4 AVC) + video streams. + . + x264 supports the following features: + * CABAC (context-based adaptive binary arithmetic coding) and CAVLC + (context-based adaptive variable length coding + * multiple reference frames + * 16x16, 8x8 and 4x4 intra-predicted macroblocks + * all P-frame inter-predicted macroblock types + * B-Inter-predicted macroblock types from 16x16 down to 8x8 + * rate distortion optimization + * multiple rate control modes (constant quantizer, constant quality, single + or multipass ABR with the option of VBV) + * scene cut detection + * adaptive B-frame placement, with the option of keeping B-frames as + references / arbitrary frame order + * 8x8 and 4x4 adaptive spatial transform (high profile) + * lossless mode (high 4:4:4 profile) + * custom quantization matrices (high profile) + * parallel encoding on multiple CPUs + * interlaced streams + +Package: @libx264N@ +Architecture: any +Multi-Arch: same +Depends: + ${misc:Depends}, + ${shlibs:Depends} +Description: x264 video coding library + libx264 is an advanced encoding library for creating H.264 (MPEG-4 AVC) + video streams. + . + This package contains the libx264 shared library. + +Package: libx264-dev +Section: libdevel +Architecture: any +Multi-Arch: same +Depends: + @libx264N@ (= ${binary:Version}), + ${misc:Depends} +Description: development files for libx264 + libx264 is an advanced encoding library for creating H.264 (MPEG-4 AVC) + video streams. + . + This package contains the static library and headers used to build programs + that use libx264. diff --git a/copyright b/copyright new file mode 100644 index 0000000..337aaa9 --- /dev/null +++ b/copyright @@ -0,0 +1,164 @@ +Format: https://www.debian.org/doc/packaging-manuals/copyright-format/1.0/ +Upstream-Name: x264 +Upstream-Contact: x264-devel@videolan.org +Source: http://www.videolan.org/developers/x264.html + +Files: * +Copyright: 2003-2021 x264 project +License: GPL-2+ +Comment: + This program is also available under a commercial proprietary license. + For more information, contact us at licensing@x264.com. + +Files: common/x86/x86inc.asm +Copyright: 2005-2020 x264 project +License: ISC + Permission to use, copy, modify, and/or distribute this software for any + purpose with or without fee is hereby granted, provided that the above + copyright notice and this permission notice appear in all copies. + . + THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES + WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF + MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR + ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES + WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN + ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF + OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. + +Files: debian/* +Copyright: 2008-2014 Reinhard Tartler + 2008-2014 Fabian Greffrath + 2008-2011 Andres Mejia +License: GPL-2+ + +Files: extras/avisynth_c.h +Copyright: 2003 Kevin Atkinson +License: GPL-2+ with other exception + This program is free software; you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation; either version 2 of the License, or + (at your option) any later version. + . + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + . + You should have received a copy of the GNU General Public License + along with this program. If not, see . + . + As a special exception, I give you permission to link to the + Avisynth C interface with independent modules that communicate with + the Avisynth C interface solely through the interfaces defined in + avisynth_c.h, regardless of the license terms of these independent + modules, and to copy and distribute the resulting combined work + under terms of your choice, provided that every copy of the + combined work is accompanied by a complete copy of the source code + of the Avisynth C interface and Avisynth itself (with the version + used to produce the combined work), being distributed under the + terms of the GNU General Public License plus this exception. An + independent module is a module which is not derived from or based + on Avisynth C Interface, such as 3rd-party filters, import and + export plugins, or graphical user interfaces. + +Files: extras/getopt.* +Copyright: 1987,88,89,90,91,92,93,94,95,96,98,99,2000,2001 + Free Software Foundation, Inc. +License: LGPL-2.1+ + This file is part of the GNU C Library. + . + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + . + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + . + You should have received a copy of the GNU Lesser General Public License + along with this program. If not, see . + +Files: extras/inttypes.h +Copyright: 2006 Alexander Chemeris +License: BSD-3-clause + Redistribution and use in source and binary forms, with or without + modification, are permitted provided that the following conditions are met: + . + 1. Redistributions of source code must retain the above copyright notice, + this list of conditions and the following disclaimer. + . + 2. Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in the + documentation and/or other materials provided with the distribution. + . + 3. The name of the author may be used to endorse or promote products + derived from this software without specific prior written permission. + . + THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED + WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO + EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; + OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, + WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR + OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF + ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +Files: tools/gas-preprocessor.pl +Copyright: David Conrad +License: GPL-2+ + +Files: extras/stdint.h +Copyright: none +License: public-domain + THIS SOFTWARE IS NOT COPYRIGHTED + . + This source code is offered for use in the public domain. You may + use, modify or distribute it freely. + . + This code is distributed in the hope that it will be useful but + WITHOUT ANY WARRANTY. ALL WARRANTIES, EXPRESS OR IMPLIED ARE HEREBY + DISCLAIMED. This includes but is not limited to warranties of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. + +Files: extras/cl*.h +Copyright: (c) 2008-2012 The Khronos Group Inc +License: Expat + Permission is hereby granted, free of charge, to any person obtaining a + copy of this software and/or associated documentation files (the + "Materials"), to deal in the Materials without restriction, including + without limitation the rights to use, copy, modify, merge, publish, + distribute, sublicense, and/or sell copies of the Materials, and to + permit persons to whom the Materials are furnished to do so, subject to + the following conditions: + . + The above copyright notice and this permission notice shall be included + in all copies or substantial portions of the Materials. + . + THE MATERIALS ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, + EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF + MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. + IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY + CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, + TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE + MATERIALS OR THE USE OR OTHER DEALINGS IN THE MATERIALS. + +License: GPL-2+ + This program is free software; you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation; either version 2 of the License, or + (at your option) any later version. + . + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + . + You should have received a copy of the GNU General Public License + along with this program. If not, see . + . + On Debian GNU/Linux systems, the complete text of the GNU General Public + License version 2 can be found in `/usr/share/common-licenses/GPL-2'. diff --git a/debian-version.sh b/debian-version.sh new file mode 100644 index 0000000..560221a --- /dev/null +++ b/debian-version.sh @@ -0,0 +1,11 @@ +#!/bin/sh -e + +# mimics upstream's version.h but works inside the debian package +VENDOR=`dpkg-vendor --query vendor` +PACKAGE_VERSION=`dpkg-parsechangelog | awk '/^Version:/ {print $$2}'` +BUILD=`grep '#define X264_BUILD' < x264.h | sed -e 's/.* \([1-9][0-9]*\).*/\1/'` +POINTVER=`echo $PACKAGE_VERSION | sed -e 's/[0-9]\:\(0\.[0-9]*\.[0-9]*\).*/\1/'` + +echo "#define X264_VERSION \" ${VENDOR}_${PACKAGE_VERSION}\"" >> config.h +echo "#define X264_POINTVER \"$POINTVER ${VENDOR}_${PACKAGE_VERSION}\"" >> config.h + diff --git a/gbp.conf b/gbp.conf new file mode 100644 index 0000000..1615f89 --- /dev/null +++ b/gbp.conf @@ -0,0 +1,6 @@ +[DEFAULT] +upstream-branch = upstream +debian-branch = master +upstream-tag = upstream/%(version)s +debian-tag = debian/%(version)s +pristine-tar = True diff --git a/libx264-dev.install.in b/libx264-dev.install.in new file mode 100644 index 0000000..e739ef8 --- /dev/null +++ b/libx264-dev.install.in @@ -0,0 +1,4 @@ +shared/usr/lib/@DEB_HOST_MULTIARCH@/libx264.so usr/lib/@DEB_HOST_MULTIARCH@ +static/usr/lib/@DEB_HOST_MULTIARCH@/libx264.a usr/lib/@DEB_HOST_MULTIARCH@ +shared/usr/lib/@DEB_HOST_MULTIARCH@/pkgconfig/x264.pc usr/lib/@DEB_HOST_MULTIARCH@/pkgconfig +shared/usr/include usr diff --git a/libx264N.install.in b/libx264N.install.in new file mode 100644 index 0000000..96b2468 --- /dev/null +++ b/libx264N.install.in @@ -0,0 +1 @@ +shared/usr/lib/@DEB_HOST_MULTIARCH@/libx264.so.* usr/lib/@DEB_HOST_MULTIARCH@ diff --git a/patches/properly_detect_x32.patch b/patches/properly_detect_x32.patch new file mode 100644 index 0000000..6f72e46 --- /dev/null +++ b/patches/properly_detect_x32.patch @@ -0,0 +1,40 @@ +Description: Properly detect x32. + As usually, x32 gets mistaken for amd64 (both are x86-64 ABIs after all). + This version doesn't use any assembly yet, a proper port is needed. +Author: Adam Borowski + +--- x264-0.142.2431+gita5831aa.orig/common/common.h ++++ x264-0.142.2431+gita5831aa/common/common.h +@@ -1010,7 +1010,7 @@ static int ALWAYS_INLINE x264_predictor_ + return cnt; + } + +-#if ARCH_X86 || ARCH_X86_64 ++#if ARCH_X86 || ARCH_X86_64 || ARCH_X32 + #include "x86/util.h" + #endif + +--- x264-0.142.2431+gita5831aa.orig/configure ++++ x264-0.142.2431+gita5831aa/configure +@@ -556,6 +556,10 @@ esac + + LDFLAGS="$LDFLAGS $libm" + ++case `$CC -dumpmachine` in ++ *gnux32) host_cpu=x32 ++esac ++ + stack_alignment=4 + case $host_cpu in + i*86) +@@ -617,6 +621,10 @@ case $host_cpu in + ASFLAGS="$ASFLAGS -f elf64" + fi + ;; ++ x32) ++ ARCH="X32" ++ CFLAGS="$CFLAGS -fPIC" ++ ;; + powerpc*) + ARCH="PPC" + if [ $asm = auto ] ; then diff --git a/patches/series b/patches/series new file mode 100644 index 0000000..af0c70c --- /dev/null +++ b/patches/series @@ -0,0 +1 @@ +properly_detect_x32.patch diff --git a/rules b/rules new file mode 100755 index 0000000..7ef79fd --- /dev/null +++ b/rules @@ -0,0 +1,66 @@ +#!/usr/bin/make -f + +libx264N := libx264-$(shell awk '/define X264_BUILD/{print $$3}' x264.h) + +include /usr/share/dpkg/architecture.mk +include debian/confflags + +DH_INSTALL_FILES = debian/$(libx264N).install \ + debian/libx264-dev.install + +%: + dh $@ + +.PHONY: debian/control +debian/control: + sed -e 's/@libx264N@/$(libx264N)/g' $@.in > $@ + +$(DH_INSTALL_FILES): + sed -e 's/@DEB_HOST_MULTIARCH@/$(DEB_HOST_MULTIARCH)/g' $(subst $(libx264N),libx264N,$@).in > $@ + +override_dh_auto_build: + # Build static lib + CFLAGS="$(extra_cflags)" LDFLAGS="$(LDFLAGS)" ./configure $(static_confflags) \ + || ( tail -v -n +0 config.log config.log ; exit 1 ) + $(MAKE) + $(MAKE) install DESTDIR=$(CURDIR)/debian/install/static + $(MAKE) distclean + # Build shared lib + CFLAGS="$(extra_cflags)" LDFLAGS="$(LDFLAGS)" ./configure $(shared_confflags) \ + || ( tail -v -n +0 config.log config.log ; exit 1 ) + $(MAKE) + $(MAKE) install DESTDIR=$(CURDIR)/debian/install/shared +ifeq ($(do_opt),yes) + $(MAKE) distclean + # Build opt lib + LDFLAGS="$(LDFLAGS)" ./configure $(opt_confflags) \ + || ( tail -v -n +0 config.log config.log ; exit 1 ) + $(MAKE) + $(MAKE) install DESTDIR=$(CURDIR)/debian/install/opt +endif + +override_dh_auto_configure: + # dh_auto_configure phase handled via dh_auto_build. + +override_dh_auto_install: + # dh_auto_install phase handled via dh_auto_build. + +override_dh_auto_clean: debian/control + rm -rf debian/install + $(MAKE) -o config.mak distclean + dh_clean config.mak2 $(DH_INSTALL_FILES) + +override_dh_install: $(DH_INSTALL_FILES) + dh_install --sourcedir=debian/install +ifeq ($(do_opt),yes) + mkdir -p debian/$(libx264N)$(opt_libdir) + cp -a debian/install/opt$(opt_libdir)/*.so.* debian/$(libx264N)$(opt_libdir) +endif + +override_dh_missing: + dh_missing --list-missing --sourcedir=debian/install + +debian/x264.1: build + env LD_LIBRARY_PATH="$(LD_LIBRARY_PATH):$(CURDIR)/debian/install/shared/usr/lib/$(DEB_HOST_MULTIARCH)" \ + help2man -n "fast h264 encoder" -N -s1 -S "Videolan project" -h '--fullhelp' \ + debian/install/shared/usr/bin/x264 > debian/x264.1 diff --git a/source/format b/source/format new file mode 100644 index 0000000..163aaf8 --- /dev/null +++ b/source/format @@ -0,0 +1 @@ +3.0 (quilt) diff --git a/tests/control b/tests/control new file mode 100644 index 0000000..4e48f18 --- /dev/null +++ b/tests/control @@ -0,0 +1,3 @@ +Tests: encode-testimage +Depends: ffmpeg, x264 +Restrictions: allow-stderr diff --git a/tests/encode-testimage b/tests/encode-testimage new file mode 100755 index 0000000..a56aab8 --- /dev/null +++ b/tests/encode-testimage @@ -0,0 +1,14 @@ +#!/bin/sh +# autopkgtest check: Use ffmpeg to produce a 10s test image, +# and use x264 to encode to H.264 high profile + +set -e + +cd "$AUTOPKGTEST_TMP" + +ffmpeg -y -filter_complex testsrc -t 10 in.avi +x264 --crf 24 -o out.mkv in.avi +ffprobe -of ini -show_streams out.mkv | tee avprobe.txt +grep "^codec_name=h264" avprobe.txt +grep "^codec_long_name=H.264" avprobe.txt +grep "^profile=High" avprobe.txt diff --git a/upstream/metadata b/upstream/metadata new file mode 100644 index 0000000..6479205 --- /dev/null +++ b/upstream/metadata @@ -0,0 +1,2 @@ +--- +Repository: git://git.videolan.org/x264.git diff --git a/watch b/watch new file mode 100644 index 0000000..72d6c7d --- /dev/null +++ b/watch @@ -0,0 +1 @@ +# x264 currently does not have any releases diff --git a/x264-get-orig-source b/x264-get-orig-source new file mode 100755 index 0000000..2eddcff --- /dev/null +++ b/x264-get-orig-source @@ -0,0 +1,61 @@ +#!/bin/sh + +# Script used to generate the orig source tarball for x264. + +X264_GIT_URL="https://code.videolan.org/videolan/x264.git" +X264_GIT_COMMIT="5db6aa6cab1b146e07b60cc1736a01f21da01154" +DATE_RETRIEVED="20210613" +COMMIT_SHORT_FORM="$(echo $X264_GIT_COMMIT | \ + sed -e 's/^\([[:xdigit:]]\{,7\}\).*/\1/')" + +git clone "$X264_GIT_URL" "x264-git${COMMIT_SHORT_FORM}" +cd "x264-git${COMMIT_SHORT_FORM}" +git checkout "$X264_GIT_COMMIT" + +# We must determine the version after switching to the right commit and before +# making any modifications +POINTVER=$(./version.sh | grep X264_POINTVER | \ + sed -e 's/.*"\([.0-9]\+\)[[:space:]]\+\([a-fA-F0-9]\+\)".*/\1 \2/' | \ + cut -d ' ' -f 1) +X264_VERSION="${POINTVER}+git${COMMIT_SHORT_FORM}" + +# Rewrite version.sh since .git repo won't be available in Debian packaging. +LINE1=$(./version.sh | grep X264_VERSION) +LINE2=$(./version.sh | grep X264_POINTVER) +cat <version.sh +#!/bin/sh +# Script modified from upstream source for Debian packaging since packaging +# won't include .git repository. +echo '${LINE1}' +echo '${LINE2}' +EOF +chmod a+x version.sh + +cp -vf /usr/share/misc/config.guess . +cp -vf /usr/share/misc/config.sub . +cd .. + +# Rename the upstream directory +mv "x264-git${COMMIT_SHORT_FORM}" "x264-${X264_VERSION}" + +# Remove temp files and other cruft from source tarball +# The find command snippet here was taken from debhelper's dh_clean command +# with some modification to delete more unneeded files. +echo "Removing temp files and other cruft from source tarball" +find x264-${X264_VERSION} \( \( -type f -a \ + \( -name '#*#' -o -name '.*~' -o -name '*~' -o -name DEADJOE \ + -o -name '*.orig' -o -name '*.rej' -o -name '*.bak' \ + -o -name '.*.orig' -o -name .*.rej -o -name '.SUMS' \ + -o -name TAGS -o \( -path '*/.deps/*' -a -name '*.P' \) \ + -o -name config.status -o -name config.cache -o -name config.log \ + \) -exec rm -f "{}" \; \) -o \ + \( -type d -a -name autom4te.cache -prune -exec rm -rf "{}" \; \) \) +rm -rf x264-${X264_VERSION}/.git +rm -f x264-${X264_VERSION}/.gitignore + +# Remove empty directories +echo "Removing empty directories" +find x264-${X264_VERSION} -type d -empty -delete + +tar --exclude-vcs -czf "x264_${X264_VERSION}.orig.tar.gz" \ + "x264-${X264_VERSION}/" diff --git a/x264.1 b/x264.1 new file mode 100644 index 0000000..21f454c --- /dev/null +++ b/x264.1 @@ -0,0 +1,809 @@ +.\" DO NOT MODIFY THIS FILE! It was generated by help2man 1.49.1. +.TH X264 "1" "February 2022" "Videolan project" "User Commands" +.SH NAME +x264 \- fast h264 encoder +.SH DESCRIPTION +x264 core:163 r3060 5db6aa6 +Syntax: x264 [options] \fB\-o\fR outfile infile +.PP +Infile can be raw (in which case resolution is required), +.IP +or YUV4MPEG (*.y4m), +or Avisynth if compiled with support (yes). +or libav* formats if compiled with lavf support (yes) or ffms support (yes). +.SS "Outfile type is selected by filename:" +.IP +\&.264 \-> Raw bytestream +\&.mkv \-> Matroska +\&.flv \-> Flash Video +\&.mp4 \-> MP4 if compiled with GPAC or L\-SMASH support (gpac) +.PP +Output bit depth: 8/10 +\&. +Options: +.TP +\fB\-h\fR, \fB\-\-help\fR +List basic options +.TP +\fB\-\-longhelp\fR +List more options +.TP +\fB\-\-fullhelp\fR +List all options +.PP +Example usage: +.IP +Constant quality mode: +.IP +x264 \fB\-\-crf\fR 24 \fB\-o\fR +.IP +Two\-pass with a bitrate of 1000kbps: +.IP +x264 \fB\-\-pass\fR 1 \fB\-\-bitrate\fR 1000 \fB\-o\fR +x264 \fB\-\-pass\fR 2 \fB\-\-bitrate\fR 1000 \fB\-o\fR +.IP +Lossless: +.IP +x264 \fB\-\-qp\fR 0 \fB\-o\fR +.IP +Maximum PSNR at the cost of speed and visual quality: +.IP +x264 \fB\-\-preset\fR placebo \fB\-\-tune\fR psnr \fB\-o\fR +.IP +Constant bitrate at 1000kbps with a 2 second\-buffer: +.IP +x264 \fB\-\-vbv\-bufsize\fR 2000 \fB\-\-bitrate\fR 1000 \fB\-o\fR +.PP +Presets: +.TP +\fB\-\-profile\fR +Force the limits of an H.264 profile +Overrides all settings. +\- baseline: +.TP +\fB\-\-no\-8x8dct\fR \fB\-\-bframes\fR 0 \fB\-\-no\-cabac\fR +\fB\-\-cqm\fR flat \fB\-\-weightp\fR 0 +No interlaced. +No lossless. +.TP +\- main: +\fB\-\-no\-8x8dct\fR \fB\-\-cqm\fR flat +No lossless. +.TP +\- high: +No lossless. +.TP +\- high10: +No lossless. +Support for bit depth 8\-10. +.TP +\- high422: +No lossless. +Support for bit depth 8\-10. +Support for 4:2:0/4:2:2 chroma subsampling. +.TP +\- high444: +Support for bit depth 8\-10. +Support for 4:2:0/4:2:2/4:4:4 chroma subsampling. +.TP +\fB\-\-preset\fR +Use a preset to select encoding settings [medium] +Overridden by user settings. +\- ultrafast: +.TP +\fB\-\-no\-8x8dct\fR \fB\-\-aq\-mode\fR 0 \fB\-\-b\-adapt\fR 0 +\fB\-\-bframes\fR 0 \fB\-\-no\-cabac\fR \fB\-\-no\-deblock\fR +\fB\-\-no\-mbtree\fR \fB\-\-me\fR dia \fB\-\-no\-mixed\-refs\fR +\fB\-\-partitions\fR none \fB\-\-rc\-lookahead\fR 0 \fB\-\-ref\fR 1 +\fB\-\-scenecut\fR 0 \fB\-\-subme\fR 0 \fB\-\-trellis\fR 0 +\fB\-\-no\-weightb\fR \fB\-\-weightp\fR 0 +.TP +\- superfast: +\fB\-\-no\-mbtree\fR \fB\-\-me\fR dia \fB\-\-no\-mixed\-refs\fR +\fB\-\-partitions\fR i8x8,i4x4 \fB\-\-rc\-lookahead\fR 0 +\fB\-\-ref\fR 1 \fB\-\-subme\fR 1 \fB\-\-trellis\fR 0 \fB\-\-weightp\fR 1 +.TP +\- veryfast: +\fB\-\-no\-mixed\-refs\fR \fB\-\-rc\-lookahead\fR 10 +\fB\-\-ref\fR 1 \fB\-\-subme\fR 2 \fB\-\-trellis\fR 0 \fB\-\-weightp\fR 1 +.TP +\- faster: +\fB\-\-no\-mixed\-refs\fR \fB\-\-rc\-lookahead\fR 20 +\fB\-\-ref\fR 2 \fB\-\-subme\fR 4 \fB\-\-weightp\fR 1 +.TP +\- fast: +\fB\-\-rc\-lookahead\fR 30 \fB\-\-ref\fR 2 \fB\-\-subme\fR 6 +\fB\-\-weightp\fR 1 +.TP +\- medium: +Default settings apply. +.TP +\- slow: +\fB\-\-direct\fR auto \fB\-\-rc\-lookahead\fR 50 \fB\-\-ref\fR 5 +\fB\-\-subme\fR 8 \fB\-\-trellis\fR 2 +.TP +\- slower: +\fB\-\-b\-adapt\fR 2 \fB\-\-direct\fR auto \fB\-\-me\fR umh +\fB\-\-partitions\fR all \fB\-\-rc\-lookahead\fR 60 +\fB\-\-ref\fR 8 \fB\-\-subme\fR 9 \fB\-\-trellis\fR 2 +.TP +\- veryslow: +\fB\-\-b\-adapt\fR 2 \fB\-\-bframes\fR 8 \fB\-\-direct\fR auto +\fB\-\-me\fR umh \fB\-\-merange\fR 24 \fB\-\-partitions\fR all +\fB\-\-ref\fR 16 \fB\-\-subme\fR 10 \fB\-\-trellis\fR 2 +\fB\-\-rc\-lookahead\fR 60 +.TP +\- placebo: +\fB\-\-bframes\fR 16 \fB\-\-b\-adapt\fR 2 \fB\-\-direct\fR auto +\fB\-\-slow\-firstpass\fR \fB\-\-no\-fast\-pskip\fR +\fB\-\-me\fR tesa \fB\-\-merange\fR 24 \fB\-\-partitions\fR all +\fB\-\-rc\-lookahead\fR 60 \fB\-\-ref\fR 16 \fB\-\-subme\fR 11 +\fB\-\-trellis\fR 2 +.TP +\fB\-\-tune\fR +Tune the settings for a particular type of source +or situation +.TP +Overridden by user settings. +Multiple tunings are separated by commas. +Only one psy tuning can be used at a time. +\- film (psy tuning): +.TP +\fB\-\-deblock\fR \fB\-1\fR:\-1 \fB\-\-psy\-rd\fR :0.15 +\- animation (psy tuning): +.TP +\fB\-\-bframes\fR {+2} \fB\-\-deblock\fR 1:1 +\fB\-\-psy\-rd\fR 0.4: \fB\-\-aq\-strength\fR 0.6 +\fB\-\-ref\fR {Double if >1 else 1} +.TP +\- grain (psy tuning): +\fB\-\-aq\-strength\fR 0.5 \fB\-\-no\-dct\-decimate\fR +\fB\-\-deadzone\-inter\fR 6 \fB\-\-deadzone\-intra\fR 6 +\fB\-\-deblock\fR \fB\-2\fR:\-2 \fB\-\-ipratio\fR 1.1 +\fB\-\-pbratio\fR 1.1 \fB\-\-psy\-rd\fR :0.25 +\fB\-\-qcomp\fR 0.8 +.TP +\- stillimage (psy tuning): +\fB\-\-aq\-strength\fR 1.2 \fB\-\-deblock\fR \fB\-3\fR:\-3 +\fB\-\-psy\-rd\fR 2.0:0.7 +.TP +\- psnr (psy tuning): +\fB\-\-aq\-mode\fR 0 \fB\-\-no\-psy\fR +.TP +\- ssim (psy tuning): +\fB\-\-aq\-mode\fR 2 \fB\-\-no\-psy\fR +.TP +\- fastdecode: +\fB\-\-no\-cabac\fR \fB\-\-no\-deblock\fR \fB\-\-no\-weightb\fR +\fB\-\-weightp\fR 0 +.TP +\- zerolatency: +\fB\-\-bframes\fR 0 \fB\-\-force\-cfr\fR \fB\-\-no\-mbtree\fR +\fB\-\-sync\-lookahead\fR 0 \fB\-\-sliced\-threads\fR +\fB\-\-rc\-lookahead\fR 0 +.TP +\fB\-\-slow\-firstpass\fR +Don't force these faster settings with \fB\-\-pass\fR 1: +\fB\-\-no\-8x8dct\fR \fB\-\-me\fR dia \fB\-\-partitions\fR none +\fB\-\-ref\fR 1 \fB\-\-subme\fR {2 if >2 else unchanged} +\fB\-\-trellis\fR 0 \fB\-\-fast\-pskip\fR +.PP +Frame\-type options: +.HP +\fB\-I\fR, \fB\-\-keyint\fR Maximum GOP size [250] +.TP +\fB\-i\fR, \fB\-\-min\-keyint\fR +Minimum GOP size [auto] +.TP +\fB\-\-no\-scenecut\fR +Disable adaptive I\-frame decision +.TP +\fB\-\-scenecut\fR +How aggressively to insert extra I\-frames [40] +.TP +\fB\-\-intra\-refresh\fR +Use Periodic Intra Refresh instead of IDR frames +.TP +\fB\-b\fR, \fB\-\-bframes\fR +Number of B\-frames between I and P [3] +.TP +\fB\-\-b\-adapt\fR +Adaptive B\-frame decision method [1] +Higher values may lower threading efficiency. +\- 0: Disabled +\- 1: Fast +\- 2: Optimal (slow with high \fB\-\-bframes\fR) +.TP +\fB\-\-b\-bias\fR +Influences how often B\-frames are used [0] +.TP +\fB\-\-b\-pyramid\fR +Keep some B\-frames as references [normal] +\- none: Disabled +\- strict: Strictly hierarchical pyramid +\- normal: Non\-strict (not Blu\-ray compatible) +.TP +\fB\-\-open\-gop\fR +Use recovery points to close GOPs +Only available with b\-frames +.TP +\fB\-\-no\-cabac\fR +Disable CABAC +.TP +\fB\-r\fR, \fB\-\-ref\fR +Number of reference frames [3] +.TP +\fB\-\-no\-deblock\fR +Disable loop filter +.TP +\fB\-f\fR, \fB\-\-deblock\fR +Loop filter parameters [0:0] +.TP +\fB\-\-slices\fR +Number of slices per frame; forces rectangular +slices and is overridden by other slicing options +.TP +\fB\-\-slices\-max\fR +Absolute maximum slices per frame; overrides +slice\-max\-size/slice\-max\-mbs when necessary +.HP +\fB\-\-slice\-max\-size\fR Limit the size of each slice in bytes +.HP +\fB\-\-slice\-max\-mbs\fR Limit the size of each slice in macroblocks (max) +.HP +\fB\-\-slice\-min\-mbs\fR Limit the size of each slice in macroblocks (min) +.TP +\fB\-\-tff\fR +Enable interlaced mode (top field first) +.TP +\fB\-\-bff\fR +Enable interlaced mode (bottom field first) +.TP +\fB\-\-constrained\-intra\fR +Enable constrained intra prediction. +.TP +\fB\-\-pulldown\fR +Use soft pulldown to change frame rate +\- none, 22, 32, 64, double, triple, euro (requires cfr input) +.TP +\fB\-\-fake\-interlaced\fR +Flag stream as interlaced but encode progressive. +Makes it possible to encode 25p and 30p Blu\-Ray +streams. Ignored in interlaced mode. +.TP +\fB\-\-frame\-packing\fR For stereoscopic videos define frame arrangement +\- 0: checkerboard \- pixels are alternatively from L and R +\- 1: column alternation \- L and R are interlaced by column +\- 2: row alternation \- L and R are interlaced by row +\- 3: side by side \- L is on the left, R on the right +\- 4: top bottom \- L is on top, R on bottom +\- 5: frame alternation \- one view per frame +\- 6: mono \- 2D frame without any frame packing +\- 7: tile format \- L is on top\-left, R split across +.PP +Ratecontrol: +.TP +\fB\-q\fR, \fB\-\-qp\fR +Force constant QP (0\-81, 0=lossless) +.TP +\fB\-B\fR, \fB\-\-bitrate\fR +Set bitrate (kbit/s) +.TP +\fB\-\-crf\fR +Quality\-based VBR (\fB\-12\-51\fR) [23.0] +.HP +\fB\-\-rc\-lookahead\fR Number of frames for frametype lookahead [40] +.HP +\fB\-\-vbv\-maxrate\fR Max local bitrate (kbit/s) [0] +.HP +\fB\-\-vbv\-bufsize\fR Set size of the VBV buffer (kbit) [0] +.TP +\fB\-\-vbv\-init\fR +Initial VBV buffer occupancy [0.9] +.TP +\fB\-\-crf\-max\fR +With CRF+VBV, limit RF to this value +May cause VBV underflows! +.TP +\fB\-\-qpmin\fR +Set min QP [0] +.TP +\fB\-\-qpmax\fR +Set max QP [81] +.TP +\fB\-\-qpstep\fR +Set max QP step [4] +.TP +\fB\-\-ratetol\fR +Tolerance of ABR ratecontrol and VBV [1.0] +.TP +\fB\-\-ipratio\fR +QP factor between I and P [1.40] +.TP +\fB\-\-pbratio\fR +QP factor between P and B [1.30] +.TP +\fB\-\-chroma\-qp\-offset\fR +QP difference between chroma and luma [0] +.TP +\fB\-\-aq\-mode\fR +AQ method [1] +\- 0: Disabled +\- 1: Variance AQ (complexity mask) +\- 2: Auto\-variance AQ +\- 3: Auto\-variance AQ with bias to dark scenes +.TP +\fB\-\-aq\-strength\fR +Reduces blocking and blurring in flat and +textured areas. [1.0] +.TP +\fB\-p\fR, \fB\-\-pass\fR +Enable multipass ratecontrol +\- 1: First pass, creates stats file +\- 2: Last pass, does not overwrite stats file +\- 3: Nth pass, overwrites stats file +.TP +\fB\-\-stats\fR +Filename for 2 pass stats ["x264_2pass.log"] +.TP +\fB\-\-no\-mbtree\fR +Disable mb\-tree ratecontrol. +.TP +\fB\-\-qcomp\fR +QP curve compression [0.60] +.TP +\fB\-\-cplxblur\fR +Reduce fluctuations in QP (before curve compression) [20.0] +.TP +\fB\-\-qblur\fR +Reduce fluctuations in QP (after curve compression) [0.5] +.TP +\fB\-\-zones\fR //... +Tweak the bitrate of regions of the video +Each zone is of the form +.TP +,,