diff --git a/extra/vlc/PKGBUILD b/extra/vlc/PKGBUILD index 2788cdb7f..3eeaf08b2 100644 --- a/extra/vlc/PKGBUILD +++ b/extra/vlc/PKGBUILD @@ -7,11 +7,11 @@ # - enable gles2 pkgname=vlc -_vlcver=3.0.4 +_vlcver=3.0.6 # optional fixup version including hyphen _vlcfixupver= pkgver=${_vlcver}${_vlcfixupver//-/.r} -pkgrel=7 +pkgrel=1 pkgdesc='Multi-platform MPEG, VCD/DVD, and DivX player' url='https://www.videolan.org/vlc/' arch=('x86_64') @@ -31,9 +31,11 @@ makedepends=('gst-plugins-base-libs' 'live-media' 'libnotify' 'libbluray' 'libvorbis' 'speex' 'opus' 'libtheora' 'libpng' 'libjpeg-turbo' 'libx265.so' 'libx264.so' 'zvbi' 'libass' 'libkate' 'libtiger' 'sdl_image' 'libpulse' 'alsa-lib' 'jack' 'libsamplerate' 'libsoxr' - 'lirc' 'libgoom2' 'projectm' 'chromaprint') + 'lirc' 'libgoom2' 'projectm' 'chromaprint' 'aom' 'srt' 'dav1d') optdepends=('avahi: service discovery using bonjour protocol' + 'aom: AOM AV1 codec' 'gst-plugins-base-libs: for libgst plugins' + 'dav1d: dav1d AV1 decoder' 'libdvdcss: decoding encrypted DVDs' 'libavc1394: devices using the 1394ta AV/C' 'libdc1394: IEEE 1394 access plugin' @@ -78,6 +80,7 @@ optdepends=('avahi: service discovery using bonjour protocol' 'libkate: Kate codec' 'libtiger: Tiger rendering for Kate streams' 'sdl_image: SDL image support' + 'srt: SRT input/output plugin' 'aalib: ASCII art video output' 'libcaca: colored ASCII art video output' 'libpulse: PulseAudio audio output' @@ -97,13 +100,11 @@ replaces=('vlc-plugin') options=('!emptydirs') source=(https://download.videolan.org/${pkgname}/${_vlcver}/${pkgname}-${_vlcver}${_vlcfixupver}.tar.xz{,.asc} update-vlc-plugin-cache.hook - lua53_compat.patch - vlc-x264-155.patch) -sha512sums=('55c5a45a1573d559f8d62272dc446bebfb328bd48f938e634693a45032e1a3095148e634de5bc53a3a3c0e4858f7df3ed7e5dc91f3f5447e47d0ab5775171271' + lua53_compat.patch) +sha512sums=('7c72e98f30ce5c5a94d74e097fa9960442f89240079b042a729f8a33dd7fedee2538c86c99738ccef2eb27f29055f0221d4c70316e3312c5ebba9565eaa15c52' 'SKIP' '80357bae69e32b353d3784932d854e294906798e14faffb87c3383c3b6f6bdc57cbabb9c6e3f3c1adf0f8ddbb24153e72104c963cf1934970c2983c96daef9df' - '33cda373aa1fb3ee19a78748e2687f2b93c8662c9fda62ecd122a2e649df8edaceb54dda3991bc38c80737945a143a9e65baa2743a483bb737bb94cd590dc25f' - '47b844c7ada22042a0aab67d485ee68fda4847400dedd0f5662eb3738c1e45a06b50a6a045f3af1f07625ebd6f021bd43acaa9a8e63720e3b1207ad0d23bb36f') + '33cda373aa1fb3ee19a78748e2687f2b93c8662c9fda62ecd122a2e649df8edaceb54dda3991bc38c80737945a143a9e65baa2743a483bb737bb94cd590dc25f') validpgpkeys=('65F7C6B4206BD057A7EB73787180713BE58D1ADC') # VideoLAN Release Signing Key prepare() { @@ -120,8 +121,6 @@ prepare() { msg2 "Applying patch $src..." patch -Np1 < "../$src" done - # libplacebo 0.6 API - sed 's|pl_shader_alloc(tc->pl_ctx, NULL, 0, 0);|pl_shader_alloc(tc->pl_ctx, NULL, 0);|' -i modules/video_output/opengl/vout_helper.c } build() { @@ -138,6 +137,7 @@ build() { --sysconfdir=/etc \ --with-kde-solid=/usr/share/solid/actions/ \ --disable-rpath \ + --enable-gles2 \ --enable-nls \ --enable-archive \ --enable-live555 \ @@ -226,7 +226,9 @@ build() { --enable-libplacebo \ --enable-vlc \ --enable-aribsub \ - --enable-gles2 + --enable-aom \ + --enable-srt + #--enable-dav1d \ make } diff --git a/extra/vlc/vlc-x264-155.patch b/extra/vlc/vlc-x264-155.patch deleted file mode 100644 index 3131859ba..000000000 --- a/extra/vlc/vlc-x264-155.patch +++ /dev/null @@ -1,203 +0,0 @@ -From a8953ba707cca1f2de372ca24513296bcfcdaaa8 Mon Sep 17 00:00:00 2001 -From: Ilkka Ollakka -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;