Jan Schmidt [Wed, 8 Mar 2017 14:40:06 +0000 (01:40 +1100)]
urisourcebin: Shrink queue2 max-size-time buffering
The expanded 4 second buffering was making radio streams that are
being delivered at real-time speeds too slow. We might need
a better plan for matching the queue2 size to incoming bitrate
in the absence of tag information or timestamping.
In uridecodebin, it used tags on the output of decodebin to
adjust the queue2 buffering, but urisourcebin doesn't have that
view - decodebin is downstream from us.
Sebastian Dröge [Wed, 8 Mar 2017 13:47:52 +0000 (15:47 +0200)]
videotimecode: Unref GDateTime in error cases
Sebastian Dröge [Tue, 7 Mar 2017 12:59:36 +0000 (14:59 +0200)]
playbin3/urisourcebin: Enable buffering by default
This only has effect on network streams in these elements, and by
enabling it by default we get the same behaviour as in playbin2.
Tim-Philipp Müller [Tue, 7 Mar 2017 00:25:03 +0000 (00:25 +0000)]
tools: gst-play: improve verbose output of property notifications
Use new message notify API and print caps and taglists in a nicer
to read way, just like gst-launch-1.0 does nowadays, without
escaping everything three times.
Jan Schmidt [Mon, 6 Mar 2017 08:14:48 +0000 (19:14 +1100)]
videodecoder: Fix a leak introduced in fcb63e
CID: 1402055
Jan Schmidt [Fri, 3 Mar 2017 13:27:30 +0000 (00:27 +1100)]
oggdemux: Fix reverse playback
Fix various issues with reverse playback by clearing tracking
vars when working in reverse, and where possible using the
timestamp interpolation code to generate timestamps for
outgoing buffers. Make sure to mark things as discontinuous
only when looping backward to a new position and fix seeking
to the next page when starting.
Jan Schmidt [Fri, 3 Mar 2017 13:22:17 +0000 (00:22 +1100)]
oggdemux: Timestamp tracking fixes
In gst_ogg_demux_do_seek() when calculating the
keyframe time, account for a non-zero start-time
Handle a discontinuous first packet in
gst_ogg_demux_setup_first_granule() because that's pretty
normal after a seek. Also differentiate between a genuinely
truncated first packet and just bailing out early, by not using
granule = -1 as an error code.
Make the debug output logs clearer about which timestamps
are stream times (PTS) and which are ogg timestamps.
Jan Schmidt [Fri, 3 Mar 2017 13:15:50 +0000 (00:15 +1100)]
oggdemux: Don't arbitrarily guess a timestamp of 0
When we haven't managed to manufacture a timestamp for
a packet, don't just guess '0', leave it at none and
let downstream decide
Jan Schmidt [Fri, 3 Mar 2017 13:12:26 +0000 (00:12 +1100)]
theoradec: Make the keyframe condition check clearer
Make the keyframe checking if statement easier to
read, and add some debug when detecting a keyframe
Jan Schmidt [Fri, 3 Mar 2017 13:18:07 +0000 (00:18 +1100)]
videodecoder: Restrict frame timestamp guessing in reverse mode
Don't guess a timestamp of the start of the segment when running
in reverse mode, as more likely it means we're discontinuous somewhere
in the middle of the segment, and we'll fix up timestamps once
the frames are decoded and reversed.
Jan Schmidt [Fri, 3 Mar 2017 13:10:27 +0000 (00:10 +1100)]
videodecoder: Store buffer information even without PTS
When a PTS is not set, we still want to store the rest of the
buffer information, or else we lose important things like the
duration or buffer flags when parsing.
Edward Hervey [Fri, 3 Mar 2017 09:52:15 +0000 (10:52 +0100)]
vorbisdec: Reset decoder in more situations
This is a followup commit to
b95725c37e70ad3c1ec8dadb401388db375df482
* Resetting the decoder should only happen when we get a new initialization
header (0x01) and not on the other headers
* The initialized variable only gets set to TRUE once all headers have
been parsed. Also check if the vorbis_info struct has been properly resetted
also. Failure to do that would cause vorbisdec to error if it got
two initialization header in a row (the first would configure the underlying
library and the second one would error out because it's already initialized)
https://bugzilla.gnome.org/show_bug.cgi?id=779515
Sebastian Dröge [Tue, 28 Feb 2017 13:51:00 +0000 (15:51 +0200)]
rawbaseparse: Assert that frame size is > 0
We would later divide by zero otherwise, and generally won't do the
right thing.
CID 1401383
Sebastian Dröge [Tue, 28 Feb 2017 13:26:36 +0000 (15:26 +0200)]
rawaudioparse: Fix potential NULL pointer dereference
CID 1364606
Sebastian Dröge [Tue, 28 Feb 2017 13:17:24 +0000 (15:17 +0200)]
decodebin3: Fix potential NULL pointer dereference on slot deactivation
CID 1363331
Sebastian Dröge [Tue, 28 Feb 2017 13:15:31 +0000 (15:15 +0200)]
urisourcebin: Fix inverted check for an existing slot
CID 1363330
Sebastian Dröge [Tue, 28 Feb 2017 13:13:49 +0000 (15:13 +0200)]
decodebin3: Handle stream-start events without group id correctly
CID 1363327
Sebastian Dröge [Tue, 28 Feb 2017 13:11:42 +0000 (15:11 +0200)]
videodecoder: Handle return value of gst_video_decoder_drain()
CID 1362896
Jochen Henneberg [Thu, 9 Feb 2017 12:44:51 +0000 (12:44 +0000)]
vorbisdec: reset decoder on vorbis headers update
if the vorbis encoder receives new headers it must be
reset and re-initialized to continue decoding, e. g.
for live streams
Sebastian Dröge [Mon, 27 Feb 2017 17:04:30 +0000 (19:04 +0200)]
vorbisenc: Resend (new, updated) headers when the caps are changing
The headers are usually changing together with the caps, and they are
nedeed for correct decoding.
Tim-Philipp Müller [Sat, 25 Feb 2017 19:19:32 +0000 (19:19 +0000)]
rawparse: fix linking for audio/video libs
Broke build in gnome continuous
Sebastian Dröge [Sat, 25 Feb 2017 13:14:07 +0000 (15:14 +0200)]
rawparse: Fix meson build
Sebastian Dröge [Sat, 25 Feb 2017 12:48:40 +0000 (14:48 +0200)]
rawparse: Move to gst-plugins-base
https://bugzilla.gnome.org/show_bug.cgi?id=774544
Sebastian Dröge [Sat, 25 Feb 2017 12:32:33 +0000 (14:32 +0200)]
Merge branch 'rawparse-moved-plugin'
Sebastian Dröge [Fri, 24 Feb 2017 13:59:38 +0000 (15:59 +0200)]
meson: Update version
Sebastian Dröge [Fri, 24 Feb 2017 13:37:33 +0000 (15:37 +0200)]
Back to development
Sebastian Dröge [Fri, 24 Feb 2017 13:07:06 +0000 (15:07 +0200)]
Release 1.11.2
Sebastian Dröge [Fri, 24 Feb 2017 10:46:59 +0000 (12:46 +0200)]
Update .po files
Sebastian Dröge [Fri, 24 Feb 2017 08:04:21 +0000 (10:04 +0200)]
video-converter: Give a name to the thread-pool threads
This way they can be distinguished from any other threads in the same
process.
Sebastian Dröge [Fri, 24 Feb 2017 08:02:28 +0000 (10:02 +0200)]
video-converter: Only lock the thread pool mutex when running with more than 1 thread
There's no reason to lock anything if only the current thread is ever
going to do any work.
Sebastian Dröge [Mon, 20 Feb 2017 19:38:17 +0000 (21:38 +0200)]
video-converter: Implement multi-threaded scaling/conversion
This adds a property to select the maximum number of threads to use for
conversion and scaling. During processing, each plane is split into
an equal number of consecutive lines that are then processed by each
thread.
During tests, this gave up to 1.8x speedup with 2 threads and up to 3.2x
speedup with 4 threads when converting e.g. 1080p to 4k in v210.
https://bugzilla.gnome.org/show_bug.cgi?id=778974
Georg Lippitsch [Tue, 21 Feb 2017 10:59:12 +0000 (11:59 +0100)]
videotimecode: Validate for drop-frame correctness
In gst_video_time_code_is_valid, also check for invalid
ranges when using drop-frame TC. Refactor some code which
broke after the check was added.
https://bugzilla.gnome.org/show_bug.cgi?id=779010
Georg Lippitsch [Wed, 15 Feb 2017 17:40:21 +0000 (18:40 +0100)]
videotimecode: Init from GDateTime
Add a function to init the time code from a GDateTime
https://bugzilla.gnome.org/show_bug.cgi?id=778702
Jochen Henneberg [Mon, 20 Feb 2017 11:44:37 +0000 (13:44 +0200)]
vorbis: Fix channel reorder map for 5.1, 6.1 and 7.1
Sebastian Dröge [Sat, 18 Feb 2017 18:18:50 +0000 (20:18 +0200)]
rawbaseparse: Drop incomplete frames at EOS
See https://bugzilla.gnome.org/show_bug.cgi?id=773666
This would ideally be solved in baseparse but that requires further
thought at this point, and in the meantime it would be good to have
rawbaseparse not assert on this but handle it gracefully instead.
Sebastian Dröge [Wed, 15 Feb 2017 19:41:47 +0000 (21:41 +0200)]
video-scaler: Fix upscaling if width & height change and we're starting not at y=0
It was taking the initial input y-offset from the output value, which
only works for y=0 (in which case both are the same). If y > 0, we would
always stay behind the requested input offset and never ever read
anything from the input.
Tim-Philipp Müller [Tue, 14 Feb 2017 22:31:50 +0000 (22:31 +0000)]
Fix distcheck
Buildbot doesn't like wildcards here for some reason.
Tim-Philipp Müller [Tue, 14 Feb 2017 19:44:43 +0000 (19:44 +0000)]
meson: dist meson build files
Ship meson build files in tarballs, so people who use tarballs
in their builds can start playing with meson already.
Tim-Philipp Müller [Tue, 14 Feb 2017 19:43:47 +0000 (19:43 +0000)]
win32: dist all .def files
Heekyoung Seo [Fri, 10 Feb 2017 08:32:29 +0000 (17:32 +0900)]
typefindfunctions: prevent unsigned int overflow
https://bugzilla.gnome.org/show_bug.cgi?id=778432
Stefan Sauer [Fri, 10 Feb 2017 20:28:49 +0000 (21:28 +0100)]
adder: ensure the discont flag is correct
Previously it happened that reused buffer caused the discont to be on the wrong
buffers.
Thibault Saunier [Wed, 8 Feb 2017 14:42:45 +0000 (11:42 -0300)]
discoverer: Ignore more parser related fields when comparing streams
The parser might do some conversion on a stream but the stream keeps
being the same, and we need to make sure GstDiscoverer detects it is the
case.
https://bugzilla.gnome.org/show_bug.cgi?id=778298
Jan Schmidt [Sat, 4 Feb 2017 03:46:00 +0000 (14:46 +1100)]
audioringbuffer: Also add FLAC to debug strings.
Oops, also add FLAC to the debug strings array.
https://bugzilla.gnome.org/show_bug.cgi?id=777655
Jan Schmidt [Sat, 4 Feb 2017 03:42:33 +0000 (14:42 +1100)]
audioringbuffer: Prevent overflow of debug names array
Add new audio types to the list of strings used for debug
so we don't index past the end of that array.
https://bugzilla.gnome.org/show_bug.cgi?id=777655
Sebastian Dröge [Thu, 2 Feb 2017 12:56:39 +0000 (14:56 +0200)]
multifdsink: Make sure to use a 64 bit integer for the units-max property
Seungha Yang [Fri, 20 Jan 2017 10:49:46 +0000 (19:49 +0900)]
decodebin3: Fix crash caused by slot double freeing
Probe for MultiQueue source pad might receive EOS twice,
the first is fake-eos and the other is actual EOS.
And the slot can be freed with fake-eos/EOS if the slot has no input.
Since slot freeing is async, double free can be possible.
So, decodebin3 needs to remove the probe also with slot freeing.
https://bugzilla.gnome.org/show_bug.cgi?id=777530
Edward Hervey [Tue, 31 Jan 2017 15:47:32 +0000 (16:47 +0100)]
examples: Fix leak
Seungha Yang [Sat, 3 Dec 2016 04:38:28 +0000 (13:38 +0900)]
decodebin3: Fix list leak on handle_stream_switch()
Free no more used list variables
https://bugzilla.gnome.org/show_bug.cgi?id=775553
Seungha Yang [Sat, 3 Dec 2016 04:22:54 +0000 (13:22 +0900)]
decodebin3: Change requested_selection to have its own memory for stream-id
"requested_selection" list might be generated by select-streams event.
And memory of stream-id(s) in select-streams is independent from that of stream-collection.
https://bugzilla.gnome.org/show_bug.cgi?id=775553
Seungha Yang [Sat, 3 Dec 2016 03:47:41 +0000 (12:47 +0900)]
decodebin3: Change return types of stream_in_{list,collection}
Change return types of functions to get memory address of stream-id.
https://bugzilla.gnome.org/show_bug.cgi?id=775553
Seungha Yang [Sat, 3 Dec 2016 03:43:22 +0000 (12:43 +0900)]
playback: Fix leak on select_streams
Since gst_event_parse_select_streams() returns newly allocated
memory for stream-id(s), it should be freed explicitly.
https://bugzilla.gnome.org/show_bug.cgi?id=775553
Guillaume Desmottes [Mon, 2 Jan 2017 14:12:47 +0000 (15:12 +0100)]
encodebin: fix caps leak in test
https://bugzilla.gnome.org/show_bug.cgi?id=776797
Sebastian Dröge [Mon, 30 Jan 2017 10:35:04 +0000 (12:35 +0200)]
audio-resampler: Fix integer overflow in clamping code
https://bugzilla.gnome.org/show_bug.cgi?id=777921
Sebastian Dröge [Wed, 25 Jan 2017 17:13:40 +0000 (19:13 +0200)]
qt: The videooverlay example requires at least C++11
... and clang requires this to be specified on the commandline while gcc
nowadays defaults to C++11 or even newer.
Thibault Saunier [Tue, 24 Jan 2017 22:20:53 +0000 (19:20 -0300)]
meson: Properly use ':' for defining keywords
Tim-Philipp Müller [Mon, 23 Jan 2017 19:45:05 +0000 (19:45 +0000)]
videorate: fix LATENCY query
The latency query originally had a fallthrough to the default
label at the end as fallback, but that got messed up when the
DURATION and POSITION queries were added, so it then fell through
to the duration query handler instead. Restore original behaviour.
https://bugzilla.gnome.org/show_bug.cgi?id=699077
Tim-Philipp Müller [Mon, 23 Jan 2017 19:08:15 +0000 (19:08 +0000)]
videorate: fix duration and position query handling
Duration query would return TRUE and duration=-1. This
worked in the unit test because the unit test implementation
was a bit broken.
Both queries need to access rate with a lock.
Fix broken duration query test as well. It relied on broken
behaviour by the videorate query handler, and also it was
implemented as a downstream query rather than an upstream
query. And we must return HANDLED from the probe so that the
query we intercept actually returns TRUE.
https://bugzilla.gnome.org/show_bug.cgi?id=699077
Tim-Philipp Müller [Mon, 23 Jan 2017 19:50:09 +0000 (19:50 +0000)]
audio: add since markers to docs for new enums
https://bugzilla.gnome.org/show_bug.cgi?id=777655
Vincent Penquerc'h [Thu, 17 Nov 2016 13:04:18 +0000 (13:04 +0000)]
audio: add FLAC to GstAudioRingBufferFormatType
https://bugzilla.gnome.org/show_bug.cgi?id=777655
Olivier Crete [Mon, 23 Jan 2017 18:31:54 +0000 (18:31 +0000)]
audioringbuffer: Also support raw AAC
Support raw AAC streams without the ADTS header
https://bugzilla.gnome.org/show_bug.cgi?id=777655
Víctor Manuel Jáquez Leal [Fri, 20 Jan 2017 22:28:23 +0000 (23:28 +0100)]
docs: update libs section
Include documented symbols that were not declared in section file.
Sebastian Dröge [Fri, 20 Jan 2017 10:41:16 +0000 (12:41 +0200)]
riff-media: Don't divide block align by zero channels
https://bugzilla.gnome.org/show_bug.cgi?id=777525
Sebastian Dröge [Fri, 20 Jan 2017 06:02:38 +0000 (08:02 +0200)]
samiparse: Check that the string has a non-zero length before overwriting the last byte with '\0'
https://bugzilla.gnome.org/show_bug.cgi?id=777502
Sebastian Dröge [Sun, 15 Jan 2017 17:42:34 +0000 (18:42 +0100)]
riff-media: Don't recurse in for nested WAVEFORMATEX
There was already a check for that, but it failed because
subformat_guid[0] is a guint32 and that is then casted implicitely to a
guint16 when recursing... just that we checked the uncasted value.
This caused an infinite recursion and thus stack overflow.
https://bugzilla.gnome.org/show_bug.cgi?id=777265
Jan Schmidt [Wed, 18 Jan 2017 03:59:18 +0000 (14:59 +1100)]
decodebin: Don't leak blocked pad references on errors
When the decodebin state change fails because of an error
message, we might not go through PAUSED->READY. Don't leak
a ref to decodebin pads due to pad blocking in that case.
This is because we return ASYNC going to PAUSED, and if
we fail before reaching PAUSED the only transition we'll
see is READY->NULL.
https://bugzilla.gnome.org/show_bug.cgi?id=775893
Carl Karsten [Fri, 28 Nov 2014 00:02:49 +0000 (18:02 -0600)]
videotestsrc: Add options to make ball pattern based on system time, and invert each second.
This adds some extra options that affect pattern=ball mode, allowing the
animation to be synced to running time or wall-time clock for comparing
sync across different instances / pipelines / machines.
Also added is the ability to invert the rendering colours every second,
and some different ball motion patterns.
https://bugzilla.gnome.org/show_bug.cgi?id=740557
Sebastian Dröge [Sun, 15 Jan 2017 17:31:56 +0000 (18:31 +0100)]
riff-media: Check for valid channels/rate before using the values
Otherwise we might divide by zero or otherwise create invalid caps.
https://bugzilla.gnome.org/show_bug.cgi?id=777262
Tim-Philipp Müller [Fri, 13 Jan 2017 12:38:52 +0000 (12:38 +0000)]
meson: bump version
Sebastian Dröge [Thu, 12 Jan 2017 14:32:42 +0000 (16:32 +0200)]
Back to development
Sebastian Dröge [Thu, 12 Jan 2017 13:30:02 +0000 (15:30 +0200)]
Release 1.11.1
Sebastian Dröge [Thu, 12 Jan 2017 12:37:17 +0000 (14:37 +0200)]
Update .po files
Sebastian Dröge [Thu, 12 Jan 2017 12:35:09 +0000 (14:35 +0200)]
po: Update translations
Jan Schmidt [Thu, 12 Jan 2017 11:28:50 +0000 (22:28 +1100)]
urisourcebin: Preserve seqnum on EOS events
When converting EOS to/from our custom fake EOS event,
preserve any seqnum on the original event.
Edward Hervey [Thu, 12 Jan 2017 09:51:34 +0000 (10:51 +0100)]
urisourcebin: Avoid races when setting up typefind
The state of urisourcebin (and all elements contained within) can
change at any point in time, including when setting up the typefind
element.
In order to avoid ending up with typefind starting without being fully
connected, lock the state and connect to the 'have-type' signal.
Sebastian Dröge [Wed, 11 Jan 2017 16:24:38 +0000 (18:24 +0200)]
video-converter: Fix crashes in fast-paths when converting interlaced formats with different vertical subsampling
E.g. the following pipelines fail because chroma values after the last
line are read (note: 486 % 4 == 2):
gst-launch-1.0 videotestsrc ! "video/x-raw,interlace-mode=interleaved,width=720,height=486,format=UYVY" ! videoconvert ! "video/x-raw,format=I420" ! fakesink
gst-launch-1.0 videotestsrc ! "video/x-raw,interlace-mode=interleaved,width=720,height=486,format=I420" ! videoconvert ! "video/x-raw,format=UYVY" ! fakesink
gst-launch-1.0 videotestsrc ! "video/x-raw,interlace-mode=interleaved,width=720,height=486,format=I420" ! videoconvert ! "video/x-raw,format=AYUV" ! fakesink
Jan Schmidt [Wed, 11 Jan 2017 11:48:02 +0000 (22:48 +1100)]
urisourcebin: Drop fake EOS if the pad got relinked
If our pad got relinked in since the fake-EOS was sent to the
pad, then drop the fake-EOS event.
CID: 1398546
Arun Raghavan [Wed, 11 Jan 2017 11:56:01 +0000 (17:26 +0530)]
common: Revert unintentional change in previous commit
Arun Raghavan [Wed, 11 Jan 2017 11:44:46 +0000 (17:14 +0530)]
urisourcebin: Drop some dead code
The ret == GST_STATE_CHANGE_FAILURE is handled in the previous for loop
already.
CID: 1398544
Seungha Yang [Wed, 11 Jan 2017 03:35:40 +0000 (12:35 +0900)]
urisourcebin: Clear pad from pending list if it was linked
If not, the other slots might try to link the pad again.
This can happen when the demuxer has multiple src pads
and their caps are identical
https://bugzilla.gnome.org/show_bug.cgi?id=777121
Edward Hervey [Wed, 11 Jan 2017 07:22:21 +0000 (08:22 +0100)]
win32: update def file
Vivia Nikolaidou [Tue, 10 Jan 2017 14:36:08 +0000 (16:36 +0200)]
videotimecode: Added unit test for GstVideoTimeCodeInterval
https://bugzilla.gnome.org/show_bug.cgi?id=776447
Vivia Nikolaidou [Thu, 29 Dec 2016 12:42:52 +0000 (14:42 +0200)]
videotimecode: New GstVideoTimeCodeInterval type, ability to add to a GstVideoTimeCode
Sometimes there is a human-oriented timecode that represents an
interval between two other timecodes. It corresponds to the human
perception of "add X hours" or "add X seconds" to a specific timecode,
taking drop-frame oddities into account. This interval-representing
timecode is now a GstVideoTimeCodeInterval. Also added function to add it to
a GstVideoTimeCode.
https://bugzilla.gnome.org/show_bug.cgi?id=776447
Seungha Yang [Tue, 10 Jan 2017 12:52:34 +0000 (21:52 +0900)]
urisourcebin: Configure typefind element for non-streaming uri
To ensure configuring adaptivedemux if needed,
setup typefind element even if uri is not matched to streaming protocol.
https://bugzilla.gnome.org/show_bug.cgi?id=776458
Seungha Yang [Sat, 24 Dec 2016 07:44:26 +0000 (16:44 +0900)]
urisourcebin: Use GList for typefind elements
We need typefind elements per source element's srcpad
https://bugzilla.gnome.org/show_bug.cgi?id=776458
Seungha Yang [Sat, 24 Dec 2016 07:15:45 +0000 (16:15 +0900)]
urisourcebin: Remove unused signal handler variable
Remove never used handler id
https://bugzilla.gnome.org/show_bug.cgi?id=776458
Thibault Saunier [Tue, 10 Jan 2017 11:57:51 +0000 (08:57 -0300)]
pbutils: Fix annotation in gst_encoding_profile_set_preset
Tim-Philipp Müller [Mon, 9 Jan 2017 19:45:25 +0000 (19:45 +0000)]
win32: update .def file for new video API
Tim-Philipp Müller [Mon, 9 Jan 2017 19:10:10 +0000 (19:10 +0000)]
tests: audiodecoder: fix another c99-ism
Missed one.
Tim-Philipp Müller [Mon, 9 Jan 2017 19:02:57 +0000 (19:02 +0000)]
Fix indentation
Tim-Philipp Müller [Mon, 9 Jan 2017 18:58:42 +0000 (18:58 +0000)]
tests: audiodecoder: fix compiler warnings due to c99-ism
audiodecoder.c:160:5: error: ‘for’ loop initial declarations are only allowed in C99 mode
Vivia Nikolaidou [Fri, 30 Dec 2016 18:27:48 +0000 (20:27 +0200)]
videotimecode: Add GstValue functions unit test
https://bugzilla.gnome.org/show_bug.cgi?id=772764
Vivia Nikolaidou [Fri, 30 Dec 2016 17:08:16 +0000 (19:08 +0200)]
videotimecode: Add GstValue functions
Add compare, serialization and deserialization functions
https://bugzilla.gnome.org/show_bug.cgi?id=772764
Seungha Yang [Sun, 8 Jan 2017 12:53:27 +0000 (21:53 +0900)]
urisourcebin: Clear EOS state with stream-start/flush-stop event
The EOS state marker should cleared on stream-start or flush-stop
https://bugzilla.gnome.org/show_bug.cgi?id=777009
Seungha Yang [Sun, 8 Jan 2017 12:36:04 +0000 (21:36 +0900)]
urisourcebin: Never push actual EOS event to slot
Due to the special nature of adaptivedemux, reconfigure happens
frequently with seek/track-change.
In very exceptional cases, the following sequence is possible:
* EOS event is pushed to queue element and still buffers are queued
* During draining remaining buffers, reconfiguration downstream
happens due to track switch.
* The queue gets a not-linked flow return from downstream
* Because the sinkpad is EOS, the queue registers an
error on the bus, causing the pipeline to fail.
Avoid the sinkpad getting marked EOS in the first place, by using a
custom event in place of EOS.
https://bugzilla.gnome.org/show_bug.cgi?id=777009
Jan Schmidt [Mon, 9 Jan 2017 10:31:37 +0000 (21:31 +1100)]
testsuite: Add some test checks for gst_video_guess_framerate()
Jan Schmidt [Mon, 9 Jan 2017 10:25:26 +0000 (21:25 +1100)]
gst_video_guess_framerate: Don't throw away all precision
When operating on framerates near 10000fps, at least keep 1
digit of precision for calculations
Thibault Saunier [Fri, 6 Jan 2017 15:56:00 +0000 (12:56 -0300)]
Update win32 def files
Thibault Saunier [Fri, 6 Jan 2017 14:39:27 +0000 (11:39 -0300)]
encoding-target: Properly free temporary list
Thibault Saunier [Wed, 4 Jan 2017 17:27:40 +0000 (14:27 -0300)]
encoding-profile: Add a way to copy an encoding profile
It is often usefull to make sure that you get a full copy of a profile.
For example you want to let the user modify it in the user interface
but still keep an unchanged version for later use.
API:
gst_encoding_profile_copy
Guillaume Desmottes [Wed, 4 Jan 2017 13:56:36 +0000 (14:56 +0100)]
meson: generate pkg-config -uninstalled pc files
Generating those files is useful for users building the GStreamer stack
using meson and having to link it to another project which is still
using the autotools.
https://bugzilla.gnome.org/show_bug.cgi?id=776810