[packages/gmerlin-avdecoder] - fix building with ffmpeg 4.0 - rel 10
baggins
baggins at pld-linux.org
Sun Apr 29 11:10:43 CEST 2018
commit e94b61967f963a70b22829b159dc4d4b4013a618
Author: Jan Rękorajski <baggins at pld-linux.org>
Date: Sun Apr 29 11:10:27 2018 +0200
- fix building with ffmpeg 4.0
- rel 10
ffmpeg4.patch | 90 ++++++++++++++++++++++++++++++++++++++++++++++++++
gmerlin-avdecoder.spec | 4 ++-
2 files changed, 93 insertions(+), 1 deletion(-)
---
diff --git a/gmerlin-avdecoder.spec b/gmerlin-avdecoder.spec
index b94c451..67e1c43 100644
--- a/gmerlin-avdecoder.spec
+++ b/gmerlin-avdecoder.spec
@@ -9,7 +9,7 @@ Summary: Multiformat media decoding library
Summary(pl.UTF-8): Biblioteka dekodująca wiele formatów multimedialnych
Name: gmerlin-avdecoder
Version: 1.2.0
-Release: 9
+Release: 10
License: GPL v2+
Group: Libraries
Source0: http://downloads.sourceforge.net/gmerlin/%{name}-%{version}.tar.gz
@@ -20,6 +20,7 @@ Patch2: %{name}-link.patch
Patch3: %{name}-am.patch
Patch4: %{name}-ffmpeg2.patch
Patch5: ffmpeg3.patch
+Patch6: ffmpeg4.patch
URL: http://gmerlin.sourceforge.net/avdec_frame.html
BuildRequires: a52dec-libs-devel >= 0.7.4
BuildRequires: autoconf >= 2.50
@@ -164,6 +165,7 @@ Wtyczki avdec dla biblioteki Gmerlin.
%patch3 -p1
%patch4 -p1
%patch5 -p1
+%patch6 -p1
%build
%{__libtoolize}
diff --git a/ffmpeg4.patch b/ffmpeg4.patch
new file mode 100644
index 0000000..f1cbfd2
--- /dev/null
+++ b/ffmpeg4.patch
@@ -0,0 +1,90 @@
+--- gmerlin-avdecoder-1.2.0/lib/audio_ffmpeg.c~ 2018-04-29 11:01:03.000000000 +0200
++++ gmerlin-avdecoder-1.2.0/lib/audio_ffmpeg.c 2018-04-29 11:02:16.192276294 +0200
+@@ -189,7 +189,7 @@
+ bgav_dprintf("Got packet\n");
+ bgav_packet_dump(p);
+ #endif
+- bgav_bytebuffer_append(&priv->buf, p, FF_INPUT_BUFFER_PADDING_SIZE);
++ bgav_bytebuffer_append(&priv->buf, p, AV_INPUT_BUFFER_PADDING_SIZE);
+ bgav_stream_done_packet_read(s, p);
+ }
+ return 1;
+@@ -334,7 +334,7 @@
+ {
+ if(!fill_buffer(s))
+ {
+- if(!(priv->ctx->codec->capabilities & CODEC_CAP_DELAY))
++ if(!(priv->ctx->codec->capabilities & AV_CODEC_CAP_DELAY))
+ return 0;
+ }
+
+@@ -373,7 +373,7 @@
+
+ /* Only codecs with delay are allowed to eat
+ packets without outputting audio */
+- if(!(priv->ctx->codec->capabilities & CODEC_CAP_DELAY))
++ if(!(priv->ctx->codec->capabilities & AV_CODEC_CAP_DELAY))
+ return 0;
+ }
+
+@@ -451,7 +451,7 @@
+ if(s->ext_size)
+ {
+ priv->ext_data = calloc(1, s->ext_size +
+- FF_INPUT_BUFFER_PADDING_SIZE);
++ AV_INPUT_BUFFER_PADDING_SIZE);
+ memcpy(priv->ext_data, s->ext_data, s->ext_size);
+
+ priv->ctx->extradata = priv->ext_data;
+--- gmerlin-avdecoder-1.2.0/lib/video_ffmpeg.c~ 2018-04-29 11:01:03.000000000 +0200
++++ gmerlin-avdecoder-1.2.0/lib/video_ffmpeg.c 2018-04-29 11:07:18.996633710 +0200
+@@ -121,7 +121,7 @@
+
+ /* Real video ugliness */
+
+- uint32_t rv_extradata[2+FF_INPUT_BUFFER_PADDING_SIZE/4];
++ uint32_t rv_extradata[2+AV_INPUT_BUFFER_PADDING_SIZE/4];
+
+ #if LIBAVCODEC_VERSION_MAJOR < 54
+ AVPaletteControl palette;
+@@ -884,18 +884,18 @@
+ * For streams, where the packets are not aligned with frames,
+ * we need an AVParser
+ */
+- priv->ctx->flags &= ~CODEC_FLAG_TRUNCATED;
++ priv->ctx->flags &= ~AV_CODEC_FLAG_TRUNCATED;
+ // priv->ctx->flags |= CODEC_FLAG_BITEXACT;
+
+ /* Check if there might be B-frames */
+- if(codec->capabilities & CODEC_CAP_DELAY)
++ if(codec->capabilities & AV_CODEC_CAP_DELAY)
+ priv->flags |= HAS_DELAY;
+
+ priv->ctx->opaque = s;
+
+ if(s->ext_data)
+ {
+- priv->extradata = calloc(s->ext_size + FF_INPUT_BUFFER_PADDING_SIZE, 1);
++ priv->extradata = calloc(s->ext_size + AV_INPUT_BUFFER_PADDING_SIZE, 1);
+ memcpy(priv->extradata, s->ext_data, s->ext_size);
+ priv->extradata_size = s->ext_size;
+
+@@ -1816,7 +1816,7 @@
+ codecs[real_num_codecs].info = &codec_infos[i];
+ codecs[real_num_codecs].decoder.name = codecs[real_num_codecs].info->decoder_name;
+
+- if(c->capabilities & CODEC_CAP_DELAY)
++ if(c->capabilities & AV_CODEC_CAP_DELAY)
+ {
+ codecs[real_num_codecs].decoder.flags |= VCODEC_FLAG_DELAY;
+ codecs[real_num_codecs].decoder.skipto = skipto_ffmpeg;
+@@ -2143,8 +2143,7 @@
+ { AV_PIX_FMT_YUVJ420P, GAVL_YUVJ_420_P }, ///< Planar YUV 4:2:0 full scale (jpeg)
+ { AV_PIX_FMT_YUVJ422P, GAVL_YUVJ_422_P }, ///< Planar YUV 4:2:2 full scale (jpeg)
+ { AV_PIX_FMT_YUVJ444P, GAVL_YUVJ_444_P }, ///< Planar YUV 4:4:4 full scale (jpeg)
+- { AV_PIX_FMT_XVMC_MPEG2_MC, GAVL_PIXELFORMAT_NONE }, ///< XVideo Motion Acceleration via common packet passing(xvmc_render.h)
+- { AV_PIX_FMT_XVMC_MPEG2_IDCT, GAVL_PIXELFORMAT_NONE },
++ { AV_PIX_FMT_XVMC, GAVL_PIXELFORMAT_NONE }, ///< XVideo Motion Acceleration via common packet passing(xvmc_render.h)
+ #if LIBAVCODEC_BUILD >= ((51<<16)+(45<<8)+0)
+ { AV_PIX_FMT_YUVA420P, GAVL_YUVA_32 },
+ #endif
================================================================
---- gitweb:
http://git.pld-linux.org/gitweb.cgi/packages/gmerlin-avdecoder.git/commitdiff/e94b61967f963a70b22829b159dc4d4b4013a618
More information about the pld-cvs-commit
mailing list