[arch-commits] Commit in vlc/trunk (PKGBUILD vlc-x264-155.patch)

Maxime Gauduin alucryd at archlinux.org
Tue Aug 7 18:58:06 UTC 2018


    Date: Tuesday, August 7, 2018 @ 18:58:05
  Author: alucryd
Revision: 331126

x264 155 rebuild: vlc 3.0.3-4

Added:
  vlc/trunk/vlc-x264-155.patch
Modified:
  vlc/trunk/PKGBUILD

--------------------+
 PKGBUILD           |   15 ++-
 vlc-x264-155.patch |  203 +++++++++++++++++++++++++++++++++++++++++++++++++++
 2 files changed, 212 insertions(+), 6 deletions(-)

Modified: PKGBUILD
===================================================================
--- PKGBUILD	2018-08-07 18:44:07 UTC (rev 331125)
+++ PKGBUILD	2018-08-07 18:58:05 UTC (rev 331126)
@@ -5,7 +5,7 @@
 
 pkgname=vlc
 pkgver=3.0.3
-pkgrel=3
+pkgrel=4
 pkgdesc='Multi-platform MPEG, VCD/DVD, and DivX player'
 url='https://www.videolan.org/vlc/'
 arch=('x86_64')
@@ -66,7 +66,7 @@
             'libpng: PNG support'
             'libjpeg-turbo: JPEG support'
             'librsvg: SVG plugin'
-            'libx264: H264 encoding'
+            'x264: H264 encoding'
             'x265: HEVC/H.265 encoder'
             'zvbi: VBI/Teletext decoding'
             'libass: Subtitle support'
@@ -90,17 +90,19 @@
 conflicts=('vlc-plugin')
 replaces=('vlc-plugin')
 options=('!emptydirs')
-source=(https://download.videolan.org/${pkgname}/${pkgver}/${pkgname}-${pkgver}.tar.xz{,.asc}
+source=(https://download.videolan.org/${pkgname}/${pkgver}/${pkgname}-${pkgver}-1.tar.xz{,.asc}
         update-vlc-plugin-cache.hook
         aom-remove-unsupported-pixel-formats.patch
         lua53_compat.patch
-        vlc-qt5.11.patch)
-sha512sums=('1569cefa6623b2631a832679bc9a63ebeba222901e5221d254e896a68d2ee467054da8de9eda566924e80a11bb29a673a9f0c4243793845547d8027b58a238ab'
+        vlc-qt5.11.patch
+        vlc-x264-155.patch)
+sha512sums=('d1979f6149821cf91d7b40b18d83d399b9021966b60589615638423a4e2c3ff86fdbbe9c0d92c85bfdd90f03991256ccee95d7a33ae96326177bb2bfe85e7a0f'
             'SKIP'
             '80357bae69e32b353d3784932d854e294906798e14faffb87c3383c3b6f6bdc57cbabb9c6e3f3c1adf0f8ddbb24153e72104c963cf1934970c2983c96daef9df'
             '5757a6f35e106883072c31d137fd247c65a544f730cf736ca2e81a31357305b5c002b52349337d8e1667fbe68628bc253ec69eee727f268aee7902a5bef82dce'
             '33cda373aa1fb3ee19a78748e2687f2b93c8662c9fda62ecd122a2e649df8edaceb54dda3991bc38c80737945a143a9e65baa2743a483bb737bb94cd590dc25f'
-            '66aad0ec32d1a96f65566b04eb9c0b4574824e281940fe5c0de54ac5f92189693a9f2576203d2c8562d7174ec5315cbbd683d93c481d16119d3038e30a58cbf5')
+            '66aad0ec32d1a96f65566b04eb9c0b4574824e281940fe5c0de54ac5f92189693a9f2576203d2c8562d7174ec5315cbbd683d93c481d16119d3038e30a58cbf5'
+            '47b844c7ada22042a0aab67d485ee68fda4847400dedd0f5662eb3738c1e45a06b50a6a045f3af1f07625ebd6f021bd43acaa9a8e63720e3b1207ad0d23bb36f')
 validpgpkeys=('65F7C6B4206BD057A7EB73787180713BE58D1ADC') # VideoLAN Release Signing Key
 
 prepare() {
@@ -112,6 +114,7 @@
   patch -Np1 < "${srcdir}/aom-remove-unsupported-pixel-formats.patch"
   patch -Np1 < "${srcdir}/lua53_compat.patch"
   patch -Np1 < "${srcdir}/vlc-qt5.11.patch"
+  patch -Np1 < "${srcdir}/vlc-x264-155.patch"
 }
 
 build() {

Added: vlc-x264-155.patch
===================================================================
--- vlc-x264-155.patch	                        (rev 0)
+++ vlc-x264-155.patch	2018-08-07 18:58:05 UTC (rev 331126)
@@ -0,0 +1,203 @@
+From a8953ba707cca1f2de372ca24513296bcfcdaaa8 Mon Sep 17 00:00:00 2001
+From: Ilkka Ollakka <ileoo at videolan.org>
+Date: Sat, 24 Mar 2018 13:23:33 +0200
+Subject: [PATCH] x264: drop <148 build support and fix 10bit support
+
+Drop old #if as 148 is not that recent anymore.
+
+fixes #19581
+---
+ modules/codec/x264.c | 65 +++++++-------------------------------------
+ 1 file changed, 10 insertions(+), 55 deletions(-)
+
+diff --git a/modules/codec/x264.c b/modules/codec/x264.c
+index e02048f0757..bcf3c89a10f 100644
+--- a/modules/codec/x264.c
++++ b/modules/codec/x264.c
+@@ -84,13 +84,7 @@ static void x264_log( void *, int i_level, const char *psz, va_list );
+     "I-frames, but do not start a new GOP." )
+ 
+ #define OPENGOP_TEXT N_("Use recovery points to close GOPs")
+-#if X264_BUILD < 115
+-#define OPENGOP_LONGTEXT N_("none: use closed GOPs only\n"\
+-    "normal: use standard open GOPs\n" \
+-    "bluray: use Blu-ray compatible open GOPs" )
+-#else
+ #define OPENGOP_LONGTEXT N_("use open GOP, for bluray compatibility use also bluray-compat option")
+-#endif
+ 
+ #define BLURAY_TEXT N_("Enable compatibility hacks for Blu-ray support")
+ #define BLURAY_LONGTEXT N_("Enable hacks for Blu-ray support, this doesn't enforce every aspect of Blu-ray compatibility\n" \
+@@ -469,16 +463,10 @@ vlc_module_begin ()
+     add_integer( SOUT_CFG_PREFIX "min-keyint", 25, MIN_KEYINT_TEXT,
+                  MIN_KEYINT_LONGTEXT, true )
+ 
+-#if X264_BUILD >= 102 && X264_BUILD <= 114
+-    add_string( SOUT_CFG_PREFIX "opengop", "none", OPENGOP_TEXT,
+-               OPENGOP_LONGTEXT, true )
+-        change_string_list( x264_open_gop_names, x264_open_gop_names )
+-#elif X264_BUILD > 114
+     add_bool( SOUT_CFG_PREFIX "opengop", false, OPENGOP_TEXT,
+                OPENGOP_LONGTEXT, true )
+     add_bool( SOUT_CFG_PREFIX "bluray-compat", false, BLURAY_TEXT,
+                BLURAY_LONGTEXT, true )
+-#endif
+ 
+     add_integer( SOUT_CFG_PREFIX "scenecut", 40, SCENE_TEXT,
+                  SCENE_LONGTEXT, true )
+@@ -498,13 +486,8 @@ vlc_module_begin ()
+                  B_BIAS_LONGTEXT, true )
+         change_integer_range( -100, 100 )
+ 
+-#if X264_BUILD >= 87
+     add_string( SOUT_CFG_PREFIX "bpyramid", "normal", BPYRAMID_TEXT,
+               BPYRAMID_LONGTEXT, true )
+-#else
+-    add_string( SOUT_CFG_PREFIX "bpyramid", "none", BPYRAMID_TEXT,
+-              BPYRAMID_LONGTEXT, true )
+-#endif
+         change_string_list( bpyramid_list, bpyramid_list )
+ 
+     add_bool( SOUT_CFG_PREFIX "cabac", true, CABAC_TEXT, CABAC_LONGTEXT,
+@@ -541,22 +524,18 @@ vlc_module_begin ()
+     add_bool( SOUT_CFG_PREFIX "interlaced", false, INTERLACED_TEXT, INTERLACED_LONGTEXT,
+               true )
+ 
+-#if X264_BUILD >= 111
+     add_integer( SOUT_CFG_PREFIX "frame-packing", -1, FRAMEPACKING_TEXT, FRAMEPACKING_LONGTEXT, true )
+         change_integer_list( framepacking_list, framepacking_list_text )
+         change_integer_range( -1, 6)
+-#endif
+ 
+     add_integer( SOUT_CFG_PREFIX "slices", 0, SLICE_COUNT, SLICE_COUNT_LONGTEXT, true )
+     add_integer( SOUT_CFG_PREFIX "slice-max-size", 0, SLICE_MAX_SIZE, SLICE_MAX_SIZE_LONGTEXT, true )
+     add_integer( SOUT_CFG_PREFIX "slice-max-mbs", 0, SLICE_MAX_MBS, SLICE_MAX_MBS_LONGTEXT, true )
+ 
+-#if X264_BUILD >= 89
+     add_string( SOUT_CFG_PREFIX "hrd", "none", HRD_TEXT, HRD_TEXT, true )
+         vlc_config_set (VLC_CONFIG_LIST,
+             (sizeof(x264_nal_hrd_names) / sizeof (char*)) - 1,
+             x264_nal_hrd_names, x264_nal_hrd_names);
+-#endif
+ 
+ 
+ /* Ratecontrol */
+@@ -842,20 +821,14 @@ static int  Open ( vlc_object_t *p_this )
+     fullrange |= p_enc->fmt_in.video.b_color_range_full;
+     p_enc->fmt_in.i_codec = fullrange ? VLC_CODEC_J420 : VLC_CODEC_I420;
+     p_sys->i_colorspace = X264_CSP_I420;
+-#if X264_BUILD >= 118
+     char *psz_profile = var_GetString( p_enc, SOUT_CFG_PREFIX "profile" );
+-    if( psz_profile )
+-    {
+-        const int mask = x264_bit_depth > 8 ? X264_CSP_HIGH_DEPTH : 0;
+-
+-
+ # ifdef MODULE_NAME_IS_x26410b
+-        if( mask == 0)
+-        {
+-            msg_Err( p_enc, "Only high bit depth encoding supported, bit depth:%d", x264_bit_depth);
+-            return VLC_EGENERIC;
+-        }
++    const int mask = X264_CSP_HIGH_DEPTH;
++# else
++    const int mask = 0;
+ # endif
++    if( psz_profile )
++    {
+ 
+         if( !strcmp( psz_profile, "high10" ) )
+         {
+@@ -878,7 +851,6 @@ static int  Open ( vlc_object_t *p_this )
+             msg_Err( p_enc, "Only high-profiles and 10-bit are supported");
+             return VLC_EGENERIC;
+         }
+-
+ # endif
+     }
+ # ifdef MODULE_NAME_IS_x26410b
+@@ -889,7 +861,6 @@ static int  Open ( vlc_object_t *p_this )
+     }
+ # endif
+     free( psz_profile );
+-#endif //X264_BUILD
+ 
+     p_enc->pf_encode_video = Encode;
+     p_enc->pf_encode_audio = NULL;
+@@ -912,6 +883,10 @@ static int  Open ( vlc_object_t *p_this )
+ #else
+     x264_param_default( &p_sys->param );
+     x264_param_default_preset( &p_sys->param, psz_preset, psz_tune );
++# if X264_BUILD > 152
++    if( mask )
++        p_sys->param.i_bitdepth = 10;
++# endif
+ #endif
+     free( psz_preset );
+     free( psz_tune );
+@@ -1089,10 +1064,8 @@ static int  Open ( vlc_object_t *p_this )
+     if( fabs( var_GetFloat( p_enc, SOUT_CFG_PREFIX "aq-strength" ) - 1.0) > 0.005 )
+        p_sys->param.rc.f_aq_strength = var_GetFloat( p_enc, SOUT_CFG_PREFIX "aq-strength" );
+ 
+-#if X264_BUILD >= 111
+     if( var_GetInteger( p_enc, SOUT_CFG_PREFIX "frame-packing" ) > -1 )
+        p_sys->param.i_frame_packing = var_GetInteger( p_enc, SOUT_CFG_PREFIX "frame-packing" );
+-#endif
+ 
+     if( var_GetBool( p_enc, SOUT_CFG_PREFIX "verbose" ) )
+         p_sys->param.i_log_level = X264_LOG_DEBUG;
+@@ -1108,26 +1081,14 @@ static int  Open ( vlc_object_t *p_this )
+ 
+     i_val = var_GetInteger( p_enc, SOUT_CFG_PREFIX "keyint" );
+     if( i_val > 0 && i_val != 250 ) p_sys->param.i_keyint_max = i_val;
+-#if X264_BUILD >= 102
+     if( i_val == -1 ) p_sys->param.i_keyint_max = X264_KEYINT_MAX_INFINITE;
+-#endif
+ 
+     i_val = var_GetInteger( p_enc, SOUT_CFG_PREFIX "min-keyint" );
+     if( i_val > 0 && i_val != 25 ) p_sys->param.i_keyint_min = i_val;
+ 
+-#if X264_BUILD >= 102 && X264_BUILD <= 114
+-    psz_val = var_GetString( p_enc, SOUT_CFG_PREFIX "opengop" );
+-    if( !strcmp( psz_val, "none" ) )
+-        p_sys->param.i_open_gop = X264_OPEN_GOP_NONE;
+-    else if( !strcmp( psz_val, "normal" ) )
+-        p_sys->param.i_open_gop = X264_OPEN_GOP_NORMAL;
+-    else if( !strcmp( psz_val, "bluray" ) )
+-        p_sys->param.i_open_gop = X264_OPEN_GOP_BLURAY;
+-    free( psz_val );
+-#elif X264_BUILD >= 115
+     p_sys->param.b_open_gop = var_GetBool( p_enc, SOUT_CFG_PREFIX "opengop" );
+     p_sys->param.b_bluray_compat = var_GetBool( p_enc, SOUT_CFG_PREFIX "bluray-compat" );
+-#endif
++
+     i_val = var_GetInteger( p_enc, SOUT_CFG_PREFIX "bframes" );
+     if( i_val >= 0 && i_val <= 16 && i_val != 3 )
+         p_sys->param.i_bframe = i_val;
+@@ -1165,14 +1126,12 @@ static int  Open ( vlc_object_t *p_this )
+     if( i_val >= 1 && i_val != 7 )
+         p_sys->param.analyse.i_subpel_refine = i_val;
+ 
+-#if X264_BUILD >= 89
+     psz_val = var_GetString( p_enc, SOUT_CFG_PREFIX "hrd");
+     if( !strcmp( psz_val, "vbr" ) )
+         p_sys->param.i_nal_hrd = X264_NAL_HRD_VBR;
+     else if( !strcmp( psz_val, "cbr" ) )
+         p_sys->param.i_nal_hrd = X264_NAL_HRD_CBR;
+     free( psz_val );
+-#endif
+ 
+     //TODO: psz_val == NULL ?
+     psz_val = var_GetString( p_enc, SOUT_CFG_PREFIX "me" );
+@@ -1531,11 +1490,7 @@ static block_t *Encode( encoder_t *p_enc, picture_t *p_pict )
+     int i_nal=0, i_out=0, i=0;
+ 
+     /* init pic */
+-#if X264_BUILD >= 98
+     x264_picture_init( &pic );
+-#else
+-    memset( &pic, 0, sizeof( x264_picture_t ) );
+-#endif
+     if( likely(p_pict) ) {
+        pic.i_pts = p_pict->date;
+        pic.img.i_csp = p_sys->i_colorspace;



More information about the arch-commits mailing list