summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* Release 1.12.51.12.51.12Tim-Philipp Müller2018-03-286-86/+396
|
* Update docsTim-Philipp Müller2018-03-2829-29/+29
|
* oggstream: protect against out-of-bounds readEdward Hervey2018-03-171-0/+3
| | | | | | We need at least 17 bytes of data for a valid flac header oss-fuzz #6974
* videodecoder: Reset QoS time after pushing segmentNicolas Dufresne2018-03-011-0/+1
| | | | | | | 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
* id3v2: re-fix handling of v2.4 extended headersEdward Hervey2018-03-011-4/+25
| | | | | | | | | | | | | | | | | | | | | | | | | | | | 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
* gstaudiopack.orc: pack_u32be_swap: actually swapMathieu Duponchelle2018-03-011-1/+3
| | | | | | | Fixes: gst-launch-1.0 audiotestsrc ! audio/x-raw, format=U32BE ! \ audioconvert ! autoaudiosink
* doc: Add per version newly added API indexesNicolas Dufresne2018-02-141-0/+44
|
* doc: Remove extra . after Since markerNicolas Dufresne2018-02-142-4/+4
|
* doc: Fix since marker in dmabuf to match a stable releaseNicolas Dufresne2018-02-141-1/+1
|
* doc: Remove obsolete Since 0.10.X marksNicolas Dufresne2018-02-141-10/+0
|
* vorbisdec: Improve "new headers while initialized" handlingEdward Hervey2018-02-132-7/+106
| | | | | | | | | | | | | | | | | | | | | | 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
* subparse: fix pushing out of last chunk if last line has no newlineTim-Philipp Müller2018-01-261-2/+5
| | | | | | | | | | | | | | 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
* theoradec: Check for valid width/heightEdward Hervey2018-01-171-0/+10
| | | | If width or height are zero ... there's no video :)
* playback-utils: Fix caps leak on failureAshish Kumar2018-01-171-0/+4
| | | | https://bugzilla.gnome.org/show_bug.cgi?id=789358
* typefind: Fix mp3 typefinding with multiple different headersEdward Hervey2018-01-171-5/+6
| | | | | | | | | | | | | (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
* oggdemux: Check encoder name is validEdward Hervey2018-01-171-1/+1
| | | | Encoder names should be valid utf-8, if not just ignore them
* typefind: Avoid overflow calculation (image/quicktime)Edward Hervey2018-01-171-0/+2
| | | | | | | 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.
* typefind: Avoid overflow calculationEdward Hervey2018-01-171-0/+4
| | | | | | | 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.
* playbin3: Fix accessing invalid index in GstStream when received ↵Dongil Park2017-12-151-1/+1
| | | | | | | | | | 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
* Release 1.12.41.12.4Sebastian Dröge2017-12-0740-490/+842
|
* Update .po filesSebastian Dröge2017-12-0739-39/+39
|
* typefind: Fix ico out-of-bound readEdward Hervey2017-12-071-1/+1
| | | | | The furthest we go to verify the data is reading a guint32 at offset 18, therefore make sure we can read as much.
* xvimageallocator: Fix build warning errorSeungha Yang2017-12-061-8/+10
| | | | | | Fix unused variable build error if HAVE_XSHM is undefined https://bugzilla.gnome.org/show_bug.cgi?id=790329
* ogmparse: Make sure we set valid string on capsEdward Hervey2017-12-061-4/+8
| | | | | | the fourcc might not contain printable characters, use the convenience macro to turn it into a printable fourcc, like it's done in gstogmparse
* audiodecoder: fix buffer leak in error code pathHavard Graff2017-12-051-1/+3
|
* audio: Add missing G_BEGIN/END_DECLSThibault Saunier2017-12-011-0/+4
|
* urisourcebin: Don't leak mutexesEdward Hervey2017-12-011-0/+2
|
* videotestsrc: Avoid overflow calculationEdward Hervey2017-12-011-3/+3
| | | | | | | n_frames could end up being quite big (potentially up to G_MAXINT64). Which would result in overflowing 64bits when multiplying it by GST_SECOND. Instead move GST_SECOND to the num argument
* oggstream: Ensure enough bytes for fishead header parsingEdward Hervey2017-12-011-0/+5
|
* oggstream: Use proper type for sample calculationEdward Hervey2017-12-011-1/+1
| | | | | | If we are going to return a (potentially) 64bit integer, don't use a 32bit one for calculation, otherwise we could end up exceeding the maximum size of a 32bit int.
* oggstream: More fixes for invalid granuleshiftEdward Hervey2017-12-011-7/+7
| | | | Don't use granuleshift if it wasn't set
* rtcpbuffer: fix left shift overrideEdward Hervey2017-12-011-1/+2
| | | | Needs to be cast to the target type
* videotestsrc: Fix undefined left shiftEdward Hervey2017-12-011-2/+2
| | | | Cast value to target type
* video-converter: Fix undefined left shiftEdward Hervey2017-12-011-1/+1
| | | | Cast value to target type
* oggstream: Fix default granuleshift usageEdward Hervey2017-12-011-2/+2
| | | | | | | For stream mappers that don't set a specific granuleshift, it will have the default value of -1. Protect the code for that and return the granule value as-is
* oggdemux: Protect against invalid granule positionsEdward Hervey2017-12-011-1/+10
| | | | | Only valid values are -1, 0 or positive values. Anything else is most likely corrupted data streams
* codecutils: improve input validation in opus header parsingMathieu Duponchelle2017-12-011-12/+48
| | | | | Invalid input files do not warrant assertions. Instead output error messages and let the error bubble up.
* typefind: Fix out-of-bound read in PNM typefinderEdward Hervey2017-12-011-2/+11
|
* vorbistag: Fix previous commentEdward Hervey2017-12-011-1/+1
| | | | We already NULL-ended the string, don't use the bogus cur_size
* typefindfunctions: fix off-by-one in webvtt typefinderTim-Philipp Müller2017-12-011-1/+1
| | | | We're also checking the byte after the WEBVTT magic.
* riff-media: Handle strf_data being NULLEdward Hervey2017-12-011-2/+7
| | | | Instead of trying to get the size of a NULL buffer :)
* vorbistag: Check whether tag name is validEdward Hervey2017-12-011-1/+1
| | | | | In the same way we check before whether the content of the tag is UTF-8
* oggdemux: Only track time for initialized streamsEdward Hervey2017-12-011-1/+1
| | | | | in push-mode we only can track time (or most operations on streams for that matter) if the underlying GstOggMap was properly initialized.
* oggstream: Add a default GstOggMapEdward Hervey2017-12-011-0/+17
| | | | | | | | Since the default value of a GstOggPad.map.map was 0 ... we would end up using wrong functions from mappers() if the stream wasn't initialized yet. Instead of that, use a default blank/empty first entry.
* ogmparse: Ensure we don't create bogus fractionsEdward Hervey2017-12-011-2/+2
| | | | | The clamping of the fraction denominator was bogus (it needs to be >0)
* oggdemux: Fix chain leak in push modeEdward Hervey2017-12-011-2/+14
| | | | | | | In some corner cases we end up with the building chain not being properly tracked (and therefore not properly freed). Add a FIXME so it can later be fixed, but for now just fix the leak
* vorbistag: Fix leak in error caseEdward Hervey2017-12-011-0/+4
| | | | Don't leak the vendor_string on error cases
* ogg: Don't add tags to empty taglistEdward Hervey2017-12-011-0/+9
|
* rtp: Require gconstpointer instead of gpointer for ↵Sebastian Dröge2017-11-204-4/+4
| | | | gst_rt[c]p_buffer_new_copy_data()
* audiobasesink: Print signed time offset as a signed numberSebastian Dröge2017-11-201-1/+1
|