SHA256
1
0
forked from pool/vlc

Updating link to change in openSUSE:Factory/vlc revision 92.0

OBS-URL: https://build.opensuse.org/package/show/multimedia:libs/vlc?expand=0&rev=d9d367c3304a377c8b793512b067e88d
This commit is contained in:
OBS User buildservice-autocommit 2019-02-24 16:02:29 +00:00 committed by Git OBS Bridge
parent 3085717194
commit 76ca0778e7
4 changed files with 121 additions and 5 deletions

View File

@ -0,0 +1,32 @@
From 5575fe3eb3fd46bada8662268b74d03493476a84 Mon Sep 17 00:00:00 2001
From: Danny Milosavljevic <dannym@scratchpost.org>
Date: Mon, 11 Feb 2019 16:07:12 +0100
Subject: [PATCH] codec: vpx: Detect libvpx 1.8.0 and, if detected, use fewer
frame formats in the chroma_table
Signed-off-by: Steve Lhomme <robux4@ycbcr.xyz>
---
modules/codec/vpx.c | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/modules/codec/vpx.c b/modules/codec/vpx.c
index f03c7fae625..59b3acdef74 100644
--- a/modules/codec/vpx.c
+++ b/modules/codec/vpx.c
@@ -117,6 +117,7 @@ static const struct
{ VLC_CODEC_I440, VPX_IMG_FMT_I440, 8, 0 },
{ VLC_CODEC_YV12, VPX_IMG_FMT_YV12, 8, 0 },
+#if VPX_IMAGE_ABI_VERSION < 5
{ VLC_CODEC_YUVA, VPX_IMG_FMT_444A, 8, 0 },
{ VLC_CODEC_YUYV, VPX_IMG_FMT_YUY2, 8, 0 },
{ VLC_CODEC_UYVY, VPX_IMG_FMT_UYVY, 8, 0 },
@@ -129,7 +130,7 @@ static const struct
{ VLC_CODEC_ARGB, VPX_IMG_FMT_ARGB, 8, 0 },
{ VLC_CODEC_BGRA, VPX_IMG_FMT_ARGB_LE, 8, 0 },
-
+#endif
{ VLC_CODEC_GBR_PLANAR, VPX_IMG_FMT_I444, 8, 1 },
{ VLC_CODEC_GBR_PLANAR_10L, VPX_IMG_FMT_I44416, 10, 1 },

View File

@ -0,0 +1,67 @@
From: Antonio Larrosa <antonio.larrosa@gmail.com>
Subject: Fix building vlc with fdk-aac v2
Based on the patch at https://git.libav.org/?p=libav.git;a=commitdiff_plain;h=141c960e21d2860e354f9b90df136184dd00a9a8;hp=c8bca9fe466f810fd484e2c6db7ef7bc83b5a943
Index: vlc-3.0.6/modules/codec/fdkaac.c
===================================================================
--- vlc-3.0.6.orig/modules/codec/fdkaac.c
+++ vlc-3.0.6/modules/codec/fdkaac.c
@@ -92,6 +92,11 @@ static void CloseEncoder(vlc_object_t *)
#define SIGNALING_COMPATIBLE 1
#define SIGNALING_HIERARCHICAL 2
+#define FDKENC_VER_AT_LEAST(vl0, vl1) \
+ (defined(AACENCODER_LIB_VL0) && \
+ ((AACENCODER_LIB_VL0 > vl0) || \
+ (AACENCODER_LIB_VL0 == vl0 && AACENCODER_LIB_VL1 >= vl1)))
+
static const int pi_aot_values[] = { PROFILE_AAC_LC, PROFILE_AAC_HE, PROFILE_AAC_HE_v2, PROFILE_AAC_LD, PROFILE_AAC_ELD };
static const char *const ppsz_aot_descriptions[] =
{ N_("AAC-LC"), N_("HE-AAC"), N_("HE-AAC-v2"), N_("AAC-LD"), N_("AAC-ELD") };
@@ -288,7 +293,11 @@ static int OpenEncoder(vlc_object_t *p_t
p_sys->i_maxoutputsize = 768*p_enc->fmt_in.audio.i_channels;
p_enc->fmt_in.audio.i_bitspersample = 16;
p_sys->i_frame_size = info.frameLength;
+#if FDKENC_VER_AT_LEAST(4, 0)
+ p_sys->i_encoderdelay = info.nDelay;
+#else
p_sys->i_encoderdelay = info.encoderDelay;
+#endif
p_enc->fmt_out.i_extra = info.confSize;
if (p_enc->fmt_out.i_extra) {
@@ -353,21 +362,27 @@ static block_t *EncodeAudio(encoder_t *p
int out_identifier = OUT_BITSTREAM_DATA;
int out_size, out_elem_size;
void *in_ptr, *out_ptr;
+ uint8_t dummy_buf[1];
if (unlikely(i_samples == 0)) {
// this forces the encoder to purge whatever is left in the internal buffer
+ /* Must be a non-null pointer, even if it's a dummy. We could use
+ * the address of anything else on the stack as well. */
+ in_ptr = dummy_buf;
+ in_size = 0;
+
in_args.numInSamples = -1;
} else {
in_ptr = p_buffer + (i_samples - i_samples_left)*p_enc->fmt_in.audio.i_channels;
in_size = 2*p_enc->fmt_in.audio.i_channels*i_samples_left;
- in_elem_size = 2;
in_args.numInSamples = p_enc->fmt_in.audio.i_channels*i_samples_left;
- in_buf.numBufs = 1;
- in_buf.bufs = &in_ptr;
- in_buf.bufferIdentifiers = &in_identifier;
- in_buf.bufSizes = &in_size;
- in_buf.bufElSizes = &in_elem_size;
}
+ in_elem_size = 2;
+ in_buf.numBufs = 1;
+ in_buf.bufs = &in_ptr;
+ in_buf.bufferIdentifiers = &in_identifier;
+ in_buf.bufSizes = &in_size;
+ in_buf.bufElSizes = &in_elem_size;
block_t *p_block;
p_block = block_Alloc(p_sys->i_maxoutputsize);
p_block->i_buffer = p_sys->i_maxoutputsize;

View File

@ -1,8 +1,18 @@
-------------------------------------------------------------------
Tue Feb 12 16:19:01 UTC 2019 - Antonio Larrosa <alarrosa@suse.com>
- Add fix-build-with-fdk-2.0.patch to fix building vlc with
libfdk-aac v2
- Add 0001-codec-vpx-Detect-libvpx-1.8.0.patch to fix building vlc
with libvpx 1.8.0
- Add the libx26410b_plugin.so codec plugin when building with
BUILD_ORIG
-------------------------------------------------------------------
Thu Jan 10 20:48:42 UTC 2019 - seanlew@opensuse.org
- Update to version 3.0.6:
+ Core:
+ Core:
* Fix potential subtitle picture allocation failures
+ Codec:
* Add support for 12 bits decoding of AV1

View File

@ -47,12 +47,16 @@ Patch0: vlc.a52.patch
Patch1: vlc-allow-deprecated-fribidi.patch
# PATCH-FIX-UPSTREAM vlc-lua-5.3.patch dimstar@opensuse.org -- Replace lua_optlong with lua_optinteger
Patch2: vlc-lua-5.3.patch
# PATCH-FIX-UPSTREAM fix-build-with-fdk-2.0.patch -- Fix building vlc with libfdk-aac v2
Patch3: fix-build-with-fdk-2.0.patch
# PATCH-FEATURE-OPENSUSE vlc-projectM-qt5.patch -- Build against projectM-qt5; openSUSE provides projectM as -qt and -qt5 variant
Patch100: vlc-projectM-qt5.patch
# PATCH-FIX-UPSTREAM 0001-Fix-leaking-AvahiServiceResolver-in-the-error-paths.patch -- Fix some memleaks
Patch101: 0001-Fix-leaking-AvahiServiceResolver-in-the-error-paths.patch
# PATCH-FIX-UPSTREAM 0002-Add-Avahi-implementation-for-chromecast-renderer-dis.patch -- Use Avahi for discovery, microdns is not available
Patch102: 0002-Add-Avahi-implementation-for-chromecast-renderer-dis.patch
# PATCH-FIX-UPSTREAM 0001-codec-vpx-Detect-libvpx-1.8.0.patch -- Fix building vlc with libvpx 1.8.0
Patch103: 0001-codec-vpx-Detect-libvpx-1.8.0.patch
BuildRequires: Mesa-devel
BuildRequires: SDL-devel >= 1.2.10
BuildRequires: aalib-devel
@ -291,8 +295,8 @@ installed as a dependency.
%package lang
# FIXME: consider using %%lang_package macro
Summary: Translations for package %{name}
Group: System/Localization
# We do not want to require vlc, which is GUI based, but only vlc-noX
Group: System/Localization
Requires: %{name}-noX = %{version}
Supplements: packageand(bundle-lang-other:%{name}-noX)
Provides: %{name}-lang-all = %{version}
@ -326,8 +330,8 @@ This package adds jack support to vlc via plugins.
%if 0%{?BUILD_ORIG}
%package codecs
Summary: Additional codecs for the VLC media player
Group: Productivity/Multimedia/Video/Players
# We require the unrestricted libavcodec - same ABI version we linked
Group: Productivity/Multimedia/Video/Players
Requires: %(rpm --qf "%%{name}" -qf $(readlink -f %{_libdir}/libavcodec.so))(unrestricted)
Requires: %{name}-noX = %{version}
# We need the noX package first, as it contains vlc-cache-gen
@ -340,8 +344,8 @@ codecs that are not available in the stock openSUSE distribution.
%package vdpau
Summary: Additional vdpau codecs for the VLC media player
Group: Productivity/Multimedia/Video/Players
# We require the unrestricted libavcodec - same ABI version we linked
Group: Productivity/Multimedia/Video/Players
Requires: %(rpm --qf "%%{name}" -qf $(readlink -f %{_libdir}/libavcodec.so))(unrestricted)
Requires: %{name}-codecs = %{version}
Requires: %{name}-noX = %{version}
@ -361,8 +365,8 @@ Group: Productivity/Multimedia/Video/Players
Requires: %{name}-noX = %{version}-%{release}
# We need the noX package first, as it contains vlc-cache-gen
Requires(post): %{name}-noX
Conflicts: %{conflicts}-qt
Supplements: packageand(%{name}-noX:libqt5)
Conflicts: %{conflicts}-qt
%description qt
This subpackage provides a Qt interface for VLC and selects it by
@ -372,11 +376,13 @@ default when `vlc` is invoked from an X session.
%setup -q
%patch0 -p1
%patch1 -p1
%patch3 -p1
%if 0%{?suse_version} > 1320
%patch100 -p1
%endif
%patch101 -p1
%patch102 -p1
%patch103 -p1
### And LUA 5.3.1 has some more API changes
if pkg-config --atleast-version 5.3.1 lua; then
@ -1105,6 +1111,7 @@ done
%{_libdir}/vlc/plugins/codec/libfdkaac_plugin.so
%{_libdir}/vlc/plugins/codec/libfaad_plugin.so
%{_libdir}/vlc/plugins/codec/libx264_plugin.so
%{_libdir}/vlc/plugins/codec/libx26410b_plugin.so
%{_libdir}/vlc/plugins/codec/libx265_plugin.so
%{_libdir}/vlc/plugins/video_filter/libpostproc_plugin.so