From e8008436e273060305a0de96a1221140b49e8906 Mon Sep 17 00:00:00 2001 From: Hans de Goede Date: Mon, 26 Aug 2013 18:02:35 +0000 Subject: [PATCH] * Thu Aug 8 2013 Hans de Goede - 1.1.3-2 - Rebuild for ffmpeg-2.0 --- gst-libav-1.1.3-ffmpeg-2.0.patch | 121 +++++++++++++++++++++++++++++++ gstreamer1-libav.spec | 8 +- 2 files changed, 128 insertions(+), 1 deletion(-) create mode 100644 gst-libav-1.1.3-ffmpeg-2.0.patch diff --git a/gst-libav-1.1.3-ffmpeg-2.0.patch b/gst-libav-1.1.3-ffmpeg-2.0.patch new file mode 100644 index 0000000..4dd911d --- /dev/null +++ b/gst-libav-1.1.3-ffmpeg-2.0.patch @@ -0,0 +1,121 @@ +diff -up gst-libav-1.1.3/ext/libav/gstavauddec.c~ gst-libav-1.1.3/ext/libav/gstavauddec.c +--- gst-libav-1.1.3/ext/libav/gstavauddec.c~ 2013-08-26 14:17:14.000000000 +0200 ++++ gst-libav-1.1.3/ext/libav/gstavauddec.c 2013-08-26 14:31:07.574677693 +0200 +@@ -420,7 +420,7 @@ gst_ffmpegauddec_audio_frame (GstFFMpegA + GstBuffer ** outbuf, GstFlowReturn * ret) + { + gint len = -1; +- gint have_data = AVCODEC_MAX_AUDIO_FRAME_SIZE; ++ gint have_data = 0; + AVPacket packet; + AVFrame frame; + +diff -up gst-libav-1.1.3/ext/libav/gstavaudenc.c~ gst-libav-1.1.3/ext/libav/gstavaudenc.c +--- gst-libav-1.1.3/ext/libav/gstavaudenc.c~ 2013-08-26 14:17:14.000000000 +0200 ++++ gst-libav-1.1.3/ext/libav/gstavaudenc.c 2013-08-26 14:25:51.873605774 +0200 +@@ -266,7 +266,6 @@ gst_ffmpegaudenc_set_format (GstAudioEnc + ffmpegaudenc->context->coder_type = 0; + ffmpegaudenc->context->context_model = 0; + ffmpegaudenc->context->scenechange_threshold = 0; +- ffmpegaudenc->context->inter_threshold = 0; + + /* fetch pix_fmt and so on */ + gst_ffmpeg_audioinfo_to_context (info, ffmpegaudenc->context); +diff -up gst-libav-1.1.3/ext/libav/gstavcfg.c~ gst-libav-1.1.3/ext/libav/gstavcfg.c +--- gst-libav-1.1.3/ext/libav/gstavcfg.c~ 2013-08-26 14:17:14.000000000 +0200 ++++ gst-libav-1.1.3/ext/libav/gstavcfg.c 2013-08-26 14:38:33.160510256 +0200 +@@ -171,13 +171,10 @@ gst_ffmpeg_idct_algo_get_type (void) + {FF_IDCT_INT, "JPEG reference Integer", "int"}, + {FF_IDCT_SIMPLE, "Simple", "simple"}, + {FF_IDCT_SIMPLEMMX, "Simple MMX", "simplemmx"}, +- {FF_IDCT_LIBMPEG2MMX, "LIBMPEG2MMX", "libmpeg2mmx"}, + {FF_IDCT_ARM, "ARM", "arm"}, + {FF_IDCT_ALTIVEC, "ALTIVEC", "altivec"}, + {FF_IDCT_SH4, "SH4", "sh4"}, + {FF_IDCT_SIMPLEARM, "SIMPLEARM", "simplearm"}, +- {FF_IDCT_H264, "H264", "h264"}, +- {FF_IDCT_VP3, "VP3", "vp3"}, + {FF_IDCT_IPP, "IPP", "ipp"}, + {FF_IDCT_XVIDMMX, "XVIDMMX", "xvidmmx"}, + {0, NULL, NULL}, +@@ -274,9 +271,6 @@ gst_ffmpeg_flags_get_type (void) + "global-headers"}, + {CODEC_FLAG_AC_PRED, "H263 Advanced Intra Coding / MPEG4 AC prediction", + "aic"}, +- {CODEC_FLAG_CBP_RD, "Rate Distoration Optimization for CBP", "cbp-rd"}, +- {CODEC_FLAG_QP_RD, "Rate Distoration Optimization for QP selection", +- "qp-rd"}, + {CODEC_FLAG_CLOSED_GOP, "Closed GOP", "closedgop"}, + {0, NULL, NULL}, + }; +@@ -564,18 +558,6 @@ gst_ffmpeg_cfg_init (void) + -100, G_MAXINT, 0, G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS); + gst_ffmpeg_add_pspec (pspec, max_key_interval, FALSE, mpeg, NULL); + +- pspec = g_param_spec_int ("luma-elim-threshold", +- "Luma Elimination Threshold", +- "Luma Single Coefficient Elimination Threshold", +- -99, 99, 0, G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS); +- gst_ffmpeg_add_pspec (pspec, config.luma_elim_threshold, FALSE, mpeg, NULL); +- +- pspec = g_param_spec_int ("chroma-elim-threshold", +- "Chroma Elimination Threshold", +- "Chroma Single Coefficient Elimination Threshold", +- -99, 99, 0, G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS); +- gst_ffmpeg_add_pspec (pspec, config.chroma_elim_threshold, FALSE, mpeg, NULL); +- + pspec = g_param_spec_float ("lumi-masking", "Luminance Masking", + "Luminance Masking", -1.0f, 1.0f, 0.0f, + G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS); +diff -up gst-libav-1.1.3/ext/libav/gstavcodecmap.c~ gst-libav-1.1.3/ext/libav/gstavcodecmap.c +--- gst-libav-1.1.3/ext/libav/gstavcodecmap.c~ 2013-08-26 14:17:14.000000000 +0200 ++++ gst-libav-1.1.3/ext/libav/gstavcodecmap.c 2013-08-26 14:24:04.231311059 +0200 +@@ -788,18 +788,9 @@ gst_ffmpeg_codecid_to_caps (enum AVCodec + break; + } + +- /* FIXME: context->sub_id must be filled in during decoding */ + caps = + gst_ff_vid_caps_new (context, NULL, codec_id, encode, + "video/x-pn-realvideo", "rmversion", G_TYPE_INT, version, NULL); +- if (context) { +- gst_caps_set_simple (caps, "format", G_TYPE_INT, context->sub_id, NULL); +- if (context->extradata_size >= 8) { +- gst_caps_set_simple (caps, +- "subformat", G_TYPE_INT, GST_READ_UINT32_BE (context->extradata), +- NULL); +- } +- } + } + break; + +@@ -2861,18 +2852,6 @@ gst_ffmpeg_caps_with_codecid (enum AVCod + } + break; + +- case AV_CODEC_ID_RV10: +- case AV_CODEC_ID_RV20: +- case AV_CODEC_ID_RV30: +- case AV_CODEC_ID_RV40: +- { +- gint format; +- +- if (gst_structure_get_int (str, "format", &format)) +- context->sub_id = format; +- +- break; +- } + case AV_CODEC_ID_COOK: + case AV_CODEC_ID_RA_288: + case AV_CODEC_ID_RA_144: +diff -up gst-libav-1.1.3/ext/libav/gstavvidenc.c~ gst-libav-1.1.3/ext/libav/gstavvidenc.c +--- gst-libav-1.1.3/ext/libav/gstavvidenc.c~ 2013-08-26 14:17:14.000000000 +0200 ++++ gst-libav-1.1.3/ext/libav/gstavvidenc.c 2013-08-26 14:26:26.319740315 +0200 +@@ -332,7 +332,6 @@ gst_ffmpegvidenc_set_format (GstVideoEnc + ffmpegenc->context->coder_type = 0; + ffmpegenc->context->context_model = 0; + ffmpegenc->context->scenechange_threshold = 0; +- ffmpegenc->context->inter_threshold = 0; + + /* and last but not least the pass; CBR, 2-pass, etc */ + ffmpegenc->context->flags |= ffmpegenc->pass; diff --git a/gstreamer1-libav.spec b/gstreamer1-libav.spec index 181fdc4..226e577 100644 --- a/gstreamer1-libav.spec +++ b/gstreamer1-libav.spec @@ -1,6 +1,6 @@ Name: gstreamer1-libav Version: 1.1.3 -Release: 1%{?dist} +Release: 2%{?dist} Summary: GStreamer 1.0 libav-based plug-ins Group: Applications/Multimedia License: LGPLv2+ @@ -8,6 +8,7 @@ URL: http://gstreamer.freedesktop.org/ Source0: http://gstreamer.freedesktop.org/src/gst-libav/gst-libav-%{version}.tar.xz Patch0: gst-ffmpeg-0.10.12-ChangeLog-UTF-8.patch Patch1: gst-libav-1.1.3-comma-in-typename.patch +Patch2: gst-libav-1.1.3-ffmpeg-2.0.patch BuildRequires: gstreamer1-devel >= 1.0.0 BuildRequires: gstreamer1-plugins-base-devel >= 1.0.0 BuildRequires: orc-devel bzip2-devel zlib-devel ffmpeg-devel @@ -30,6 +31,8 @@ This package provides libav-based GStreamer plug-ins. %setup -q -n gst-libav-%{version} %patch0 -p1 %patch1 -p1 +%patch2 -p1 +sed -i 's/CodecID/AVCodecID/g' ext/libav/*.h ext/libav/*.c %build @@ -53,6 +56,9 @@ rm $RPM_BUILD_ROOT%{_libdir}/gstreamer-1.0/libgst*.la %changelog +* Thu Aug 8 2013 Hans de Goede - 1.1.3-2 +- Rebuild for ffmpeg-2.0 + * Thu Aug 8 2013 Hans de Goede - 1.1.3-1 - Rebase to 1.1.3 - Switch back to using system ffmpeg