commit 127020142017af44ef182de2e02970cbee06fc02 Author: MSVSphere Packaging Team Date: Fri Apr 14 13:22:11 2023 +0300 import gstreamer1-plugins-good-1.18.4-6.el9 diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..bfbd0be --- /dev/null +++ b/.gitignore @@ -0,0 +1 @@ +SOURCES/gst-plugins-good-1.18.4.tar.xz diff --git a/.gstreamer1-plugins-good.metadata b/.gstreamer1-plugins-good.metadata new file mode 100644 index 0000000..6bfdded --- /dev/null +++ b/.gstreamer1-plugins-good.metadata @@ -0,0 +1 @@ +aaf8f2aa0bb58cad638b32d0d44a183ed7e7f8b0 SOURCES/gst-plugins-good-1.18.4.tar.xz diff --git a/SOURCES/0001-avidemux-Fix-integer-overflow-resulting-in-heap-corr.patch b/SOURCES/0001-avidemux-Fix-integer-overflow-resulting-in-heap-corr.patch new file mode 100644 index 0000000..e48d6b1 --- /dev/null +++ b/SOURCES/0001-avidemux-Fix-integer-overflow-resulting-in-heap-corr.patch @@ -0,0 +1,65 @@ +From bcfe7befea53869e7836be912ee7efe875877169 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Sebastian=20Dr=C3=B6ge?= +Date: Wed, 18 May 2022 12:00:48 +0300 +Subject: [PATCH 1/4] avidemux: Fix integer overflow resulting in heap + corruption in DIB buffer inversion code + +Check that width*bpp/8 doesn't overflow a guint and also that +height*stride fits into the provided buffer without overflowing. + +Thanks to Adam Doupe for analyzing and reporting the issue. + +CVE: CVE-2022-1921 + +See https://gstreamer.freedesktop.org/security/sa-2022-0001.html + +Fixes https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/1224 + +Part-of: +--- + gst/avi/gstavidemux.c | 17 ++++++++++++++--- + 1 file changed, 14 insertions(+), 3 deletions(-) + +diff --git a/gst/avi/gstavidemux.c b/gst/avi/gstavidemux.c +index 25c97da03e..1c87c668d0 100644 +--- a/gst/avi/gstavidemux.c ++++ b/gst/avi/gstavidemux.c +@@ -4971,8 +4971,8 @@ swap_line (guint8 * d1, guint8 * d2, guint8 * tmp, gint bytes) + static GstBuffer * + gst_avi_demux_invert (GstAviStream * stream, GstBuffer * buf) + { +- gint y, w, h; +- gint bpp, stride; ++ guint y, w, h; ++ guint bpp, stride; + guint8 *tmp = NULL; + GstMapInfo map; + guint32 fourcc; +@@ -4999,12 +4999,23 @@ gst_avi_demux_invert (GstAviStream * stream, GstBuffer * buf) + h = stream->strf.vids->height; + w = stream->strf.vids->width; + bpp = stream->strf.vids->bit_cnt ? stream->strf.vids->bit_cnt : 8; ++ ++ if ((guint64) w * ((guint64) bpp / 8) > G_MAXUINT - 4) { ++ GST_WARNING ("Width x stride overflows"); ++ return buf; ++ } ++ ++ if (w == 0 || h == 0) { ++ GST_WARNING ("Zero width or height"); ++ return buf; ++ } ++ + stride = GST_ROUND_UP_4 (w * (bpp / 8)); + + buf = gst_buffer_make_writable (buf); + + gst_buffer_map (buf, &map, GST_MAP_READWRITE); +- if (map.size < (stride * h)) { ++ if (map.size < ((guint64) stride * (guint64) h)) { + GST_WARNING ("Buffer is smaller than reported Width x Height x Depth"); + gst_buffer_unmap (buf, &map); + return buf; +-- +2.38.1 + diff --git a/SOURCES/0002-matroskademux-Fix-integer-overflows-in-zlib-bz2-etc-.patch b/SOURCES/0002-matroskademux-Fix-integer-overflows-in-zlib-bz2-etc-.patch new file mode 100644 index 0000000..29448aa --- /dev/null +++ b/SOURCES/0002-matroskademux-Fix-integer-overflows-in-zlib-bz2-etc-.patch @@ -0,0 +1,209 @@ +From 22eb3dc56d8cb71af2c2d413ae587cc401704780 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Sebastian=20Dr=C3=B6ge?= +Date: Wed, 18 May 2022 11:24:37 +0300 +Subject: [PATCH 2/4] matroskademux: Fix integer overflows in zlib/bz2/etc + decompression code + +Various variables were of smaller types than needed and there were no +checks for any overflows when doing additions on the sizes. This is all +checked now. + +In addition the size of the decompressed data is limited to 120MB now as +any larger sizes are likely pathological and we can avoid out of memory +situations in many cases like this. + +Also fix a bug where the available output size on the next iteration in +the zlib/bz2 decompression code was provided too large and could +potentially lead to out of bound writes. + +Thanks to Adam Doupe for analyzing and reporting the issue. + +CVE: CVE-2022-1922, CVE-2022-1923, CVE-2022-1924, CVE-2022-1925 + +https://gstreamer.freedesktop.org/security/sa-2022-0002.html + +Fixes https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/1225 + +Part-of: +--- + gst/matroska/matroska-read-common.c | 76 +++++++++++++++++++++++------ + 1 file changed, 61 insertions(+), 15 deletions(-) + +diff --git a/gst/matroska/matroska-read-common.c b/gst/matroska/matroska-read-common.c +index 90d6e38e17..0ee9a787a4 100644 +--- a/gst/matroska/matroska-read-common.c ++++ b/gst/matroska/matroska-read-common.c +@@ -70,6 +70,10 @@ typedef struct + gboolean audio_only; + } TargetTypeContext; + ++/* 120MB as maximum decompressed data size. Anything bigger is likely ++ * pathological, and like this we avoid out of memory situations in many cases ++ */ ++#define MAX_DECOMPRESS_SIZE (120 * 1024 * 1024) + + static gboolean + gst_matroska_decompress_data (GstMatroskaTrackEncoding * enc, +@@ -77,19 +81,23 @@ gst_matroska_decompress_data (GstMatroskaTrackEncoding * enc, + GstMatroskaTrackCompressionAlgorithm algo) + { + guint8 *new_data = NULL; +- guint new_size = 0; ++ gsize new_size = 0; + guint8 *data = *data_out; +- guint size = *size_out; ++ const gsize size = *size_out; + gboolean ret = TRUE; + ++ if (size > G_MAXUINT32) { ++ GST_WARNING ("too large compressed data buffer."); ++ ret = FALSE; ++ goto out; ++ } ++ + if (algo == GST_MATROSKA_TRACK_COMPRESSION_ALGORITHM_ZLIB) { + #ifdef HAVE_ZLIB + /* zlib encoded data */ + z_stream zstream; +- guint orig_size; + int result; + +- orig_size = size; + zstream.zalloc = (alloc_func) 0; + zstream.zfree = (free_func) 0; + zstream.opaque = (voidpf) 0; +@@ -99,8 +107,8 @@ gst_matroska_decompress_data (GstMatroskaTrackEncoding * enc, + goto out; + } + zstream.next_in = (Bytef *) data; +- zstream.avail_in = orig_size; +- new_size = orig_size; ++ zstream.avail_in = size; ++ new_size = size; + new_data = g_malloc (new_size); + zstream.avail_out = new_size; + zstream.next_out = (Bytef *) new_data; +@@ -114,10 +122,18 @@ gst_matroska_decompress_data (GstMatroskaTrackEncoding * enc, + break; + } + ++ if (new_size > G_MAXSIZE - 4096 || new_size + 4096 > MAX_DECOMPRESS_SIZE) { ++ GST_WARNING ("too big decompressed data"); ++ result = Z_MEM_ERROR; ++ break; ++ } ++ + new_size += 4096; + new_data = g_realloc (new_data, new_size); + zstream.next_out = (Bytef *) (new_data + zstream.total_out); +- zstream.avail_out += 4096; ++ /* avail_out is an unsigned int */ ++ g_assert (new_size - zstream.total_out <= G_MAXUINT); ++ zstream.avail_out = new_size - zstream.total_out; + } while (zstream.avail_in > 0); + + if (result != Z_STREAM_END) { +@@ -137,13 +153,11 @@ gst_matroska_decompress_data (GstMatroskaTrackEncoding * enc, + #ifdef HAVE_BZ2 + /* bzip2 encoded data */ + bz_stream bzstream; +- guint orig_size; + int result; + + bzstream.bzalloc = NULL; + bzstream.bzfree = NULL; + bzstream.opaque = NULL; +- orig_size = size; + + if (BZ2_bzDecompressInit (&bzstream, 0, 0) != BZ_OK) { + GST_WARNING ("bzip2 initialization failed."); +@@ -152,8 +166,8 @@ gst_matroska_decompress_data (GstMatroskaTrackEncoding * enc, + } + + bzstream.next_in = (char *) data; +- bzstream.avail_in = orig_size; +- new_size = orig_size; ++ bzstream.avail_in = size; ++ new_size = size; + new_data = g_malloc (new_size); + bzstream.avail_out = new_size; + bzstream.next_out = (char *) new_data; +@@ -167,17 +181,31 @@ gst_matroska_decompress_data (GstMatroskaTrackEncoding * enc, + break; + } + ++ if (new_size > G_MAXSIZE - 4096 || new_size + 4096 > MAX_DECOMPRESS_SIZE) { ++ GST_WARNING ("too big decompressed data"); ++ result = BZ_MEM_ERROR; ++ break; ++ } ++ + new_size += 4096; + new_data = g_realloc (new_data, new_size); +- bzstream.next_out = (char *) (new_data + bzstream.total_out_lo32); +- bzstream.avail_out += 4096; ++ bzstream.next_out = ++ (char *) (new_data + ((guint64) bzstream.total_out_hi32 << 32) + ++ bzstream.total_out_lo32); ++ /* avail_out is an unsigned int */ ++ g_assert (new_size - ((guint64) bzstream.total_out_hi32 << 32) + ++ bzstream.total_out_lo32 <= G_MAXUINT); ++ bzstream.avail_out = ++ new_size - ((guint64) bzstream.total_out_hi32 << 32) + ++ bzstream.total_out_lo32; + } while (bzstream.avail_in > 0); + + if (result != BZ_STREAM_END) { + ret = FALSE; + g_free (new_data); + } else { +- new_size = bzstream.total_out_lo32; ++ new_size = ++ ((guint64) bzstream.total_out_hi32 << 32) + bzstream.total_out_lo32; + } + BZ2_bzDecompressEnd (&bzstream); + +@@ -189,7 +217,13 @@ gst_matroska_decompress_data (GstMatroskaTrackEncoding * enc, + } else if (algo == GST_MATROSKA_TRACK_COMPRESSION_ALGORITHM_LZO1X) { + /* lzo encoded data */ + int result; +- int orig_size, out_size; ++ gint orig_size, out_size; ++ ++ if (size > G_MAXINT) { ++ GST_WARNING ("too large compressed data buffer."); ++ ret = FALSE; ++ goto out; ++ } + + orig_size = size; + out_size = size; +@@ -203,6 +237,11 @@ gst_matroska_decompress_data (GstMatroskaTrackEncoding * enc, + result = lzo1x_decode (new_data, &out_size, data, &orig_size); + + if (orig_size > 0) { ++ if (new_size > G_MAXINT - 4096 || new_size + 4096 > MAX_DECOMPRESS_SIZE) { ++ GST_WARNING ("too big decompressed data"); ++ result = LZO_ERROR; ++ break; ++ } + new_size += 4096; + new_data = g_realloc (new_data, new_size); + } +@@ -221,6 +260,13 @@ gst_matroska_decompress_data (GstMatroskaTrackEncoding * enc, + } else if (algo == GST_MATROSKA_TRACK_COMPRESSION_ALGORITHM_HEADERSTRIP) { + /* header stripped encoded data */ + if (enc->comp_settings_length > 0) { ++ if (size > G_MAXSIZE - enc->comp_settings_length ++ || size + enc->comp_settings_length > MAX_DECOMPRESS_SIZE) { ++ GST_WARNING ("too big decompressed data"); ++ ret = FALSE; ++ goto out; ++ } ++ + new_data = g_malloc (size + enc->comp_settings_length); + new_size = size + enc->comp_settings_length; + +-- +2.38.1 + diff --git a/SOURCES/0003-qtdemux-Fix-integer-overflows-in-zlib-decompression-.patch b/SOURCES/0003-qtdemux-Fix-integer-overflows-in-zlib-decompression-.patch new file mode 100644 index 0000000..2fe1ba6 --- /dev/null +++ b/SOURCES/0003-qtdemux-Fix-integer-overflows-in-zlib-decompression-.patch @@ -0,0 +1,55 @@ +From 24267889a717e1e799037a0f1841d5416eb56e75 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Sebastian=20Dr=C3=B6ge?= +Date: Mon, 30 May 2022 10:15:37 +0300 +Subject: [PATCH 3/4] qtdemux: Fix integer overflows in zlib decompression code + +Various variables were of smaller types than needed and there were no +checks for any overflows when doing additions on the sizes. This is all +checked now. + +In addition the size of the decompressed data is limited to 200MB now as +any larger sizes are likely pathological and we can avoid out of memory +situations in many cases like this. + +Also fix a bug where the available output size on the next iteration in +the zlib decompression code was provided too large and could +potentially lead to out of bound writes. + +Thanks to Adam Doupe for analyzing and reporting the issue. + +CVE: tbd + +https://gstreamer.freedesktop.org/security/sa-2022-0003.html + +Fixes https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/1225 + +Part-of: +--- + gst/isomp4/qtdemux.c | 8 +++++++- + 1 file changed, 7 insertions(+), 1 deletion(-) + +diff --git a/gst/isomp4/qtdemux.c b/gst/isomp4/qtdemux.c +index 182d0bc06f..a9cbbd4cd3 100644 +--- a/gst/isomp4/qtdemux.c ++++ b/gst/isomp4/qtdemux.c +@@ -7611,10 +7611,16 @@ qtdemux_inflate (void *z_buffer, guint z_length, guint * length) + break; + } + ++ if (*length > G_MAXUINT - 4096 || *length > QTDEMUX_MAX_SAMPLE_INDEX_SIZE) { ++ GST_WARNING ("too big decompressed data"); ++ ret = Z_MEM_ERROR; ++ break; ++ } ++ + *length += 4096; + buffer = (guint8 *) g_realloc (buffer, *length); + z.next_out = (Bytef *) (buffer + z.total_out); +- z.avail_out += 4096; ++ z.avail_out += *length - z.total_out; + } while (z.avail_in > 0); + + if (ret != Z_STREAM_END) { +-- +2.38.1 + diff --git a/SOURCES/0004-matroskademux-Avoid-integer-overflow-resulting-in-he.patch b/SOURCES/0004-matroskademux-Avoid-integer-overflow-resulting-in-he.patch new file mode 100644 index 0000000..d4cb20b --- /dev/null +++ b/SOURCES/0004-matroskademux-Avoid-integer-overflow-resulting-in-he.patch @@ -0,0 +1,55 @@ +From c0ac3357342599cc09397c6af0e696770ae94548 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Sebastian=20Dr=C3=B6ge?= +Date: Wed, 18 May 2022 10:23:15 +0300 +Subject: [PATCH 4/4] matroskademux: Avoid integer-overflow resulting in heap + corruption in WavPack header handling code + +blocksize + WAVPACK4_HEADER_SIZE might overflow gsize, which then +results in allocating a very small buffer. Into that buffer blocksize +data is memcpy'd later which then causes out of bound writes and can +potentially lead to anything from crashes to remote code execution. + +Thanks to Adam Doupe for analyzing and reporting the issue. + +CVE: CVE-2022-1920 + +https://gstreamer.freedesktop.org/security/sa-2022-0004.html + +Fixes https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/1226 + +Part-of: +--- + gst/matroska/matroska-demux.c | 10 +++++++++- + 1 file changed, 9 insertions(+), 1 deletion(-) + +diff --git a/gst/matroska/matroska-demux.c b/gst/matroska/matroska-demux.c +index 0e47ee7b5e..b7d009de90 100644 +--- a/gst/matroska/matroska-demux.c ++++ b/gst/matroska/matroska-demux.c +@@ -3893,7 +3893,8 @@ gst_matroska_demux_add_wvpk_header (GstElement * element, + } else { + guint8 *outdata = NULL; + gsize buf_size, size; +- guint32 block_samples, flags, crc, blocksize; ++ guint32 block_samples, flags, crc; ++ gsize blocksize; + GstAdapter *adapter; + + adapter = gst_adapter_new (); +@@ -3934,6 +3935,13 @@ gst_matroska_demux_add_wvpk_header (GstElement * element, + return GST_FLOW_ERROR; + } + ++ if (blocksize > G_MAXSIZE - WAVPACK4_HEADER_SIZE) { ++ GST_ERROR_OBJECT (element, "Too big wavpack buffer"); ++ gst_buffer_unmap (*buf, &map); ++ g_object_unref (adapter); ++ return GST_FLOW_ERROR; ++ } ++ + g_assert (newbuf == NULL); + + newbuf = +-- +2.38.1 + diff --git a/SOURCES/gstreamer-good.appdata.xml b/SOURCES/gstreamer-good.appdata.xml new file mode 100644 index 0000000..dc38b0f --- /dev/null +++ b/SOURCES/gstreamer-good.appdata.xml @@ -0,0 +1,40 @@ + + + + gstreamer-good + CC0-1.0 + GStreamer Multimedia Codecs + Multimedia playback for APE, AVI, DV, FLAC, FLX, Flash, MKV, MP4, Speex, VP8, VP9 and WAV + +

+ This addon includes several good quality codecs that are well tested. + These codecs can be used to encode and decode media files where the + format is not patent encumbered. +

+

+ A codec decodes audio and video for for playback or editing and is also + used for transmission or storage. + Different codecs are used in video-conferencing, streaming media and + video editing applications. +

+
+ + APE + AVI + DV + FLAC + FLX + Flash + MKV + MP4 + Speex + VP8 + VP9 + WAV + + http://gstreamer.freedesktop.org/ + https://bugzilla.gnome.org/enter_bug.cgi?product=GStreamer + http://www.gnome.org/friends/ + http://gstreamer.freedesktop.org/documentation/ + +
diff --git a/SOURCES/gstreamer1-plugins-good-gcc11.patch b/SOURCES/gstreamer1-plugins-good-gcc11.patch new file mode 100644 index 0000000..666cfa0 --- /dev/null +++ b/SOURCES/gstreamer1-plugins-good-gcc11.patch @@ -0,0 +1,74 @@ +diff --git a/gst-plugins-good-1.18.0/ext/qt/gstqsgtexture.cc b/gst-plugins-good-1.18.0/ext/qt/gstqsgtexture.cc +index a05d26e..bfa79cd 100644 +--- a/gst-plugins-good-1.18.0/ext/qt/gstqsgtexture.cc ++++ b/gst-plugins-good-1.18.0/ext/qt/gstqsgtexture.cc +@@ -35,7 +35,7 @@ GST_DEBUG_CATEGORY_STATIC (GST_CAT_DEFAULT); + + GstQSGTexture::GstQSGTexture () + { +- static volatile gsize _debug; ++ static gsize _debug; + + initializeOpenGLFunctions(); + +diff --git a/gst-plugins-good-1.18.0/ext/qt/gstqtglutility.cc b/gst-plugins-good-1.18.0/ext/qt/gstqtglutility.cc +index acb89b6..657bfda 100644 +--- a/gst-plugins-good-1.18.0/ext/qt/gstqtglutility.cc ++++ b/gst-plugins-good-1.18.0/ext/qt/gstqtglutility.cc +@@ -66,7 +66,7 @@ gst_qt_get_gl_display () + { + GstGLDisplay *display = NULL; + QGuiApplication *app = static_cast (QCoreApplication::instance ()); +- static volatile gsize _debug; ++ static gsize _debug; + + g_assert (app != NULL); + +diff --git a/gst-plugins-good-1.18.0/ext/qt/qtglrenderer.cc b/gst-plugins-good-1.18.0/ext/qt/qtglrenderer.cc +index 2ad5601..576171c 100644 +--- a/gst-plugins-good-1.18.0/ext/qt/qtglrenderer.cc ++++ b/gst-plugins-good-1.18.0/ext/qt/qtglrenderer.cc +@@ -22,7 +22,7 @@ GST_DEBUG_CATEGORY_STATIC (GST_CAT_DEFAULT); + static void + init_debug (void) + { +- static volatile gsize _debug; ++ static gsize _debug; + + if (g_once_init_enter (&_debug)) { + GST_DEBUG_CATEGORY_INIT (GST_CAT_DEFAULT, "qtglrenderer", 0, +diff --git a/gst-plugins-good-1.18.0/ext/qt/qtitem.cc b/gst-plugins-good-1.18.0/ext/qt/qtitem.cc +index 49dafc8..caa1ab5 100644 +--- a/gst-plugins-good-1.18.0/ext/qt/qtitem.cc ++++ b/gst-plugins-good-1.18.0/ext/qt/qtitem.cc +@@ -102,7 +102,7 @@ void InitializeSceneGraph::run() + + QtGLVideoItem::QtGLVideoItem() + { +- static volatile gsize _debug; ++ static gsize _debug; + + if (g_once_init_enter (&_debug)) { + GST_DEBUG_CATEGORY_INIT (GST_CAT_DEFAULT, "qtglwidget", 0, "Qt GL Widget"); +diff --git a/gst-plugins-good-1.18.0/ext/qt/qtwindow.cc b/gst-plugins-good-1.18.0/ext/qt/qtwindow.cc +index 9360c33..55a13ab 100644 +--- a/gst-plugins-good-1.18.0/ext/qt/qtwindow.cc ++++ b/gst-plugins-good-1.18.0/ext/qt/qtwindow.cc +@@ -103,7 +103,7 @@ QtGLWindow::QtGLWindow ( QWindow * parent, QQuickWindow *src ) : + QQuickWindow( parent ), source (src) + { + QGuiApplication *app = static_cast (QCoreApplication::instance ()); +- static volatile gsize _debug; ++ static gsize _debug; + + g_assert (app != NULL); + +@@ -152,7 +152,7 @@ QtGLWindow::beforeRendering() + + g_mutex_lock (&this->priv->lock); + +- static volatile gsize once = 0; ++ static gsize once = 0; + if (g_once_init_enter(&once)) { + this->priv->start = QDateTime::currentDateTime().toMSecsSinceEpoch(); + g_once_init_leave(&once,1); diff --git a/SPECS/gstreamer1-plugins-good.spec b/SPECS/gstreamer1-plugins-good.spec new file mode 100644 index 0000000..56925ab --- /dev/null +++ b/SPECS/gstreamer1-plugins-good.spec @@ -0,0 +1,740 @@ +%global majorminor 1.0 + +# Only build extras on fedora +%if 0%{?fedora} +%bcond_without extras +%bcond_without nasm +%else +%bcond_with extras +%bcond_with nasm +%endif + +%bcond_without qt + +#global gitrel 140 +#global gitcommit 9865730cfa5b3a8b2560d082e7e56b350042d3d2 +#global shortcommit %(c=%{gitcommit}; echo ${c:0:5}) + +Name: gstreamer1-plugins-good +Version: 1.18.4 +Release: 6%{?gitcommit:.git%{shortcommit}}%{?dist} +Summary: GStreamer plugins with good code and licensing + +License: LGPLv2+ +URL: http://gstreamer.freedesktop.org/ + +%if 0%{?gitrel} +# git clone git://anogit.freedesktop.org/gstreamer/gst-plugins-good +# cd gst-plugins-good; git reset --hard %{gitcommit}; ./autogen.sh; make; make distcheck +Source0: gst-plugins-good-%{version}.tar.xz +%else +Source0: http://gstreamer.freedesktop.org/src/gst-plugins-good/gst-plugins-good-%{version}.tar.xz +%endif +Patch0: %{name}-gcc11.patch + +Patch1: 0001-avidemux-Fix-integer-overflow-resulting-in-heap-corr.patch +Patch2: 0002-matroskademux-Fix-integer-overflows-in-zlib-bz2-etc-.patch +Patch3: 0003-qtdemux-Fix-integer-overflows-in-zlib-decompression-.patch +Patch4: 0004-matroskademux-Avoid-integer-overflow-resulting-in-he.patch + +# Register as an AppStream component to be visible in the software center +# NOTE: It would be *awesome* if this file was maintained by the upstream +# project, translated and installed into the right place during `make install`. +# See http://www.freedesktop.org/software/appstream/docs/ for more details. +Source1: gstreamer-good.appdata.xml + +BuildRequires: meson >= 0.48.0 +BuildRequires: gcc +BuildRequires: gcc-c++ +BuildRequires: gstreamer1-devel >= %{version} +BuildRequires: gstreamer1-plugins-base-devel >= %{version} + +BuildRequires: cairo-devel >= 1.10.0 +BuildRequires: cairo-gobject-devel >= 1.10.0 +BuildRequires: flac-devel >= 1.1.4 +BuildRequires: gdk-pixbuf2-devel +BuildRequires: libjpeg-devel +BuildRequires: libpng-devel >= 1.2.0 +BuildRequires: libshout-devel +BuildRequires: libsoup-devel +BuildRequires: libX11-devel +BuildRequires: libXext-devel +BuildRequires: libXdamage-devel +BuildRequires: libXfixes-devel +BuildRequires: orc-devel +BuildRequires: pulseaudio-libs-devel +BuildRequires: speex-devel +BuildRequires: taglib-devel +BuildRequires: wavpack-devel +BuildRequires: libv4l-devel +BuildRequires: libvpx-devel >= 1.1.0 +BuildRequires: gtk3-devel >= 3.4 +BuildRequires: mesa-libGL-devel +BuildRequires: mesa-libGLES-devel +BuildRequires: mesa-libGLU-devel +BuildRequires: mesa-libEGL-devel +BuildRequires: lame-devel +BuildRequires: mpg123-devel +BuildRequires: twolame-devel +%if %{with nasm} +BuildRequires: nasm +%endif +BuildRequires: libgudev-devel + +# extras +%if %{with extras} +BuildRequires: jack-audio-connection-kit-devel +%ifnarch s390 s390x +BuildRequires: libavc1394-devel +BuildRequires: libdv-devel +BuildRequires: libiec61883-devel +BuildRequires: libraw1394-devel +%endif +%endif + +# Obsoletes/Provides moved from plugins-bad-free +Obsoletes: gstreamer1-plugin-mpg123 < 1.13.1 +Provides: gstreamer1-plugin-mpg123 = %{version}-%{release} + +%description +GStreamer is a streaming media framework, based on graphs of filters which +operate on media data. Applications using this library can do anything +from real-time sound processing to playing videos, and just about anything +else media-related. Its plugin-based architecture means that new data +types or processing capabilities can be added simply by installing new +plugins. + +GStreamer Good Plugins is a collection of well-supported plugins of +good quality and under the LGPL license. + + +%package gtk +Summary: GStreamer "good" plugins gtk plugin +Requires: %{name}%{?_isa} = %{version}-%{release} +# handle upgrade path +Obsoletes: gstreamer1-plugins-bad-free-gtk < 1.13.1-2 +Provides: gstreamer1-plugins-bad-free-gtk = %{version}-%{release} +Provides: gstreamer1-plugins-bad-free-gtk%{?_isa} = %{version}-%{release} + +%description gtk +GStreamer is a streaming media framework, based on graphs of elements which +operate on media data. + +GStreamer Good Plugins is a collection of well-supported plugins of +good quality and under the LGPL license. + +This package (%{name}-gtk) contains the gtksink output plugin. + +%if %{with qt} +%package qt +Summary: GStreamer "good" plugins qt qml plugin +Requires: %{name}%{?_isa} = %{version}-%{release} + +BuildRequires: pkgconfig(Qt5Gui) +BuildRequires: pkgconfig(Qt5Qml) +BuildRequires: pkgconfig(Qt5Quick) +BuildRequires: pkgconfig(Qt5X11Extras) +BuildRequires: pkgconfig(Qt5WaylandClient) + +Supplements: (gstreamer1-plugins-good and qt5-qtdeclarative) + +%description qt +GStreamer is a streaming media framework, based on graphs of elements which +operate on media data. + +GStreamer Good Plugins is a collection of well-supported plugins of +good quality and under the LGPL license. + +This package (%{name}-qt) contains the qtsink output plugin. +%endif + +%if %{with extras} +%package extras +Summary: Extra GStreamer plugins with good code and licensing +Requires: %{name}%{?_isa} = %{version}-%{release} + + +%description extras +GStreamer is a streaming media framework, based on graphs of filters +which operate on media data. + +GStreamer Good Plugins is a collection of well-supported plugins of +good quality and under the LGPL license. + +%{name}-extras contains extra "good" plugins +which are not used very much and require additional libraries +to be installed. +%endif + + +%prep +%setup -q -n gst-plugins-good-%{version} +%patch0 -p2 +%patch1 -p1 +%patch2 -p1 +%patch3 -p1 +%patch4 -p1 + +%build +%meson \ + -D package-name='Fedora GStreamer-plugins-good package' \ + -D package-origin='http://download.fedoraproject.org' \ + -D doc=disabled \ + -D asm=%{?with_nasm:enabled}%{!?with_nasm:disabled} \ + -D gtk_doc=disabled \ + -D orc=enabled \ + -D monoscope=disabled \ + -D aalib=disabled \ + -D libcaca=disabled \ + -D rpicamsrc=disabled \ + -D jack=%{?with_extras:enabled}%{!?with_extras:disabled} \ +%ifarch s390 s390x + -D dv=disabled -D dv1394=disabled \ +%else + -D dv=%{?with_extras:enabled}%{!?with_extras:disabled} \ + -D dv1394=%{?with_extras:enabled}%{!?with_extras:disabled} \ +%endif + +%meson_build + +%install +%meson_install + +install -p -D %{SOURCE1} %{buildroot}%{_metainfodir}/gstreamer-good.appdata.xml + +find $RPM_BUILD_ROOT -name '*.la' -exec rm -fv {} ';' + +%find_lang gst-plugins-good-%{majorminor} + +%files -f gst-plugins-good-%{majorminor}.lang +%license COPYING +%doc AUTHORS README REQUIREMENTS +%{_metainfodir}/gstreamer-good.appdata.xml +%if 0 +%doc %{_datadir}/gtk-doc/html/gst-plugins-good-plugins-%{majorminor} +%endif + +# presets +%dir %{_datadir}/gstreamer-%{majorminor}/presets/ +%{_datadir}/gstreamer-%{majorminor}/presets/GstVP8Enc.prs +%{_datadir}/gstreamer-%{majorminor}/presets/GstIirEqualizer10Bands.prs +%{_datadir}/gstreamer-%{majorminor}/presets/GstIirEqualizer3Bands.prs +%{_datadir}/gstreamer-%{majorminor}/presets/GstQTMux.prs + +# non-core plugins without external dependencies +%{_libdir}/gstreamer-%{majorminor}/libgstalaw.so +%{_libdir}/gstreamer-%{majorminor}/libgstalphacolor.so +%{_libdir}/gstreamer-%{majorminor}/libgstalpha.so +%{_libdir}/gstreamer-%{majorminor}/libgstapetag.so +%{_libdir}/gstreamer-%{majorminor}/libgstaudiofx.so +%{_libdir}/gstreamer-%{majorminor}/libgstaudioparsers.so +%{_libdir}/gstreamer-%{majorminor}/libgstauparse.so +%{_libdir}/gstreamer-%{majorminor}/libgstautodetect.so +%{_libdir}/gstreamer-%{majorminor}/libgstavi.so +%{_libdir}/gstreamer-%{majorminor}/libgstcutter.so +%{_libdir}/gstreamer-%{majorminor}/libgstdebug.so +%{_libdir}/gstreamer-%{majorminor}/libgstdeinterlace.so +%{_libdir}/gstreamer-%{majorminor}/libgstdtmf.so +%{_libdir}/gstreamer-%{majorminor}/libgsteffectv.so +%{_libdir}/gstreamer-%{majorminor}/libgstequalizer.so +%{_libdir}/gstreamer-%{majorminor}/libgstflv.so +%{_libdir}/gstreamer-%{majorminor}/libgstflxdec.so +%{_libdir}/gstreamer-%{majorminor}/libgstgoom2k1.so +%{_libdir}/gstreamer-%{majorminor}/libgstgoom.so +%{_libdir}/gstreamer-%{majorminor}/libgsticydemux.so +%{_libdir}/gstreamer-%{majorminor}/libgstid3demux.so +%{_libdir}/gstreamer-%{majorminor}/libgstimagefreeze.so +%{_libdir}/gstreamer-%{majorminor}/libgstinterleave.so +%{_libdir}/gstreamer-%{majorminor}/libgstisomp4.so +%{_libdir}/gstreamer-%{majorminor}/libgstlevel.so +%{_libdir}/gstreamer-%{majorminor}/libgstmatroska.so +%{_libdir}/gstreamer-%{majorminor}/libgstmulaw.so +%{_libdir}/gstreamer-%{majorminor}/libgstmultifile.so +%{_libdir}/gstreamer-%{majorminor}/libgstmultipart.so +%{_libdir}/gstreamer-%{majorminor}/libgstnavigationtest.so +%{_libdir}/gstreamer-%{majorminor}/libgstoss4.so +%{_libdir}/gstreamer-%{majorminor}/libgstreplaygain.so +%{_libdir}/gstreamer-%{majorminor}/libgstrtp.so +%{_libdir}/gstreamer-%{majorminor}/libgstrtsp.so +%{_libdir}/gstreamer-%{majorminor}/libgstshapewipe.so +%{_libdir}/gstreamer-%{majorminor}/libgstsmpte.so +%{_libdir}/gstreamer-%{majorminor}/libgstspectrum.so +%{_libdir}/gstreamer-%{majorminor}/libgstudp.so +%{_libdir}/gstreamer-%{majorminor}/libgstvideobox.so +%{_libdir}/gstreamer-%{majorminor}/libgstvideocrop.so +%{_libdir}/gstreamer-%{majorminor}/libgstvideofilter.so +%{_libdir}/gstreamer-%{majorminor}/libgstvideomixer.so +%{_libdir}/gstreamer-%{majorminor}/libgstwavenc.so +%{_libdir}/gstreamer-%{majorminor}/libgstwavparse.so +%{_libdir}/gstreamer-%{majorminor}/libgstximagesrc.so +%{_libdir}/gstreamer-%{majorminor}/libgsty4menc.so + +# gstreamer-plugins with external dependencies but in the main package +%{_libdir}/gstreamer-%{majorminor}/libgstcairo.so +%{_libdir}/gstreamer-%{majorminor}/libgstflac.so +%{_libdir}/gstreamer-%{majorminor}/libgstgdkpixbuf.so +%{_libdir}/gstreamer-%{majorminor}/libgstjpeg.so +%{_libdir}/gstreamer-%{majorminor}/libgstossaudio.so +%{_libdir}/gstreamer-%{majorminor}/libgstpng.so +%{_libdir}/gstreamer-%{majorminor}/libgstpulseaudio.so +%{_libdir}/gstreamer-%{majorminor}/libgstrtpmanager.so +%{_libdir}/gstreamer-%{majorminor}/libgstshout2.so +%{_libdir}/gstreamer-%{majorminor}/libgstsoup.so +%{_libdir}/gstreamer-%{majorminor}/libgstspeex.so +%{_libdir}/gstreamer-%{majorminor}/libgsttaglib.so +%{_libdir}/gstreamer-%{majorminor}/libgstvideo4linux2.so +%{_libdir}/gstreamer-%{majorminor}/libgstvpx.so +%{_libdir}/gstreamer-%{majorminor}/libgstwavpack.so +%{_libdir}/gstreamer-%{majorminor}/libgstlame.so +%{_libdir}/gstreamer-%{majorminor}/libgstmpg123.so +%{_libdir}/gstreamer-%{majorminor}/libgsttwolame.so + + +%files gtk +# Plugins with external dependencies +%{_libdir}/gstreamer-%{majorminor}/libgstgtk.so + +%files qt +%{_libdir}/gstreamer-%{majorminor}/libgstqmlgl.so + +%if %{with extras} +%files extras +# Plugins with external dependencies +%{_libdir}/gstreamer-%{majorminor}/libgstjack.so +%ifnarch s390 s390x +%{_libdir}/gstreamer-%{majorminor}/libgstdv.so +%{_libdir}/gstreamer-%{majorminor}/libgst1394.so +%endif +%endif + + +%changelog +* Fri Apr 14 2023 MSVSphere Packaging Team - 1.18.4-6 +- Rebuilt for MSVSphere 9.2 beta + +* Fri Nov 11 2022 Wim Taymans - 1.18.4-6 +- Fixes for CVE-2022-1920, CVE-2022-1921, CVE-2022-1922, CVE-2022-1923, + CVE-2022-1924, CVE-2022-1925, CVE-2022-2122 + Resolves: rhbz#2131034, rhbz#2131039, rhbz#2131045, rhbz#2131049, + rhbz#2131054, rhbz#2131060, rhbz#2131064 + +* Mon Aug 09 2021 Mohan Boddu - 1.18.4-5 +- Rebuilt for IMA sigs, glibc 2.34, aarch64 flags + Related: rhbz#1991688 + +* Tue Jun 22 2021 Mohan Boddu - 1.18.4-4 +- Rebuilt for RHEL 9 BETA for openssl 3.0 + Related: rhbz#1971065 + +* Fri May 14 2021 Wim Taymans - 1.18.4-3 +- Move libdv and friends to extras +- Resolves: rhbz#1960634 + +* Fri Apr 16 2021 Mohan Boddu - 1.18.4-2 +- Rebuilt for RHEL 9 BETA on Apr 15th 2021. Related: rhbz#1947937 + +* Tue Mar 16 2021 Wim Taymans - 1.18.4-1 +- Update to 1.18.4 + +* Tue Feb 23 2021 Wim Taymans - 1.18.2-3 +- use only nasm on fedora + +* Tue Jan 26 2021 Fedora Release Engineering - 1.18.2-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild + +* Thu Dec 10 2020 Wim Taymans - 1.18.2-1 +- Update to 1.18.2 + +* Fri Oct 30 2020 Wim Taymans - 1.18.1-1 +- Update to 1.18.1 + +* Wed Oct 28 2020 Jeff Law - 1.18.0-2 +- Fix bogus use of volatile diagnosed by gcc-11 + +* Tue Sep 8 2020 Wim Taymans - 1.18.0-1 +- Update to 1.18.0 + +* Fri Aug 21 2020 Wim Taymans - 1.17.90-1 +- Update to 1.17.90 +- disable rpicamsrc + +* Tue Jul 28 2020 Fedora Release Engineering - 1.17.2-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild + +* Mon Jul 6 2020 Wim Taymans - 1.17.2-1 +- Update to 1.17.2 + +* Mon Jun 22 2020 Wim Taymans - 1.17.1-1 +- Update to 1.17.1 +- disable dv and 1394 on s390 + +* Wed Jan 29 2020 Fedora Release Engineering - 1.16.2-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild + +* Thu Jan 2 2020 Wim Taymans - 1.16.2-1 +- Update to 1.16.2 + +* Fri Sep 27 2019 Wim Taymans - 1.16.1-2 +- Enable cairo plugins. (rhbz#1737254) + +* Tue Sep 24 2019 Wim Taymans - 1.16.1-1 +- Update to 1.16.1 + +* Thu Jul 25 2019 Fedora Release Engineering - 1.16.0-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild + +* Tue Apr 23 2019 Wim Taymans - 1.16.0-1 +- Update to 1.16.0 + +* Thu Mar 07 2019 Rex Dieter - 1.15.2-3 +- -qt: fix Supplements + +* Thu Mar 07 2019 Rex Dieter - 1.15.2-2 +- -qt subpkg + +* Fri Mar 01 2019 Wim Taymans - 1.15.2-1 +- Update to 1.15.2 + +* Tue Feb 05 2019 Björn Esser - 1.15.1-3 +- rebuilt (libvpx) + +* Fri Feb 01 2019 Fedora Release Engineering - 1.15.1-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild + +* Fri Jan 25 2019 Wim Taymans - 1.15.1-1 +- Update to 1.15.1 + +* Wed Oct 03 2018 Wim Taymans - 1.14.4-1 +- Update to 1.14.4 + +* Tue Sep 18 2018 Wim Taymans - 1.14.3-1 +- Update to 1.14.3 + +* Mon Jul 23 2018 Wim Taymans - 1.14.2-1 +- Update to 1.14.2 + +* Fri Jul 20 2018 Wim Taymans - 1.14.1-5 +- Add c++ buildrequires +- Only build extras on fedora + +* Fri Jul 13 2018 Fedora Release Engineering - 1.14.1-4 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild + +* Fri May 25 2018 Wim Taymans - 1.14.1-3 +- Rebuild to correct Provides (#1581325) +- Remove check line that was added for testing + +* Tue May 22 2018 Rex Dieter - 1.14.1-2 +- use %%make_build %%make_install %%_metainfodir +- %%build: --disable-qt (for now) + +* Mon May 21 2018 Wim Taymans - 1.14.1-1 +- Update to 1.14.1 + +* Fri Mar 23 2018 Iryna Shcherbina - 1.14.0-2 +- Update Python 2 dependency declarations to new packaging standards + (See https://fedoraproject.org/wiki/FinalizingFedoraSwitchtoPython3) + +* Tue Mar 20 2018 Wim Taymans - 1.14.0-1 +- Update to 1.14.0 + +* Wed Mar 14 2018 Wim Taymans - 1.13.91-1 +- Update to 1.13.91 + +* Mon Mar 05 2018 Wim Taymans - 1.13.90-1 +- Update to 1.13.90 + +* Tue Feb 27 2018 Rex Dieter - 1.13.1-3 +- -gtk: Obsoletes/Provides: gstreamer1-plugins-bad-free-gtk +- Obsoletes/Provides: gstreamer1-plugin-mpg123 + +* Tue Feb 27 2018 Wim Taymans - 1.13.1-2 +- The gtk plugin was moved from -bad, make a new subpackage for it. +- the mp3 plugins were moved from -ugly, add BuildRequires. +- build requires GL now for gtkglsink + +* Tue Feb 27 2018 Wim Taymans - 1.13.1-1 +- Update to 1.13.1 + +* Wed Feb 07 2018 Fedora Release Engineering - 1.12.4-4 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild + +* Sat Jan 27 2018 Rex Dieter - 1.12.4-3 +- rebuild (libvpx) + +* Fri Jan 26 2018 Tom Callaway - 1.12.4-2 +- rebuild for new libvpx + +* Mon Dec 11 2017 Wim Taymans - 1.12.4-1 +- Update to 1.12.4 + +* Fri Oct 13 2017 Troy Dawson - 1.12.3-2 +- Cleanup spec file conditionals + +* Tue Sep 19 2017 Wim Taymans - 1.12.3-1 +- Update to 1.12.3 + +* Wed Aug 02 2017 Fedora Release Engineering - 1.12.2-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild + +* Wed Jul 26 2017 Fedora Release Engineering - 1.12.2-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild + +* Mon Jul 17 2017 Wim Taymans - 1.12.2-1 +- Update to 1.12.2 + +* Tue Jun 20 2017 Wim Taymans - 1.12.1-1 +- Update to 1.12.1 + +* Wed May 10 2017 Wim Taymans - 1.12.0-1 +- Update to 1.12.0 + +* Fri Apr 28 2017 Wim Taymans - 1.11.91-1 +- Update to 1.11.91 + +* Tue Apr 11 2017 Wim Taymans - 1.11.90-1 +- Update to 1.11.90 +- Update plugin names + +* Fri Feb 24 2017 Wim Taymans - 1.11.2-1 +- Update to 1.11.2 + +* Fri Feb 10 2017 Fedora Release Engineering - 1.11.1-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild + +* Fri Jan 13 2017 Wim Taymans - 1.11.1-1 +- Update to 1.11.1 + +* Mon Dec 05 2016 Wim Taymans - 1.10.2-1 +- Update to 1.10.2 +- Remove obsolete patches + +* Mon Nov 28 2016 Wim Taymans - 1.10.1-2 +- Add fix for gstreamer FLIC decoder vulnerability + +* Mon Nov 28 2016 Wim Taymans - 1.10.1-1 +- Update to 1.10.1 + +* Thu Nov 03 2016 Wim Taymans - 1.10.0-1 +- Update to 1.10.0 + +* Sat Oct 01 2016 Wim Taymans - 1.9.90-1 +- Update to 1.9.90 +- add QTMux presets + +* Thu Sep 01 2016 Wim Taymans - 1.9.2-1 +- Update to 1.9.2 + +* Fri Jul 22 2016 Tom Callaway - 1.9.1-2 +- rebuild for new libvpx + +* Thu Jul 07 2016 Wim Taymans - 1.9.1-1 +- Update to 1.9.1 + +* Thu Jun 09 2016 Wim Taymans - 1.8.2-1 +- Update to 1.8.2 + +* Thu Apr 21 2016 Wim Taymans - 1.8.1-1 +- Update to 1.8.1 + +* Thu Mar 24 2016 Wim Taymans - 1.8.0-1 +- Update to 1.8.0 + +* Wed Mar 16 2016 Wim Taymans - 1.7.91-1 +- Update to 1.7.91 + +* Wed Mar 02 2016 Wim Taymans - 1.7.90-1 +- Update to 1.7.90 + +* Fri Feb 19 2016 Wim Taymans - 1.7.2-1 +- Update to 1.7.2 + +* Fri Feb 05 2016 Ralf Corsépius - 1.7.1-3 +- Append --disable-fatal-warnings to %%configure to prevent + building from aborting for negligible warnings (Fix F24FTBFS) +- Append --disable-silent-rules to %%configure to make + building verbose. +- Don't remove buildroot before installing. + +* Wed Feb 03 2016 Fedora Release Engineering - 1.7.1-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild + +* Tue Jan 5 2016 Wim Taymans - 1.7.1-1 +- Update to 1.7.1 + +* Tue Dec 15 2015 Wim Taymans - 1.6.2-1 +- Update to 1.6.2 + +* Tue Dec 1 2015 Tom Callaway - 1.6.1-2 +- rebuild for libvpx 1.5.0 + +* Mon Nov 2 2015 Wim Taymans - 1.6.1-1 +- Update to 1.6.1 + +* Sat Sep 26 2015 Kalev Lember - 1.6.0-1 +- Update to 1.6.0 +- Use license macro for COPYING + +* Mon Sep 21 2015 Wim Taymans - 1.5.91-1 +- Update to 1.5.91 + +* Fri Sep 18 2015 Richard Hughes - 1.5.90-2 +- Add optional data to AppStream metadata. + +* Wed Aug 19 2015 Wim Taymans - 1.5.90-1 +- Update to 1.5.90 + +* Sat Jul 18 2015 Francesco Frassinelli - 1.5.2-2 +- Add missing dependencies required by ximagesrc. (#1136317) + +* Thu Jun 25 2015 Wim Taymans - 1.5.2-1 +- Update to 1.5.2 + +* Wed Jun 17 2015 Fedora Release Engineering - 1.5.1-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild + +* Mon Jun 8 2015 Wim Taymans - 1.5.1-1 +- Update to 1.5.1 +- Remove obsolete patches + +* Sat May 02 2015 Kalev Lember - 1.4.5-5 +- Rebuilt for GCC 5 C++11 ABI change + +* Mon Apr 6 2015 Tom Callaway - 1.4.5-4 +- rebuild against libvpx 1.4.0 + +* Wed Mar 25 2015 Richard Hughes - 1.4.5-3 +- Register as an AppStream component. + +* Fri Mar 06 2015 David Woodhouse - 1.4.5-2 +- Don't force RTP jitterbuffer clock-rate (#1199579) + +* Wed Jan 28 2015 Bastien Nocera - 1.4.5-1 +- Update to 1.4.5 + +* Fri Nov 14 2014 Kalev Lember - 1.4.4-1 +- Update to 1.4.4 + +* Mon Sep 22 2014 Wim Taymans - 1.4.2-1 +- Update to 1.4.2. +- Drop old patches + +* Fri Aug 29 2014 Hans de Goede - 1.4.1-2 +- Fix v4l2-src not working with some v4l2 devices (bgo#735660) + +* Fri Aug 29 2014 Wim Taymans - 1.4.1-1 +- Update to 1.4.1. + +* Sat Aug 16 2014 Fedora Release Engineering - 1.4.0-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_22_Mass_Rebuild + +* Tue Jul 22 2014 Wim Taymans - 1.4.0-1 +- Update to 1.4.0. + +* Fri Jul 11 2014 Wim Taymans - 1.3.91-1 +- Update to 1.3.91. + +* Tue Jun 17 2014 Wim Taymans - 1.2.4-1 +- Update to 1.2.4. +- Drop old patches + +* Sat Jun 07 2014 Fedora Release Engineering - 1.2.3-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild + +* Thu Mar 13 2014 Wim Taymans - 1.2.3-2 +- Rebuild for libvpx ABI break. See #1068664 +- fix doc build + +* Mon Feb 10 2014 Brian Pepple - 1.2.3-1 +- Update to 1.2.3. + +* Tue Jan 14 2014 Wim Taymans - 1.2.2-2 +- Disable the cairo plugin, we don't package it. + +* Fri Dec 27 2013 Brian Pepple - 1.2.2-1 +- Update to 1.2.2. + +* Mon Nov 11 2013 Brian Pepple - 1.2.1-1 +- Update to 1.2.1. + +* Tue Sep 24 2013 Brian Pepple - 1.2.0-1 +- Update to 1.2.0. + +* Thu Sep 19 2013 Brian Pepple - 1.1.90-1 +- Update to 1.1.90. + +* Wed Aug 28 2013 Brian Pepple - 1.1.4-1 +- Update to 1.1.4. + +* Mon Jul 29 2013 Brian Pepple - 1.1.3-1 +- Update to 1.1.3. + +* Fri Jul 12 2013 Brian Pepple - 1.1.2-1 +- Update to 1.1.2. + +* Fri Apr 26 2013 Brian Pepple - 1.0.7-1 +- Update to 1.0.7. + +* Sun Mar 24 2013 Brian Pepple - 1.0.6-1 +- Update to 1.0.6. +- Drop BR on PyXML. + +* Wed Feb 6 2013 Peter Robinson 1.0.5-3 +- Add gdk-pixbuf2-devel build dep. It was pulled in by something else for gst 0.10 + +* Fri Jan 18 2013 Adam Tkac - 1.0.5-2 +- rebuild due to "jpeg8-ABI" feature drop + +* Tue Jan 8 2013 Brian Pepple - 1.0.5-1 +- Update to 1.0.5 + +* Wed Dec 19 2012 Brian Pepple - 1.0.4-1 +- Update to 1.0.4 + +* Wed Nov 21 2012 Brian Pepple - 1.0.3-1 +- Update to 1.0.3 +- Drop speexdec patch. Fixed upstream. +- Drop vp8 patches. Fixed upstream. + +* Wed Nov 7 2012 Debarshi Ray - 1.0.2-3 +- Fixes for GNOME #687464 and #687793 + +* Fri Nov 2 2012 Debarshi Ray - 1.0.2-2 +- Fixes for vp8dec including GNOME #687376 + +* Thu Oct 25 2012 Brian Pepple - 1.0.2-1 +- Update to 1.0.2 +- Drop upstream patches since they are included in latest release. + +* Wed Oct 24 2012 Debarshi Ray - 1.0.1-2 +- Fix target-bitrate for vp8enc + +* Sun Oct 7 2012 Brian Pepple - 1.0.1-1 +- Update to 1.0.1 + +* Tue Oct 2 2012 Brian Pepple - 1.0.0-3 +- Add required version for vpx-devel. (#862157) + +* Mon Oct 1 2012 Peter Robinson - 1.0.0-2 +- Enable verbose build + +* Mon Sep 24 2012 Brian Pepple - 1.0.0-1 +- Update to 1.0.0. + +* Fri Sep 21 2012 Brian Pepple - 0.11.99-2 +- Add vp8 plugin to package from gst1-plugins-bad. (#859505) + +* Wed Sep 19 2012 Brian Pepple - 0.11.99-1 +- Update to 0.11.99 + +* Fri Sep 14 2012 Brian Pepple - 0.11.94-1 +- Update to 0.11.94. +- Drop v4l2-buffer patch. Fixed upstream. + +* Wed Aug 15 2012 Brian Pepple - 0.11.93-1 +- Update to 0.11.93. +- Add batch to fix build with recent kernels, the v4l2_buffer input field was removed. +- Use %%global instead of %%define. + +* Wed Jul 18 2012 Brian Pepple - 0.11.92-1 +- Initial Fedora spec.