=== release 1.12.5 === 2018-03-28 14:19:50 +0100 Tim-Philipp Müller * ChangeLog: * NEWS: * RELEASE: * configure.ac: * gst-plugins-base.doap: * meson.build: Release 1.12.5 2018-03-28 14:19:50 +0100 Tim-Philipp Müller * docs/plugins/inspect/plugin-adder.xml: * docs/plugins/inspect/plugin-alsa.xml: * docs/plugins/inspect/plugin-app.xml: * docs/plugins/inspect/plugin-audioconvert.xml: * docs/plugins/inspect/plugin-audiorate.xml: * docs/plugins/inspect/plugin-audioresample.xml: * docs/plugins/inspect/plugin-audiotestsrc.xml: * docs/plugins/inspect/plugin-cdparanoia.xml: * docs/plugins/inspect/plugin-encoding.xml: * docs/plugins/inspect/plugin-gio.xml: * docs/plugins/inspect/plugin-libvisual.xml: * docs/plugins/inspect/plugin-ogg.xml: * docs/plugins/inspect/plugin-opus.xml: * docs/plugins/inspect/plugin-pango.xml: * docs/plugins/inspect/plugin-pbtypes.xml: * docs/plugins/inspect/plugin-playback.xml: * docs/plugins/inspect/plugin-rawparse.xml: * docs/plugins/inspect/plugin-subparse.xml: * docs/plugins/inspect/plugin-tcp.xml: * docs/plugins/inspect/plugin-theora.xml: * docs/plugins/inspect/plugin-typefindfunctions.xml: * docs/plugins/inspect/plugin-videoconvert.xml: * docs/plugins/inspect/plugin-videorate.xml: * docs/plugins/inspect/plugin-videoscale.xml: * docs/plugins/inspect/plugin-videotestsrc.xml: * docs/plugins/inspect/plugin-volume.xml: * docs/plugins/inspect/plugin-vorbis.xml: * docs/plugins/inspect/plugin-ximagesink.xml: * docs/plugins/inspect/plugin-xvimagesink.xml: Update docs 2018-03-17 06:33:38 +0100 Edward Hervey * ext/ogg/gstoggstream.c: oggstream: protect against out-of-bounds read We need at least 17 bytes of data for a valid flac header oss-fuzz #6974 2018-02-28 23:12:39 -0500 Nicolas Dufresne * gst-libs/gst/video/gstvideodecoder.c: videodecoder: Reset QoS time after pushing segment This fixes playbin gapless playback. An ancient QoS time was used and would lead to all frames being dropped. https://bugzilla.gnome.org/show_bug.cgi?id=668995 2018-02-12 16:26:01 +0100 Edward Hervey * gst-libs/gst/tag/id3v2.c: id3v2: re-fix handling of v2.4 extended headers The various id3v2 specs handle the extended header sizes differently (because hey, it wouldn't be fun otherwise). http://id3.org/id3v2.3.0 states: "Where the 'Extended header size', currently 6 or 10 bytes, excludes itself." http://id3.org/id3v2.4.0-structure states: Extended header size 4 * %0xxxxxxx Number of flag bytes $01 Extended Flags $xx Where the 'Extended header size' is the size of the whole extended header, stored as a 32 bit synchsafe integer. An extended header can thus never have a size of fewer than six bytes. So in id3v2.4.0 it's the *whole* extended header size (a-la ISOBMFF atom), whereas in id3v2.3.0 it's the extended header size *excluding* those 4 initial bytes. And for other versions, god knows.. Fixes regression introduced in commit da607005. https://bugzilla.gnome.org/show_bug.cgi?id=792983 2018-02-15 01:14:52 +0100 Mathieu Duponchelle * gst-libs/gst/audio/gstaudiopack.orc: gstaudiopack.orc: pack_u32be_swap: actually swap Fixes: gst-launch-1.0 audiotestsrc ! audio/x-raw, format=U32BE ! \ audioconvert ! autoaudiosink 2018-02-14 14:37:52 -0500 Nicolas Dufresne * docs/libs/gst-plugins-base-libs-docs.sgml: doc: Add per version newly added API indexes 2018-02-14 14:11:47 -0500 Nicolas Dufresne * gst-libs/gst/allocators/gstfdmemory.h: * gst-libs/gst/video/video-color.h: doc: Remove extra . after Since marker 2018-02-14 14:16:14 -0500 Nicolas Dufresne * gst-libs/gst/allocators/gstdmabuf.h: doc: Fix since marker in dmabuf to match a stable release 2018-02-14 14:39:32 -0500 Nicolas Dufresne * gst/playback/gsturidecodebin.c: doc: Remove obsolete Since 0.10.X marks 2018-02-13 08:36:30 +0100 Edward Hervey * ext/vorbis/gstvorbisdec.c: * ext/vorbis/gstvorbisdec.h: vorbisdec: Improve "new headers while initialized" handling If new headers arrive after we are initialized, we need to make sure that they are indeed valid. A vorbis bitstream always begins with three header packets and must be in order. Also some streams have unframed (invalid?) headers that might confuse and disrupt the decoding process. Therefore if ever we see new headers, we accumulate them and once we get a non-header packet we check them to make sure that: * We have at least 3 headers * They are the expected ones (identification, comments and setup) * They are in order * Any other "header" is ignored If those conditions are met, we reset and reconfigure the decoder https://bugzilla.gnome.org/show_bug.cgi?id=784530 2018-01-25 18:39:11 +0000 Tim-Philipp Müller * gst/subparse/gstsubparse.c: subparse: fix pushing out of last chunk if last line has no newline With playbin the last subtitle chunk would not get displayed if the last chunk was missing a newline at the end. This is because streamsynchronizer will hold back the EOS event until the audio and video streams are finished too, so subparse would never forcefully push out the last chunk until the very end when it is too late. We get a STREAM_GROUP_DONE event from streamsynchronizer however, so handle that like EOS and force out any remaining text then. https://bugzilla.gnome.org/show_bug.cgi?id=771853 2018-01-17 14:35:11 +0100 Edward Hervey * ext/theora/gsttheoradec.c: theoradec: Check for valid width/height If width or height are zero ... there's no video :) 2017-10-31 15:04:47 +0530 Ashish Kumar * gst/playback/gstplaybackutils.c: playback-utils: Fix caps leak on failure https://bugzilla.gnome.org/show_bug.cgi?id=789358 2018-01-03 15:31:04 +0100 Edward Hervey * gst/typefind/gsttypefindfunctions.c: typefind: Fix mp3 typefinding with multiple different headers (yes, this has never worked since it was introduced, don't worry) If we want to actually detect layer/channels/samplerate changes, it would be better to: * not reset the various prev_* variables at every iteration. * and actually store the values when they change CID #206079 CID #206080 CID #206081 2017-12-08 10:33:10 +0100 Edward Hervey * ext/ogg/gstoggstream.c: oggdemux: Check encoder name is valid Encoder names should be valid utf-8, if not just ignore them 2017-12-08 08:00:07 +0100 Edward Hervey * gst/typefind/gsttypefindfunctions.c: typefind: Avoid overflow calculation (image/quicktime) The qt typefinder uses guint64 values for offset and size calculation but the typefinder system only supports gint64 values. Make sure we don't end up using potentially overflowing values. 2017-12-08 08:00:07 +0100 Edward Hervey * gst/typefind/gsttypefindfunctions.c: typefind: Avoid overflow calculation The qt typefinder uses guint64 values for offset and size calculation but the typefinder system only supports gint64 values. Make sure we don't end up using potentially overflowing values. 2017-12-15 10:50:44 +0900 Dongil Park * gst/playback/gstplaybin3.c: playbin3: Fix accessing invalid index in GstStream when received select-stream event If select-stream event was send to playbin3 as missing any GstStream of ES type (V or A or TEX) of collection then, playbin will access to invalid address of GstStream due to invalid index limit. This caused SIGSEGV. https://bugzilla.gnome.org/show_bug.cgi?id=791638