Sebastian Dröge [Wed, 15 May 2013 09:03:58 +0000 (11:03 +0200)]
libvisual: Update visualizer baseclass from gst-plugins-bad
Sebastian Dröge [Wed, 15 May 2013 08:51:24 +0000 (10:51 +0200)]
Automatic update of common submodule
From 5edcd85 to 098c0d7
Sebastian Dröge [Wed, 15 May 2013 07:26:56 +0000 (09:26 +0200)]
audio-info: Always pass NULL as position parameter to gst_audio_info_set_format()
https://bugzilla.gnome.org/show_bug.cgi?id=700259
Sebastian Dröge [Tue, 14 May 2013 08:06:40 +0000 (10:06 +0200)]
playback: Use subset checks instead of intersection
https://bugzilla.gnome.org/show_bug.cgi?id=700272
Nicolas Dufresne [Sun, 12 May 2013 13:55:38 +0000 (09:55 -0400)]
rtpbasepayload: Delay segment event after caps
https://bugzilla.gnome.org/show_bug.cgi?id=700222
Sebastian Dröge [Tue, 14 May 2013 07:34:21 +0000 (09:34 +0200)]
audio-info: For more than 64 channels don't allow a channel layout
More than 64 channels have all channels unpositioned.
https://bugzilla.gnome.org/show_bug.cgi?id=700259
Sebastian Dröge [Fri, 10 May 2013 10:29:15 +0000 (12:29 +0200)]
tests: Fix event order and missing events
Sebastian Dröge [Fri, 10 May 2013 10:21:31 +0000 (12:21 +0200)]
subparse/ssaparse: Fix event handling and order
Sebastian Dröge [Fri, 10 May 2013 09:31:37 +0000 (11:31 +0200)]
vorbisparse: Fix event handling
Internal state should only be reset on FLUSH_STOP, not FLUSH_START.
Also forward pre-caps events immediately and don't queue them.
Sebastian Dröge [Fri, 10 May 2013 09:24:46 +0000 (11:24 +0200)]
oggmux: Make sure to always set caps on the srcpad and always send a segment event
Even if the srcpad is not linked at this point, it might be linked as result of
setting the caps.
Mathieu Duponchelle [Fri, 10 May 2013 07:28:52 +0000 (09:28 +0200)]
oggmux: don't send a segment event before the caps event
https://bugzilla.gnome.org/show_bug.cgi?id=699971
Mathieu Duponchelle [Thu, 9 May 2013 21:30:33 +0000 (23:30 +0200)]
videodecoder: don't set the list to NULL after taking its address
Sebastian Dröge [Thu, 9 May 2013 16:02:57 +0000 (18:02 +0200)]
playbin-compressed: Fix unit test
Mathieu Duponchelle [Wed, 8 May 2013 18:31:00 +0000 (20:31 +0200)]
videorate: Reset base timestamp and out_frame_count in any case on SEGMENT_EVENT
Fixes #699187
Sebastian Dröge [Thu, 9 May 2013 13:42:49 +0000 (15:42 +0200)]
videoencoder: Make sure to push any pre-caps events before the caps are set
Sebastian Dröge [Thu, 9 May 2013 13:34:10 +0000 (15:34 +0200)]
videodecoder: Make sure to not push any post-caps events before we have caps
and that we push pre-caps events before we push caps, even if we don't
have a GstVideoFrame yet.
Sebastian Dröge [Thu, 9 May 2013 13:05:21 +0000 (15:05 +0200)]
playbin2: Chose more balanced metric to compare ranks of decoder/sink combinations
Sebastian Dröge [Thu, 9 May 2013 08:40:19 +0000 (10:40 +0200)]
theoradec: Set DECODE_ONLY flag on all header packets
Sebastian Dröge [Thu, 9 May 2013 08:37:06 +0000 (10:37 +0200)]
Revert "videodecoder: If a frame is to be dropped, don't update timestamps"
This reverts commit
c9c5cd8eef499ba08e08898bda71183e39d570ea.
Sebastian Dröge [Thu, 9 May 2013 06:54:45 +0000 (08:54 +0200)]
videodecoder: If a frame is to be dropped, don't update timestamps
Sebastian Dröge [Wed, 8 May 2013 19:27:17 +0000 (21:27 +0200)]
playbin: Fix infinite loop in GSequence iteration code
Sebastian Dröge [Wed, 8 May 2013 13:56:34 +0000 (15:56 +0200)]
audio: Make sure to push pre-caps events before the caps event
Sebastian Dröge [Wed, 8 May 2013 13:50:34 +0000 (15:50 +0200)]
video: Make sure to push pre-caps events before the caps event
https://bugzilla.gnome.org/show_bug.cgi?id=699894
Sebastian Dröge [Wed, 8 May 2013 12:52:18 +0000 (14:52 +0200)]
uridecodebin: Always store queue2 elements for later removal
Otherwise we accumulate more and more queue2 elements, and let each
of them start a thread doing nothing but waiting each time uridecodebin
goes to PAUSED.
https://bugzilla.gnome.org/show_bug.cgi?id=699794
Mathieu Duponchelle [Mon, 6 May 2013 20:05:04 +0000 (22:05 +0200)]
oggmux: The best pad can't be EOS
The problem experienced is that the EOS was never emitted by oggmux during a
rendering with GES. The proposed patch checks if the pad is EOS before deciding
it's the "best pad".
https://bugzilla.gnome.org/show_bug.cgi?id=699792
Andoni Morales Alastruey [Sun, 16 Dec 2012 15:53:30 +0000 (16:53 +0100)]
typefind: fix detection of HLS playlists with alternative renditions
https://bugzilla.gnome.org/show_bug.cgi?id=699923
Sebastian Dröge [Tue, 7 May 2013 12:42:05 +0000 (14:42 +0200)]
playbin: Use the GSequence more efficiently
This makes it possible to take advantage of the O(log n) lookups
of GSequence on the ~1000 element lists and only do iterations
on <10 element lists. Previously the code iterated over ~1000 element
lists multiple times.
Sreerenj Balachandran [Wed, 1 May 2013 21:01:17 +0000 (00:01 +0300)]
playbin: Use GSequence instead of GList to store the GstAVElement list.
The GstAVElement list might be big. Use GSequence to optimize it.
Sreerenj Balachandran [Mon, 29 Apr 2013 19:17:53 +0000 (22:17 +0300)]
playbin: autoplug the audio/video decoders and sinks based on capsfeatures.
Autoplug the decoder elements and sink elements based on
the number of common capsfeatures if the ranks are the same.
This will also helps to autoplug the h/w_decoder and h/w_renderer.
https://bugzilla.gnome.org/show_bug.cgi?id=698712
Julien Moutte [Tue, 7 May 2013 13:00:05 +0000 (15:00 +0200)]
riff: Manually calculate bitrate of ADPCM streams
Some ADPCM encoding tools like Oxelon generate WAV files with
wrong format header declaring an invalid bitrate.
As wavparse uses the average bitrate to calculate timestamps
and duration the decoder can be confused by receiving timestamps
completely out of sync with the decoded samples.
ADPCM is a CBR audio codec so we can calculate the average bitrate
instead of trusting the format header.
https://bugzilla.gnome.org/show_bug.cgi?id=636245
Sebastian Dröge [Tue, 7 May 2013 08:16:48 +0000 (10:16 +0200)]
theoraenc: Don't call gst_buffer_fill() for empty Theora packets
gst_buffer_fill() does not like a NULL source data pointer.
Sebastian Dröge [Tue, 7 May 2013 08:13:18 +0000 (10:13 +0200)]
theoraenc: Fix error handling when reading or writing multipass cache data fails
Sebastian Dröge [Mon, 6 May 2013 13:47:34 +0000 (15:47 +0200)]
decodebin: Expose pads when they receive EOS before any buffers
Stops decodebin from waiting forever to expose a pad if there
is never data on it.
https://bugzilla.gnome.org/show_bug.cgi?id=691072
Tim-Philipp Müller [Fri, 3 May 2013 15:24:55 +0000 (16:24 +0100)]
riff: wma can have more than 6 channels
Some versions anyway.
Sebastian Dröge [Fri, 3 May 2013 13:49:50 +0000 (15:49 +0200)]
vorbis: Fix compilation after function rename
Andoni Morales Alastruey [Fri, 3 May 2013 12:16:33 +0000 (14:16 +0200)]
vorbis: prefix get_copy_sample_func and fix duplicated symbols
Andoni Morales Alastruey [Fri, 3 May 2013 12:13:18 +0000 (14:13 +0200)]
ivorbisdec: fix duplicated symbols with vorbisdec
Michael Olbrich [Fri, 3 May 2013 09:23:59 +0000 (11:23 +0200)]
dmabuf: don't touch the GstMemory size
mem.size is the content size and should not be touch.
Save the mmap size instead.
https://bugzilla.gnome.org/show_bug.cgi?id=699566
Michael Olbrich [Fri, 3 May 2013 09:12:04 +0000 (11:12 +0200)]
dmabuf: fix memory initialization
Without this the shared memory is broken
https://bugzilla.gnome.org/show_bug.cgi?id=699565
Michael Olbrich [Fri, 3 May 2013 09:29:05 +0000 (11:29 +0200)]
dmabuf: fix formating
Michael Olbrich [Thu, 2 May 2013 13:37:14 +0000 (15:37 +0200)]
dmabuf: handle mmap failure
Otherwise gstreamer may segfault trying to access MAP_FAILED.
https://bugzilla.gnome.org/show_bug.cgi?id=699470
Tim-Philipp Müller [Thu, 2 May 2013 22:41:02 +0000 (23:41 +0100)]
textrender: actually fixate output caps when fixating output caps
Andoni Morales Alastruey [Fri, 12 Apr 2013 19:01:53 +0000 (21:01 +0200)]
ogg: fix duplicated symbols with schroedinger
Thibault Saunier [Tue, 30 Apr 2013 23:15:38 +0000 (00:15 +0100)]
streamsplitter: Keep srcpad alive while querying peer
Thibault Saunier [Sun, 28 Apr 2013 18:07:47 +0000 (20:07 +0200)]
adder: Get collectpad stream lock when fowarding flush events
Fixes #698410
Tim-Philipp Müller [Wed, 16 Jan 2013 09:50:16 +0000 (09:50 +0000)]
typefindfunctions: minor SSA typefinder clean-up
Remove code that doesn't make sense as it is. If there's
a 2-byte UTF-16 BOM or a 4-byte UTF-32 BOM, the following
text won't be 8-bit ASCII.
Rico Tzschichholz [Fri, 26 Apr 2013 09:00:10 +0000 (11:00 +0200)]
docs: Drop missing gsttcp-enumtypes.h to fix build
In addition to
7f6e1bdfdb2aad1694c24d3887f30e00f0c4c2e3
Wim Taymans [Fri, 26 Apr 2013 08:10:41 +0000 (10:10 +0200)]
sdp: use setter for the bandwidth
Sebastian Rasmussen [Thu, 25 Apr 2013 19:10:04 +0000 (21:10 +0200)]
sdp: Store a copy of the bandwidth string
Otherwise we will free a string later that does not belong to us.
Fixes https://bugzilla.gnome.org/show_bug.cgi?id=698888
Sebastian Dröge [Thu, 25 Apr 2013 15:04:50 +0000 (17:04 +0200)]
dmabuf: Use the fallback GstMemory copy function instead of our own
dup() on a dmabuf only gives a new handle, not a copy, thus doesn't
do what copy() is supposed to do.
Sebastian Dröge [Thu, 25 Apr 2013 14:23:14 +0000 (16:23 +0200)]
videoencoder: Try harder to push writable buffers downstream
For this release the corresponding GstVideoCodecFrame before
pushing the buffer. The buffer will now be writable unless
the subclass still holds another reference to the buffer or
the frame.
Sebastian Dröge [Thu, 25 Apr 2013 14:13:10 +0000 (16:13 +0200)]
videodecoder: Try harder to push writable buffers downstream
For this release the corresponding GstVideoCodecFrame before
pushing the buffer. The buffer will now be writable unless
the subclass still holds another reference to the buffer or
the frame.
Sebastian Dröge [Thu, 25 Apr 2013 07:20:29 +0000 (09:20 +0200)]
tcp: Use the generic marshaller instead of generating custom ones
Sebastian Dröge [Thu, 25 Apr 2013 07:05:55 +0000 (09:05 +0200)]
tcp: Add FIXME comment for 2.0 to rename "host" to "bind-address" for the server elements
Patricia Muscalu [Wed, 24 Apr 2013 12:13:43 +0000 (14:13 +0200)]
tests: add SDP modify test
Fixes https://bugzilla.gnome.org/show_bug.cgi?id=698558
Wim Taymans [Wed, 24 Apr 2013 12:12:41 +0000 (14:12 +0200)]
tests: avoid sdp boxed test leak
Wim Taymans [Wed, 24 Apr 2013 12:12:20 +0000 (14:12 +0200)]
sdp: don't leak the temp buffer
Wim Taymans [Wed, 24 Apr 2013 12:11:49 +0000 (14:11 +0200)]
sdp: NULL terminate the time array
Wim Taymans [Wed, 24 Apr 2013 11:57:23 +0000 (13:57 +0200)]
docs: add new sdp methods to docs
Wim Taymans [Wed, 24 Apr 2013 11:50:54 +0000 (13:50 +0200)]
def: update with new sdp symbols
Wim Taymans [Tue, 23 Apr 2013 13:23:05 +0000 (15:23 +0200)]
sdp: add more functions to modify the sdp message
Add functions to insert, replace and remove various sdp message fields
and structures.
See: https://bugzilla.gnome.org/show_bug.cgi?id=698558
Sebastian Dröge [Wed, 24 Apr 2013 09:10:34 +0000 (11:10 +0200)]
streamsynchronizer: Fix check for belonging to another stream
https://bugzilla.gnome.org/show_bug.cgi?id=697820
Sebastian Dröge [Wed, 24 Apr 2013 09:07:30 +0000 (11:07 +0200)]
streamsynchronizer: Create element with gst_element_factory_make()
Otherwise plugin_init() is not called and initialization is missing.
Tim-Philipp Müller [Tue, 23 Apr 2013 23:08:15 +0000 (00:08 +0100)]
typefindfunctions: fix crash in new MSS typefinder
Fixes icydemux test_first_buf_offset_when_merged_for_typefinding
unit test segfaulting on a NULL pointer.
Wim Taymans [Wed, 6 Mar 2013 15:44:45 +0000 (16:44 +0100)]
decodebin2: also remove the bytes limit
Remove the byte limit for adaptive http streaming. Because some fragments might
be very big, we might need a lot of buffering. I also suspect another problem
where data is actually missing and things go out of sync somehow.
Wim Taymans [Mon, 4 Mar 2013 15:19:18 +0000 (16:19 +0100)]
decodebin2: update buffer size in multiqueue
When we disable buffering in the more upstream multiqueue elements,
we need to also update the queue limits. In particular, the max_size_time should
be set to 0 or else we might simply deadlock.
Thiago Santos [Wed, 6 Feb 2013 11:41:19 +0000 (08:41 -0300)]
decodebin2: only allow 'lower' multiqueues to emit buffering messages
When we have a scenario of demuxers linked to demuxers, decodebin2
will create multiqueue at different levels of the pipeline. The problem
is that only the lowest multiqueue's should do the buffering messaging,
as they will handle with the raw streams data.
When all multiqueues are doing buffering, the upper ones can handle
large buffers that easily fill them, moving from 0% to 100% from
buffer to buffer, causing too much buffering messages to be posted.
This hangs the pipeline unnecessarily and might lead to deadlocks.
Thiago Santos [Wed, 6 Feb 2013 14:09:52 +0000 (11:09 -0300)]
decodebin2: do not handle the next-groups list as if it was a single item
Decodebin2's chains store a next_groups list that was being handled as
it could only have a single element. This is true for most of the
chaining streams scenarios where streams change not very often.
In more stressfull changing scenarios, like adaptive streams, those
changes can happen very often, and in short time intervals. This could
confuse decodebin2 as this list was always being used as a single
element list.
This patches makes it handle as a real list, using iteration instead
of picking the first element as the correct one always.
Thiago Santos [Fri, 1 Feb 2013 20:50:36 +0000 (17:50 -0300)]
decodebin2: preserve next groups order
Thiago Santos [Wed, 9 Jan 2013 21:39:49 +0000 (18:39 -0300)]
decodebin2: still report chain as drained when not 'handled'
Even if the chain hasn't been 'handled' in this switching round,
report it as drained so upper chains/groups know abou it.
This makes switching happen on upper levels of the groups/chain
trees
Thiago Santos [Thu, 11 Apr 2013 12:47:51 +0000 (09:47 -0300)]
typefind: add smoothstreaming manifest typefinding
Checks if the received XML is a smoothstreaming manifest
in both UTF8 and UTF16 formats. The check is made for a
SmoothStreamingMedia top level element.
Conflicts:
gst/typefind/gsttypefindfunctions.c
Sebastian Dröge [Tue, 23 Apr 2013 11:54:49 +0000 (13:54 +0200)]
streamsynchronizer: Don't consider a stream added for an already running one as "new"
Fixes enabling visualizations after disabling them after they were enabled already.
Sebastian Dröge [Tue, 23 Apr 2013 11:18:45 +0000 (13:18 +0200)]
streamsynchronizer: If a stream belongs to an already running stream, don't wait
This fixes enabling visualizations after the audio stream already started.
https://bugzilla.gnome.org/show_bug.cgi?id=697820
Tim-Philipp Müller [Mon, 22 Apr 2013 22:51:08 +0000 (23:51 +0100)]
Automatic update of common submodule
From 3cb3d3c to 5edcd85
Tim-Philipp Müller [Sun, 21 Apr 2013 18:02:42 +0000 (19:02 +0100)]
Update disted orc backup files
Generated with 0.4.17 now.
Tim-Philipp Müller [Sun, 21 Apr 2013 16:24:55 +0000 (17:24 +0100)]
uridecodebin: don't report 'no uri handler found' if the URI was rejected by a source
If a source element could be created for a URI, but all elements rejected
the URI for some reason, propagate the error from the URI handler instead
of reporting a 'no uri handler found for protocol xyz' error, which is
confusing. Fixes error reporting with dvb:// URIs when the channel config
file could not be found or not be parsed or the channel isn't listed.
https://bugzilla.gnome.org/show_bug.cgi?id=678892
Thibault Saunier [Fri, 19 Apr 2013 20:59:56 +0000 (17:59 -0300)]
adder: Do not try to wait for flush_stop after receiving a segment event
+ Add a simple test
Stefan Sauer [Thu, 18 Apr 2013 05:55:56 +0000 (07:55 +0200)]
volume: skip controlled processing if we have no timestamp
Sreerenj Balachandran [Thu, 18 Apr 2013 09:07:37 +0000 (12:07 +0300)]
playbin: use _plugin_feature_rank_compare API instead of duplicating the code.
Sreerenj Balachandran [Thu, 18 Apr 2013 09:03:29 +0000 (12:03 +0300)]
decodebin: use _plugin_feature_rank_compare API instead of duplicating the code.
Sebastian Dröge [Thu, 18 Apr 2013 07:58:09 +0000 (09:58 +0200)]
videoencoder: Simply setcaps function
Sebastian Dröge [Thu, 18 Apr 2013 07:54:48 +0000 (09:54 +0200)]
audioencoder: Ignore caps events if the input caps did not change
Sebastian Dröge [Thu, 18 Apr 2013 07:54:25 +0000 (09:54 +0200)]
audiodecoder: Ignore caps events if the input caps did not change
Stefan Sauer [Wed, 17 Apr 2013 05:51:38 +0000 (07:51 +0200)]
oggmux: add more logging and fix the object param for some logging
Use data->pad instead of pad for 'object'. Reduce indentation depth in a helper
with an early return.
Sebastian Dröge [Wed, 17 Apr 2013 08:35:22 +0000 (10:35 +0200)]
videometa: Extend GstVideoGLTextureUploadMeta
https://bugzilla.gnome.org/show_bug.cgi?id=697112
Tim-Philipp Müller [Wed, 17 Apr 2013 08:23:20 +0000 (09:23 +0100)]
docs: add some more audio macros
Philippe Normand [Thu, 28 Mar 2013 13:21:41 +0000 (14:21 +0100)]
uridecodebin: query bandwidth capability to source element
Use a scheduling query to check if the source element has some
bandwidth limitations. If this is the case on-disk buffering might be
used. If the source element doesn't handle the scheduling query then
fallback to checking the URI protocol against the hardcoded list of
protocols known to handle buffering already.
Fixes bug 693484.
Sebastian Dröge [Tue, 16 Apr 2013 12:09:43 +0000 (14:09 +0200)]
app: Don't use $(GST_PLUGIN_LIBTOOLFLAGS) for real libraries
Sebastian Dröge [Wed, 24 Oct 2012 10:10:44 +0000 (12:10 +0200)]
gst: Add better support for static plugins
Wim Taymans [Mon, 15 Apr 2013 13:37:17 +0000 (15:37 +0200)]
sdp: dynamically allocate buffers
Remove the static maximum buffer size and replace with dynamic allocation of as
much bytes as needed. Also avoids doing large allocations on the stack.
Wim Taymans [Mon, 15 Apr 2013 12:25:16 +0000 (14:25 +0200)]
sdp: add Since markers
Jose Antonio Santos Cadenas [Fri, 12 Apr 2013 07:35:34 +0000 (09:35 +0200)]
sdp: add boxed type for GstSDPMessage
Also added some tests of this improvement.
Fixes https://bugzilla.gnome.org/show_bug.cgi?id=697808
Matej Knopp [Tue, 9 Apr 2013 20:07:15 +0000 (22:07 +0200)]
riff: add format=WMV3 for WMV 3 caps
https://bugzilla.gnome.org/show_bug.cgi?id=697665
Sreerenj Balachandran [Mon, 15 Apr 2013 09:37:07 +0000 (12:37 +0300)]
playbin: use ascending order for name based sorting of pluginfeatures.
The compare_factories_func() should return negative value
if the rank of both PluginFeatures are equal and the name of
first PluginFeature comes before the second one (== ascending order).
Sreerenj Balachandran [Mon, 15 Apr 2013 09:20:09 +0000 (12:20 +0300)]
decodebin: use ascending order for name based sorting of pluginfeatures.
The _decode_bin_compare_factories_func() should return negative
value if the rank of both PluginFeatures are equal and the name of
first PluginFeature comes before the second one (== ascending order).
Sebastian Dröge [Mon, 15 Apr 2013 08:13:14 +0000 (10:13 +0200)]
audioringbuffer: Also reset segbase
Paul HENRYS [Wed, 10 Apr 2013 14:38:14 +0000 (16:38 +0200)]
audioringbuffer: Reset segdone when releasing audioringbuffer
https://bugzilla.gnome.org/show_bug.cgi?id=697723
Tom Greenwood [Wed, 10 Apr 2013 19:45:37 +0000 (20:45 +0100)]
rtpbasedepayload: Ignore caps events if the caps did not change
https://bugzilla.gnome.org/show_bug.cgi?id=697672
Sebastian Dröge [Mon, 15 Apr 2013 07:42:22 +0000 (09:42 +0200)]
videoencoder: Ignore caps events if the caps did not change
Tom Greenwood [Wed, 10 Apr 2013 18:07:00 +0000 (19:07 +0100)]
videodecoder: Ignore caps events if the caps did not change
https://bugzilla.gnome.org/show_bug.cgi?id=697672