Sjoerd Simons [Fri, 26 Jul 2013 13:29:05 +0000 (15:29 +0200)]
oggdemux: Prevent seeks when _SCHEDULING_FLAG_SEQUENTIAL is set
Don't go into pull mode when the upstream scheduling flags indicate
seeks should be avoided by setting GST_SCHEDULING_FLAG_SEQUENTIAL.
https://bugzilla.gnome.org/show_bug.cgi?id=704929
Sebastian Dröge [Mon, 29 Jul 2013 12:47:33 +0000 (14:47 +0200)]
Back to development
Sebastian Dröge [Mon, 29 Jul 2013 11:37:00 +0000 (13:37 +0200)]
Release 1.1.3
Sebastian Dröge [Mon, 29 Jul 2013 11:36:51 +0000 (13:36 +0200)]
Update .po files
Sebastian Dröge [Mon, 29 Jul 2013 10:11:38 +0000 (12:11 +0200)]
oggdemux: Don't swap start/stop for negative rates in the SEGMENT query
Sebastian Dröge [Mon, 29 Jul 2013 09:40:57 +0000 (11:40 +0200)]
tagdemux: Properly implement seeking if tagdemux is driving the pipeline
https://bugzilla.gnome.org/show_bug.cgi?id=705062
Sebastian Dröge [Mon, 29 Jul 2013 08:46:01 +0000 (10:46 +0200)]
oggdemux: Implement SEGMENT query
Matej Knopp [Sun, 28 Jul 2013 21:38:06 +0000 (23:38 +0200)]
videorate: ignore GAP event
videorate automatically fills gaps with the previous frames.
https://bugzilla.gnome.org/show_bug.cgi?id=705048
Matej Knopp [Sun, 28 Jul 2013 21:38:17 +0000 (23:38 +0200)]
audiorate: ignore GAP event
audiorate automatically fills gaps with silence.
https://bugzilla.gnome.org/show_bug.cgi?id=705048
Sebastian Dröge [Sun, 28 Jul 2013 11:52:28 +0000 (13:52 +0200)]
multisocketsink: Fix handling of partial writes and WOULD_BLOCK errors
Sebastian Dröge [Sun, 28 Jul 2013 11:23:41 +0000 (13:23 +0200)]
multifdsink: Update current time after every write
Each write will update the last_activity_time and otherwise we would
compare against a too old current time and immediately timeout because
current time is smaller than last activity time (overflow).
Sebastian Dröge [Sun, 28 Jul 2013 11:20:48 +0000 (13:20 +0200)]
multihandlesink: Update current time after every write
Each write will update the last_activity_time and otherwise we would
compare against a too old current time and immediately timeout because
current time is smaller than last activity time (overflow).
Edward Hervey [Sat, 27 Jul 2013 10:16:15 +0000 (12:16 +0200)]
pbutils: Add description for teletext
Matej Knopp [Fri, 26 Jul 2013 12:28:41 +0000 (14:28 +0200)]
audiodecoder: do not leak input caps
https://bugzilla.gnome.org/show_bug.cgi?id=704926
Edward Hervey [Fri, 2 Nov 2012 09:04:16 +0000 (10:04 +0100)]
videotestsrc: Initialize GstVideoInfo in ::start()
Otherwise we end up with bogus values and races
Edward Hervey [Fri, 2 Nov 2012 09:03:38 +0000 (10:03 +0100)]
videotestsrc: Don't error on not-negotiated
Base classes will handle re-negotiation if needed, but emitting an
error message will make applications stop.
Edward Hervey [Wed, 12 Sep 2012 10:41:01 +0000 (12:41 +0200)]
ext/gst: Ensure default query/event handlers are used
And in some cases, just remove our implementation that does nothing
Sebastian Dröge [Fri, 26 Jul 2013 09:02:32 +0000 (11:02 +0200)]
appsrc: Also provide function API for current-level-bytes and integrate into the docs
Changbok Chea [Fri, 26 Jul 2013 06:00:44 +0000 (15:00 +0900)]
appsrc: Add "current-level-bytes" property
https://bugzilla.gnome.org/show_bug.cgi?id=704774
Vincent Penquerc'h [Thu, 25 Jul 2013 19:03:50 +0000 (20:03 +0100)]
codec-utils: add a gst_codec_utils_aac_get_index_from_sample_rate
It maps a sample rate to a well known AAC sample rate index.
Sebastian Dröge [Fri, 26 Jul 2013 08:22:32 +0000 (10:22 +0200)]
videodecoder/encoder: Call reset() always between start() and stop() and never outside
Sebastian Dröge [Thu, 25 Jul 2013 12:25:08 +0000 (14:25 +0200)]
videoencoder/decoder: Call reset() before start() too
Tim-Philipp Müller [Thu, 25 Jul 2013 10:56:07 +0000 (11:56 +0100)]
typefinding: don't detect mp3 based on just a few bits
Remove dodgy code that detects mp3 with as little as
a valid frame sync at the beginning. This was only used
in some unit tests in -good where there were only a few
bytes after the id3 tag. We now require at least two
frame headers.
Fixes mis-dection of text files with UTF-16 LE BOM as mp3.
https://bugzilla.gnome.org/show_bug.cgi?id=681368
Sebastian Dröge [Thu, 25 Jul 2013 12:11:28 +0000 (14:11 +0200)]
audio/videodecoder: Rename variable in macro from dec to __dec
Otherwise it might shadow another variable in the outside scope
and cause interesting side effects.
Sebastian Dröge [Thu, 25 Jul 2013 11:31:07 +0000 (13:31 +0200)]
theoraenc: Clean up handling of reset/flushing/start/stop
Sebastian Dröge [Thu, 25 Jul 2013 11:29:22 +0000 (13:29 +0200)]
theoradec: Clean up handling of reset/flushing/start/stop
Sebastian Dröge [Thu, 25 Jul 2013 08:53:14 +0000 (10:53 +0200)]
videoencoder: There's no point in resetting the encoder when the caps change
The subclass will be called with set_format() and there it can drain
if necessary and reset whatever is necessary. This is the same behaviour
as for the video decoder.
Sebastian Dröge [Thu, 25 Jul 2013 08:46:04 +0000 (10:46 +0200)]
videoencoder: Reset internal state and segments on FLUSH_STOP
https://bugzilla.gnome.org/show_bug.cgi?id=656007
Sebastian Dröge [Thu, 25 Jul 2013 08:42:56 +0000 (10:42 +0200)]
videoencoder: Refactor GstVideoEncoder::reset() handling a bit
Let gst_video_encoder_reset() call it as would be intuitive and
only call it indirectly from gst_video_encoder_drain(). Now it
actually makes sense.
Sebastian Dröge [Thu, 25 Jul 2013 08:20:01 +0000 (10:20 +0200)]
videodecoder: Refactor GstVideoDecoder::reset() handling a bit
Let gst_video_decoder_reset() call it as would be intuitive and
only call it indirectly from gst_video_decoder_flush(). Now it
actually makes sense.
Wim Taymans [Wed, 24 Jul 2013 07:24:45 +0000 (09:24 +0200)]
videodecoder: Take DTS as PTS for keyframes as a last resort if we can't calculate any PTS
https://bugzilla.gnome.org/show_bug.cgi?id=704193
Sebastian Dröge [Tue, 23 Jul 2013 11:42:40 +0000 (13:42 +0200)]
playsink: Remove two unused variables
Sebastian Dröge [Tue, 23 Jul 2013 11:38:33 +0000 (13:38 +0200)]
subtitleoverlay: Remove some more unneeded segment tracking
Sebastian Dröge [Tue, 23 Jul 2013 11:36:09 +0000 (13:36 +0200)]
playsinkconvertbin: Remove obsolete segment tracking
This is now all handled automatically with sticky events.
Sebastian Dröge [Tue, 23 Jul 2013 10:40:57 +0000 (12:40 +0200)]
playbin: Ensure that everything in a GstSourceGroup gets the same group-id
Including streams from external subtitle files. If not everything implements
the group-ids playbin invents its own.
Sebastian Dröge [Tue, 23 Jul 2013 10:35:46 +0000 (12:35 +0200)]
playsink: Fix handling of colorbalance element if the sink does not implement it
Sebastian Dröge [Tue, 23 Jul 2013 09:13:19 +0000 (11:13 +0200)]
playsink: Improve segment handling in the custom flushing for subtitle stream switches
This code needs a lot more work to be improved for 1.0.
Sebastian Dröge [Tue, 23 Jul 2013 09:11:33 +0000 (11:11 +0200)]
subtitleoverlay: Segment events are sticky now and propagated automatically when needed
Sebastian Dröge [Tue, 23 Jul 2013 07:14:23 +0000 (09:14 +0200)]
streamcombiner: Proxy all sink events downstream
Thanks to Mathieu Duponchelle for noticing this regression
introduced with the last change.
https://bugzilla.gnome.org/show_bug.cgi?id=704706
Sebastian Dröge [Mon, 22 Jul 2013 13:24:50 +0000 (15:24 +0200)]
tagdemux: Add support for group-id in the stream-start event
Sebastian Dröge [Mon, 22 Jul 2013 13:24:29 +0000 (15:24 +0200)]
ogg: Add support for group-id in the stream-start event
Sebastian Dröge [Mon, 22 Jul 2013 11:15:09 +0000 (13:15 +0200)]
streamsynchronizer: Implement grouping of streams via the group-id
https://bugzilla.gnome.org/show_bug.cgi?id=704427
https://bugzilla.gnome.org/show_bug.cgi?id=704408
Sebastian Dröge [Mon, 22 Jul 2013 06:08:27 +0000 (08:08 +0200)]
streamcombiner: Fix locking
We have to hold the streams-lock when iterating over all pads,
also the stream-lock of the pad is already locked when we receive
EOS.
Call gst_pad_event_default() for the correct default handling of
events.
Mathieu Duponchelle [Sun, 21 Jul 2013 22:48:54 +0000 (00:48 +0200)]
encoding: fix EOS handling in streamsplitter / combiner.
This commit adds a streamcombinerpad with an is_eos field.
When streamcombiner receives an EOS on one of its pads, it
forwards it all its other pads are EOS.
This commit also removes the notion of "stream-switching-eos".
Wim Taymans [Fri, 19 Jul 2013 08:47:27 +0000 (10:47 +0200)]
video-info: respect stride alignment
Increase the left padding so that we don't cause stride alignments later when we
apply the padding.
https://bugzilla.gnome.org/show_bug.cgi?id=694299
Wim Taymans [Fri, 19 Jul 2013 08:43:38 +0000 (10:43 +0200)]
Revert "video: respect stride alignment when calculating planes offsets"
This reverts commit
28e1dadbfaa403679e69f8173d1aa2c7500fd556.
Incrementing the offset to make the plane aligned causes the image to be
incompatible with what Xv expects. Rather that forcing a memcpy in the
xvimagesink we would like to do adjust the left padding instead.
Arnaud Vrac [Thu, 18 Jul 2013 12:13:33 +0000 (14:13 +0200)]
video: respect stride alignment when calculating planes offsets
https://bugzilla.gnome.org/show_bug.cgi?id=694299
Edward Hervey [Thu, 18 Jul 2013 05:45:47 +0000 (07:45 +0200)]
id3: Use debug category and show FIXMEs
Allows spotting faster un-parsed tags
Sebastian Dröge [Wed, 17 Jul 2013 09:42:48 +0000 (11:42 +0200)]
videometa: Add docs to the region of interest meta functions
Tim-Philipp Müller [Wed, 17 Jul 2013 08:04:47 +0000 (09:04 +0100)]
subparse: use g_strdup() and friends
Fixes build issue on windows, but is also better seeing that
these string are going to get freed with g_free() and not free().
Olivier Crête [Tue, 16 Jul 2013 02:27:20 +0000 (22:27 -0400)]
tagdemux: Put the modified time back in the time part of the segment
https://bugzilla.gnome.org/show_bug.cgi?id=704301
Tim-Philipp Müller [Tue, 16 Jul 2013 17:50:09 +0000 (18:50 +0100)]
tests: fix videoscale test after video format addition
Tim-Philipp Müller [Tue, 16 Jul 2013 17:42:19 +0000 (18:42 +0100)]
configure: remove obsolete libxml checks
https://bugzilla.gnome.org/show_bug.cgi?id=693056
Tim-Philipp Müller [Tue, 16 Jul 2013 17:30:50 +0000 (18:30 +0100)]
subparse: don't leak parse context for sami and qttext
In gst_sub_parse_dispose() parser_type will be UNKNOWN,
so these deinit calls were never executed. And we should
clean up the parser state in the downwards state change
anyway.
Young-Ho Cha [Tue, 28 May 2013 07:56:28 +0000 (16:56 +0900)]
tests: update sami parser testcases
Remove libxml dependency for sami parser
and add more testcases.
https://bugzilla.gnome.org/show_bug.cgi?id=693056
Young-Ho Cha [Sat, 25 May 2013 08:10:14 +0000 (17:10 +0900)]
subparse: remove libxml dependency for sami parser and re-enable sami parser
To celebrate 2013.gnome.asia, updated sami parser for gstreamer 1.x. :D
Remove conditional block for check libxml usage and
implement a simple html markup parser for the sami
parser.
https://bugzilla.gnome.org/show_bug.cgi?id=693056
Wim Taymans [Tue, 16 Jul 2013 14:54:10 +0000 (16:54 +0200)]
meta: fix ROI meta getter
Sebastian Dröge [Tue, 16 Jul 2013 10:21:44 +0000 (12:21 +0200)]
playbin: Don't prefer decoders for which we found a matching sink
It doesn't make much sense.
Sebastian Dröge [Tue, 16 Jul 2013 09:47:59 +0000 (11:47 +0200)]
video: Add support for NV24 color format
This is semi-planar 4:4:4 YUV.
https://bugzilla.gnome.org/show_bug.cgi?id=703259
Sebastian Dröge [Tue, 16 Jul 2013 09:22:35 +0000 (11:22 +0200)]
playbin: Also consider possible converters for raw streams when selecting compatible sink/source combinations
https://bugzilla.gnome.org/show_bug.cgi?id=704285
Sebastian Dröge [Tue, 16 Jul 2013 08:09:27 +0000 (10:09 +0200)]
videometa: Add to the docs and make function names more consistent with others
Miguel Casas-Sanchez [Tue, 16 Jul 2013 08:04:00 +0000 (10:04 +0200)]
videometa: Add Region Of Interest meta
https://bugzilla.gnome.org/show_bug.cgi?id=704070
Sebastian Dröge [Tue, 16 Jul 2013 07:30:33 +0000 (09:30 +0200)]
playbin: Fix sorting for decoder factories for which we didn't find a compatible sink
They might just need some converters for raw audio/video.
https://bugzilla.gnome.org/show_bug.cgi?id=704285
Olivier Crête [Mon, 15 Jul 2013 21:09:16 +0000 (17:09 -0400)]
riff-media: Add 'png ' fourcc
On top of mpng, MPNG, PNG, there is also png it seems
https://bugzilla.gnome.org/show_bug.cgi?id=704291
Benjamin Gaignard [Mon, 15 Jul 2013 13:23:17 +0000 (15:23 +0200)]
allocators: dmabuf: allow testing allocator type
In decide_allocation function some element may when to test the proposed allocator.
For example like this:
if (gst_query_get_n_allocation_params (query) > 0) {
GstAllocator * allocator;
GstAllocationParams params;
gst_query_parse_nth_allocation_param (query, 0, &allocator, ¶ms);
if (g_strcmp0(allocator->mem_type, GST_ALLOCATOR_DMABUF) == 0)
GST_DEBUG("got dmabuf allocator");
else
GST_DEBUG("got an other allocator");
}
https://bugzilla.gnome.org/show_bug.cgi?id=703659
Mathieu Duponchelle [Sat, 13 Jul 2013 23:42:52 +0000 (01:42 +0200)]
oggdemux: Make bisecting fully accurate
When bisecting after an earliest time has been found, we need
to only consider the stream for which the earliest time was found.
Before, the following scenario could be and was encountered:
a) Find the earliest time for stream X
b) bisect and find a page which granuletime is indeed < target, but
contains another stream.
c) decide to seek at the wrong offset, sometimes inferior to
the real one, in which case the error was undected or
d) the offset was superior, and thus the actual target keyframe was
not processed, and packets were skipped waiting
for a granulepos.
https://bugzilla.gnome.org/show_bug.cgi?id=700537
Mathieu Duponchelle [Sat, 13 Jul 2013 18:45:01 +0000 (20:45 +0200)]
Revert "oggdemux: fix seeking with negative rate with skeleton"
This reverts commit
b41cd0428956f3ade9b428149e38be8e788556fe.
Sebastian Dröge [Mon, 15 Jul 2013 07:10:30 +0000 (09:10 +0200)]
playbin: Don't print a warning when setting a sink to NULL
https://bugzilla.gnome.org/show_bug.cgi?id=704194
Sebastian Dröge [Sun, 14 Jul 2013 16:11:59 +0000 (18:11 +0200)]
rtspconnection: Create a new write GSource after removing it
After removal, a GSource is destroyed and can never be attached
again to a main context. We need to create a new one instead.
https://bugzilla.gnome.org/show_bug.cgi?id=704198
Sebastian Dröge [Fri, 12 Jul 2013 10:05:37 +0000 (12:05 +0200)]
playbin: Properly destroy and set to NULL sinks that don't work
Alban Browaeys [Mon, 8 Jul 2013 21:49:39 +0000 (23:49 +0200)]
playbin: Fix logic to detect if a stream-change is currently pending
Fixes duration reporting in gapless playback between files.
https://bugzilla.gnome.org/show_bug.cgi?id=585969
Wim Taymans [Fri, 12 Jul 2013 07:37:51 +0000 (09:37 +0200)]
videometa: fix header formatting
Reynaldo H. Verdejo Pinochet [Wed, 10 Jul 2013 17:27:21 +0000 (13:27 -0400)]
riff: Provide correct media type for XSub
Xsub (fourcc DXSB) is a subpicture stream used for embeded
subtitles on divx files. This provides a correct media type
for them instead of just video/x-avi-unknown.
Sebastian Dröge [Thu, 11 Jul 2013 14:57:11 +0000 (16:57 +0200)]
Back to development
Sebastian Dröge [Thu, 11 Jul 2013 13:30:23 +0000 (15:30 +0200)]
Release 1.1.2
Sebastian Dröge [Thu, 11 Jul 2013 13:29:57 +0000 (15:29 +0200)]
Update .po files
Sebastian Dröge [Wed, 10 Jul 2013 15:16:14 +0000 (17:16 +0200)]
playbin: Only give sinks a new bus if they have no parent yet
Otherwise we will remove the bus that would proxy messages to playsink
and never set it again. If the sink is already in playsink, all failures
are fatal anyway as it's either a sink that worked before or one that
was set by the user.
https://bugzilla.gnome.org/show_bug.cgi?id=701997
Sebastian Dröge [Wed, 10 Jul 2013 11:22:04 +0000 (13:22 +0200)]
playbin: Store a/v/t sinks locally too, not just in playsink
Sebastian Dröge [Wed, 10 Jul 2013 11:21:29 +0000 (13:21 +0200)]
playsink: ref_sink() any sinks that are set on playsink
Otherwise the behaviour of the properties is inconsistent.
Sebastian Dröge [Wed, 10 Jul 2013 11:20:34 +0000 (13:20 +0200)]
playbin: Fix assumptions in the unit test
Unused sinks are still set to READY now during autoplugging
to check their caps. Also playsink owns a ref to the sinks too.
Sebastian Dröge [Wed, 10 Jul 2013 11:00:21 +0000 (13:00 +0200)]
streamsynchronizer: Non-TIME segment streams are not waiting automatically
This was leftover code from porting to 1.0 and fixes the playbin
unit test.
https://bugzilla.gnome.org/show_bug.cgi?id=701943
Branko Subasic [Tue, 9 Jul 2013 21:04:49 +0000 (23:04 +0200)]
win32: add missing rtp buffer methods
Sebastian Dröge [Tue, 9 Jul 2013 12:55:57 +0000 (14:55 +0200)]
playbin: Change sink ownership handling to be a bit more sane
playbin will now only activate the sinks in a single place and
will never change the states of any sinks that are owned by
playsink.
Also handle text-sinks the same way as audio/video sinks inside
playbin.
Piotr Drąg [Fri, 5 Jul 2013 19:55:26 +0000 (21:55 +0200)]
po: update POTFILES.in
https://bugzilla.gnome.org/show_bug.cgi?id=703684
Sreerenj Balachandran [Thu, 4 Jul 2013 14:09:00 +0000 (17:09 +0300)]
colorbalance: Fix the typo in base_init().
Thibault Saunier [Thu, 4 Jul 2013 16:54:59 +0000 (12:54 -0400)]
adder: Do not send flush_start event with the stream lock taken
FLUSH_START is not serialized, so the lock should not be taken when
sending it.
Marcin Lewandowski [Thu, 4 Jul 2013 23:47:08 +0000 (00:47 +0100)]
tag: ignore malformed ID3v2 TDAT frames
Just skip them, don't cause criticals.
https://bugzilla.gnome.org/show_bug.cgi?id=703283
Tim-Philipp Müller [Wed, 3 Jul 2013 08:44:32 +0000 (09:44 +0100)]
audioresample: make explicit that neon is disabled and why
https://bugzilla.gnome.org/show_bug.cgi?id=703477
Carlos Rafael Giani [Tue, 2 Jul 2013 16:20:39 +0000 (18:20 +0200)]
audioresample: disable 16-bit integer NEON support
it seems to be broken (produces no audio), plus the performance gain
is small
Signed-off-by: Carlos Rafael Giani <dv@pseudoterminal.org>
Sebastian Dröge [Tue, 2 Jul 2013 12:25:28 +0000 (14:25 +0200)]
playbin: If we had a previous autoplugged sink, try to reuse it
https://bugzilla.gnome.org/show_bug.cgi?id=701997
Sebastian Dröge [Tue, 2 Jul 2013 12:18:20 +0000 (14:18 +0200)]
playsink: If we switch sinks, make sure that the old sink is set to NULL
Sebastian Dröge [Tue, 2 Jul 2013 12:02:57 +0000 (14:02 +0200)]
playbin: Don't change the state of sinks that we passed to playsink already
Sebastian Dröge [Tue, 2 Jul 2013 12:01:52 +0000 (14:01 +0200)]
playsink: Consider new audio/video sinks when reconfiguring
Sebastian Dröge [Tue, 2 Jul 2013 10:27:03 +0000 (12:27 +0200)]
playbin: Improve debug output regarding sink selection
Brendan Long [Mon, 1 Jul 2013 18:52:43 +0000 (12:52 -0600)]
playbin: Post an error message if a stream combiner doesn't return a request pad.
Sebastian Dröge [Mon, 1 Jul 2013 11:45:25 +0000 (13:45 +0200)]
playbin: Only intersect to check if a sink can handle raw caps
Doing a subset check requires fixed caps, which we might not have here.
https://bugs.webkit.org/show_bug.cgi?id=116042
Vincent Penquerc'h [Mon, 1 Jul 2013 09:39:02 +0000 (10:39 +0100)]
pbutils: allow describing unfixed caps if they share the same media type
Caps description and missing plugin code does not really need caps to
be fixed, and indeed they may not be if giving encodebin unfixed caps
that correspond to an unknown encoder or muxer.
So we relax the check, and allow unfixed caps if all the structures
refer to the same media type.
Sebastian Dröge [Mon, 1 Jul 2013 09:16:34 +0000 (11:16 +0200)]
videodecoder: Send all pending events with type < CAPS before sending caps
Mathieu Duponchelle [Thu, 27 Jun 2013 14:33:15 +0000 (16:33 +0200)]
videoencoder: Send all pending events with type < CAPS before sending caps.
https://bugzilla.gnome.org/show_bug.cgi?id=703196
Vincent Penquerc'h [Fri, 28 Jun 2013 13:48:19 +0000 (14:48 +0100)]
typefind: avoid too low mpeg/ts probability on small amount of data
With the current test, we get into problems when we try to typefind
a MPEG stream from a small amount of data, which can happen when
we get data pushed from a HTTP source. We thus make a second test
to give higher probability if all the potential headers were either
pack or pes headers (ie, no potential header was unrecognized).
This fixes an issue with a MPEG1/MP2 stream being properly discovered
as video/mpeg from a file, but as audio/mpeg from souphttpsrc.
https://bugzilla.gnome.org/show_bug.cgi?id=703256