platform/upstream/gstreamer.git
15 years agobaseaudiosink: use the internal clock time
Wim Taymans [Fri, 10 Apr 2009 19:49:45 +0000 (21:49 +0200)]
baseaudiosink: use the internal clock time

We can't assume that the internal clock time is the same as the function we
installed on our provided clock because somebody might have changed it.

15 years agoseek: handle clock-lost messages
Wim Taymans [Fri, 10 Apr 2009 12:12:53 +0000 (14:12 +0200)]
seek: handle clock-lost messages

When we receive a clock-lost message we need to pause and play to select a new
clock.

15 years agocheck: add a unit test for playbin2
Wim Taymans [Fri, 10 Apr 2009 11:44:40 +0000 (13:44 +0200)]
check: add a unit test for playbin2

Add unit test for playbin2 and include the refcount test in #577794.

15 years agoplaybin2: fix refcounting of visualisations
Wim Taymans [Fri, 10 Apr 2009 11:42:56 +0000 (13:42 +0200)]
playbin2: fix refcounting of visualisations

See #577794.

15 years agoplaysink: fix refcounting of custom elements
Wim Taymans [Fri, 10 Apr 2009 11:27:41 +0000 (13:27 +0200)]
playsink: fix refcounting of custom elements

Sink the custom sinks, let other elements we create be sunken by the bin we add
them to.
Fixes #577794.

15 years agocheck: fix appsink test
Wim Taymans [Fri, 10 Apr 2009 10:27:53 +0000 (12:27 +0200)]
check: fix appsink test

Fix the appsink test now that the method signature changed.

15 years agoplaybin2: handle missing input-selector
Wim Taymans [Fri, 10 Apr 2009 10:26:16 +0000 (12:26 +0200)]
playbin2: handle missing input-selector

Gracefully degrade and disable stream selection when input-selector is
missing.

15 years agoappsink: make callbacks return GstFlowReturn
Martin Samuelsson [Thu, 9 Apr 2009 21:46:17 +0000 (23:46 +0200)]
appsink: make callbacks return GstFlowReturn

Make the new_buffer and new_preroll callbacks return a GstFlowReturn so that
errors can be reported properly.
Fixes #577827.

15 years agoringbuffer: allow for custom commit functions
Wim Taymans [Thu, 9 Apr 2009 16:04:44 +0000 (18:04 +0200)]
ringbuffer: allow for custom commit functions

Allow subclasses to override the commit method.

15 years agobaseaudiosink: fix a small glitch after pause
Wim Taymans [Wed, 8 Apr 2009 16:04:22 +0000 (18:04 +0200)]
baseaudiosink: fix a small glitch after pause

After we pause the stream and interrupt the writeout to the ringbuffer, also adjust
the amount of output samples we consumed. We can't do this reliably with the
current API when we are doing trick modes but we can do the right thing for
normal playback.

15 years agoplaybin2: better error message on sink failure
Stefan Kost [Wed, 8 Apr 2009 13:43:27 +0000 (16:43 +0300)]
playbin2: better error message on sink failure

If we could create the sinks, but the don't work, don't send the missing plugin
message and report that the state-changed failed.

15 years agoaudiofilter: don't leak pad-template
Stefan Kost [Tue, 7 Apr 2009 19:38:29 +0000 (22:38 +0300)]
audiofilter: don't leak pad-template

gst_element_class_add_pad_template() does not take ownership.

15 years agoAutomatic update of common submodule
Felipe Contreras [Sat, 4 Apr 2009 18:18:38 +0000 (21:18 +0300)]
Automatic update of common submodule

From d0ea89e to b3941ea

15 years agonavigation/v4l: Don't use g_return_val_if_fail for computed/used values.
Edward Hervey [Sat, 4 Apr 2009 14:28:14 +0000 (16:28 +0200)]
navigation/v4l: Don't use g_return_val_if_fail for computed/used values.

15 years agotheoradec: return GST_CLOCK_TIME_NONE for negative framecounts.
Edward Hervey [Sun, 22 Mar 2009 08:46:37 +0000 (09:46 +0100)]
theoradec: return GST_CLOCK_TIME_NONE for negative framecounts.

This fixes most seeking issues when used with gnonlin.
Fixes #543591

15 years agoAutomatic update of common submodule
Edward Hervey [Sat, 4 Apr 2009 12:53:42 +0000 (14:53 +0200)]
Automatic update of common submodule

From f8b3d91 to d0ea89e

15 years agoplaybin2: don't leak selector when getting current stream numbers.
Michael Smith [Fri, 3 Apr 2009 17:51:42 +0000 (10:51 -0700)]
playbin2: don't leak selector when getting current stream numbers.

15 years agortsp: use fully qualified urls when using a proxy
Wim Taymans [Thu, 2 Apr 2009 20:28:55 +0000 (22:28 +0200)]
rtsp: use fully qualified urls when using a proxy

Use a fully qualified url when specifying the url for tunneled requests through
a proxy.
See #573173

15 years agonavigation: Extend the navigation interface
Jan Schmidt [Mon, 30 Mar 2009 23:54:30 +0000 (00:54 +0100)]
navigation: Extend the navigation interface

Add support for a set of standard commands that can be queried and executed to
support applications like DVD. Add query construction and parsing functions.
Add new messages that can be sent on the bus to provide notifications related
to commands, multiangle changes, and button highlight activity.
Add some helper functions to parse the existing GstNavigation events that
elements might receive.
Document it all and add unit tests.

15 years agoplaybin: Add simple 'raw decoding mode'.
Jan Schmidt [Wed, 4 Feb 2009 17:03:07 +0000 (17:03 +0000)]
playbin: Add simple 'raw decoding mode'.

Raw decoding mode removes almost all buffering in video and audio queues
when a source providing already decoded video/audio is detected, on the
possibly bogus assumption that such a source should provide sufficient
internal queueing. Fixes playback on some DVDs, and improves it
on all.

15 years agoignores: Ignore the videoscale check binary
Jan Schmidt [Thu, 2 Apr 2009 08:27:07 +0000 (09:27 +0100)]
ignores: Ignore the videoscale check binary

15 years agowin32: Add gst_rtsp_connection_set_proxy to the win32 exports
Jan Schmidt [Thu, 2 Apr 2009 11:13:57 +0000 (12:13 +0100)]
win32: Add gst_rtsp_connection_set_proxy to the win32 exports

15 years agoalsamixer: don't forget to release locks in a few places
Tim-Philipp Müller [Thu, 2 Apr 2009 09:42:19 +0000 (10:42 +0100)]
alsamixer: don't forget to release locks in a few places

Might fix #576585.

15 years agovideoscale: Don't read over line ends when taking the last Cr or Cb
Sebastian Dröge [Thu, 2 Apr 2009 09:10:12 +0000 (11:10 +0200)]
videoscale: Don't read over line ends when taking the last Cr or Cb

15 years agovideoscale: Don't write to few pixels and don't mix Cr and Cb
Sebastian Dröge [Thu, 2 Apr 2009 08:52:06 +0000 (10:52 +0200)]
videoscale: Don't write to few pixels and don't mix Cr and Cb

Fixes bug #577054.

15 years agoaudioresample: fix negotiation so that upstream can actually fixate to downstream...
Tim-Philipp Müller [Wed, 1 Apr 2009 14:15:57 +0000 (15:15 +0100)]
audioresample: fix negotiation so that upstream can actually fixate to downstream's rate

If one side has a preference for a particular sample rate or set of sample rates, we
should honour this in the caps we advertise and transform to and from, so that elements
actually know about the other side's sample rate preference and can negotiate to it
if supported. Also add unit test for this.

15 years agodocs: add a blurb about redirect messages to playbin2 docs
Tim-Philipp Müller [Thu, 26 Mar 2009 19:34:23 +0000 (19:34 +0000)]
docs: add a blurb about redirect messages to playbin2 docs

15 years agortsp: fix little typo in the comments
Wim Taymans [Wed, 1 Apr 2009 07:03:35 +0000 (09:03 +0200)]
rtsp: fix  little typo in the comments

15 years agortspconnection: make gst_rtsp_watch_queue_message() thread-safe
Tim-Philipp Müller [Tue, 31 Mar 2009 16:52:44 +0000 (17:52 +0100)]
rtspconnection: make gst_rtsp_watch_queue_message() thread-safe

People might queue messages from a thread other than the thread in which
the main context which this watch is attached is iterated from, so use
a GAsyncQueue instead of a GList, so g_list_append() doesn't trample
over list nodes just freed in the other thread. This just fixes issues
I've had with gst-rtsp-server. We might need more locking in various
places here.

15 years agortsp: clear the entire builder structure
Tim-Philipp Müller [Tue, 31 Mar 2009 17:13:19 +0000 (18:13 +0100)]
rtsp: clear the entire builder structure

And use structure instead of variable with sizeof when
clearing the rtsp message structure, for clarity.

15 years agodocs: fix typo in gst_rtsp_message_unset() API docs
Tim-Philipp Müller [Tue, 31 Mar 2009 16:56:24 +0000 (17:56 +0100)]
docs: fix typo in gst_rtsp_message_unset() API docs

15 years agortsp: add support for proxies
Wim Taymans [Tue, 31 Mar 2009 17:00:00 +0000 (19:00 +0200)]
rtsp: add support for proxies

Add suport for proxy servers. Currently only used for tunneled HTTP
connections without authentication.

15 years agoRevert "rtsp: reset whole message (was sizeof pointer instead of sizeof type)"
Wim Taymans [Tue, 31 Mar 2009 16:57:08 +0000 (18:57 +0200)]
Revert "rtsp: reset whole message (was sizeof pointer instead of sizeof type)"

This reverts commit 79de0b8d67df6fbbe79455adc2e06858295f5c03.

15 years agoxvimagesink: use xcontext->depth instead of bits in attr.max_value for colorkey
Stefan Kost [Thu, 26 Mar 2009 16:54:56 +0000 (18:54 +0200)]
xvimagesink: use xcontext->depth instead of bits in attr.max_value for colorkey

According to the drivers in http://cgit.freedesktop.org/xorg/driver/ we should
format the colorkey depending on xcontext->depth. This is what they will use to
interprete the value. The max_value in turn is usualy a constant regardless of
the depth.

15 years agortsp: reset whole message (was sizeof pointer instead of sizeof type)
Stefan Kost [Tue, 31 Mar 2009 09:22:14 +0000 (12:22 +0300)]
rtsp: reset whole message (was sizeof pointer instead of sizeof type)

15 years agodoc: Fix a typo in the GstMixer docs
Jan Schmidt [Mon, 30 Mar 2009 23:56:18 +0000 (00:56 +0100)]
doc: Fix a typo in the GstMixer docs

15 years agovideoscale: Fix linear scaling for one byte components
Sebastian Dröge [Sun, 29 Mar 2009 10:01:33 +0000 (12:01 +0200)]
videoscale: Fix linear scaling for one byte components

Fixes bug #577054.

15 years agovideoscale: Fix 4tap scaling of YUYV and friends
Sebastian Dröge [Sun, 29 Mar 2009 09:53:40 +0000 (11:53 +0200)]
videoscale: Fix 4tap scaling of YUYV and friends

15 years agovideoscale: Rewrite YUYV (and friends) scaling and don't read/write over line ends
Sebastian Dröge [Sat, 28 Mar 2009 15:08:44 +0000 (16:08 +0100)]
videoscale: Rewrite YUYV (and friends) scaling and don't read/write over line ends

Partially fixes bug #577054, there's just one issue left now.

15 years agovideoscale: Add some more unit tests
Sebastian Dröge [Sat, 28 Mar 2009 11:48:04 +0000 (12:48 +0100)]
videoscale: Add some more unit tests

15 years agovideoscale: Use bilinear instead of 4tap scaling for heights < 4
Sebastian Dröge [Sat, 28 Mar 2009 10:51:01 +0000 (11:51 +0100)]
videoscale: Use bilinear instead of 4tap scaling for heights < 4

Partially fixes bug #577054.

15 years agovideoscale: Don't read after the end of a line when lineary scaling YUYV/UYVY/RGB...
Sebastian Dröge [Sat, 28 Mar 2009 10:45:41 +0000 (11:45 +0100)]
videoscale: Don't read after the end of a line when lineary scaling YUYV/UYVY/RGB/RGBA

This case is for upscaling a frame with width=1
Partially fixes bug #577054.

15 years agovideoscale: Don't read after the end of a line when lineary scaling YUYV/UYVY
Sebastian Dröge [Sat, 28 Mar 2009 10:27:56 +0000 (11:27 +0100)]
videoscale: Don't read after the end of a line when lineary scaling YUYV/UYVY

Partially fixes bug #577054.

15 years agovideotestsrc: Initialize buffer memory with zeroes
Sebastian Dröge [Sat, 28 Mar 2009 09:40:43 +0000 (10:40 +0100)]
videotestsrc: Initialize buffer memory with zeroes

This prevents valgrind warnings when accessing the "x" parts
of xRGB and friends in other elements that handle (and can handle)
xRGB like ARGB (for example videoscale).

15 years agovideoscale: Add a lot of unit tests
Sebastian Dröge [Sat, 28 Mar 2009 09:25:12 +0000 (10:25 +0100)]
videoscale: Add a lot of unit tests

15 years agovideocale: Add support for video/x-raw-gray with bpp=depth=8
Sebastian Dröge [Sat, 28 Mar 2009 09:06:24 +0000 (10:06 +0100)]
videocale: Add support for video/x-raw-gray with bpp=depth=8

15 years agovideotestsrc: Add support for generating video/x-raw-gray with bpp=depth=8
Sebastian Dröge [Sat, 28 Mar 2009 09:01:00 +0000 (10:01 +0100)]
videotestsrc: Add support for generating video/x-raw-gray with bpp=depth=8

15 years agoffmpegcolorspace: video/x-raw-gray is the same as the YUV Y800 format
Sebastian Dröge [Sat, 28 Mar 2009 08:43:23 +0000 (09:43 +0100)]
ffmpegcolorspace: video/x-raw-gray is the same as the YUV Y800 format

15 years agovideoscale: Take the next luma value instead of every second next when scaling UYVY...
Sebastian Dröge [Fri, 27 Mar 2009 18:12:49 +0000 (19:12 +0100)]
videoscale: Take the next luma value instead of every second next when scaling UYVY and friends

15 years agovideoscale: Add support for v308 YUV colorspace
Sebastian Dröge [Fri, 27 Mar 2009 18:09:47 +0000 (19:09 +0100)]
videoscale: Add support for v308 YUV colorspace

15 years agovideoscale: Add my copyright to the 4tap scalers
Sebastian Dröge [Fri, 27 Mar 2009 12:15:11 +0000 (13:15 +0100)]
videoscale: Add my copyright to the 4tap scalers

15 years agovideoscale: Enable 4-tap scaling for all supported formats
Sebastian Dröge [Fri, 27 Mar 2009 12:14:17 +0000 (13:14 +0100)]
videoscale: Enable 4-tap scaling for all supported formats

15 years agovideoscale: Implement 4-tap scaling for RGB565 and RGB555
Sebastian Dröge [Fri, 27 Mar 2009 12:14:00 +0000 (13:14 +0100)]
videoscale: Implement 4-tap scaling for RGB565 and RGB555

15 years agovideoscale: Implement 4-tap scaling for UYVY
Sebastian Dröge [Fri, 27 Mar 2009 09:47:39 +0000 (10:47 +0100)]
videoscale: Implement 4-tap scaling for UYVY

15 years agovideoscale: Implement 4-tap scaling for YUY2 and YVYU
Sebastian Dröge [Fri, 27 Mar 2009 08:33:58 +0000 (09:33 +0100)]
videoscale: Implement 4-tap scaling for YUY2 and YVYU

15 years agovideoscale: Implement 4-tap scaling for RGB and BGR
Sebastian Dröge [Thu, 26 Mar 2009 21:14:53 +0000 (22:14 +0100)]
videoscale: Implement 4-tap scaling for RGB and BGR

15 years agovideoscale: Implement 4-tap scaling for RGBA and other 4 byte formats
Sebastian Dröge [Thu, 26 Mar 2009 21:08:26 +0000 (22:08 +0100)]
videoscale: Implement 4-tap scaling for RGBA and other 4 byte formats

15 years agotextoverlay: Fix drawing of UYVY text borders
Sebastian Dröge [Thu, 26 Mar 2009 10:02:41 +0000 (11:02 +0100)]
textoverlay: Fix drawing of UYVY text borders

15 years agotextoverlay: Add support for UYVY colorspace
Zeeshan Ali [Thu, 26 Mar 2009 09:36:27 +0000 (10:36 +0100)]
textoverlay: Add support for UYVY colorspace

Fixes bug #378094.

15 years agodecodebin2: do some more cleanup
Wim Taymans [Wed, 25 Mar 2009 18:01:45 +0000 (19:01 +0100)]
decodebin2: do some more cleanup

Free the groups when we go to READY.
Allow for NO_PREROLL elements.

15 years agortsp: start CSeq counting from 1 instead of 0
Wim Taymans [Wed, 25 Mar 2009 15:37:28 +0000 (16:37 +0100)]
rtsp: start CSeq counting from 1 instead of 0

Start counting from 1 instead of 0 as this is what most other clients
seem to do.

15 years agortsp: add ETag and If-Match headers
Wim Taymans [Wed, 25 Mar 2009 15:35:22 +0000 (16:35 +0100)]
rtsp: add ETag and If-Match headers

Add new headers, we need them for RealMedia support.

15 years agoxvimagesink: scale the colorkey components in case of 16bit visuals
Stefan Kost [Wed, 25 Mar 2009 12:16:25 +0000 (14:16 +0200)]
xvimagesink: scale the colorkey components in case of 16bit visuals

Use a default that won't be scales to 0,0,0

15 years agoaudiosrc: improve 'Dropped n samples' warning message
Tim-Philipp Müller [Wed, 25 Mar 2009 11:27:44 +0000 (11:27 +0000)]
audiosrc: improve 'Dropped n samples' warning message

15 years agoexamples: use new method to set flags
Wim Taymans [Tue, 24 Mar 2009 18:41:06 +0000 (19:41 +0100)]
examples: use new method to set flags

Use the new core method for setting object enum properties by name.

15 years agoplaybin2: add more support for subpictures
Wim Taymans [Tue, 24 Mar 2009 17:29:28 +0000 (18:29 +0100)]
playbin2: add more support for subpictures

15 years agoplaybin2: first support for subpictures
Wim Taymans [Tue, 24 Mar 2009 16:12:53 +0000 (17:12 +0100)]
playbin2: first support for subpictures

Add beginnings of subpicture support.

15 years agoseek: print tags from the different tracks
Wim Taymans [Tue, 24 Mar 2009 14:26:57 +0000 (15:26 +0100)]
seek: print tags from the different tracks

15 years agoplaybin2: blacklist subpictures for now
Wim Taymans [Tue, 24 Mar 2009 11:22:37 +0000 (12:22 +0100)]
playbin2: blacklist subpictures for now

Blacklist the subpictures until we add support for them.
Add some small debug info.
See #576408.

15 years agouridecodebin: expose more media types
Wim Taymans [Tue, 24 Mar 2009 11:19:30 +0000 (12:19 +0100)]
uridecodebin: expose more media types

Expose more media types from a raw source, such as the subpicture and various
text pads.
Small cleanups  and add some more debugging.
See #576408.

15 years agoplaybin2: rescan audio sinks for volume/mute
Wim Taymans [Tue, 24 Mar 2009 09:42:04 +0000 (10:42 +0100)]
playbin2: rescan audio sinks for volume/mute

Rescan the audio sinks for the mute and volume properties.
fixes #576180.

15 years agoplaybin2: fix reuse of the video chains
Wim Taymans [Mon, 23 Mar 2009 18:40:18 +0000 (19:40 +0100)]
playbin2: fix reuse of the video chains

When reusing playbin with visualisations, reset the async property on the video
sink because some sinks might dynamically recreate their sinks.
Fixes #576188

15 years agoplaybin2: allow dynamic swtiching of subtitles
Wim Taymans [Mon, 23 Mar 2009 16:37:48 +0000 (17:37 +0100)]
playbin2: allow dynamic swtiching of subtitles

When we have the textpad configured, enable and disable the subtitles by setting
the silent flag on the overlay element instead of trying to remove elements.
See #576187

15 years agotests: print some more info in the text example
Wim Taymans [Mon, 23 Mar 2009 15:59:36 +0000 (16:59 +0100)]
tests: print some more info in the text example

Print both the position and the running_time when the subtitle becomes available
in the application.

15 years agoplaybin2: fix dynamic switching of visualisations
Wim Taymans [Mon, 23 Mar 2009 15:04:27 +0000 (16:04 +0100)]
playbin2: fix dynamic switching of visualisations

Fix the switching of visualisations by requesting and releasing the tee request
pads on demand.
See #576187.

15 years agodocs: add examples for tcp elements, also use correct section name. Fixes #564139
Stefan Kost [Mon, 23 Mar 2009 14:19:11 +0000 (16:19 +0200)]
docs: add examples for tcp elements, also use correct section name. Fixes #564139

Updated the examples in the README to actually work. Add them to api docs. Tests
the api-docs and fix the section names to make the docs actualy show up.
The example for "tcpserversrc" needs review (might be an element bug).

15 years agoindent: fix damange that gst-indent did some time ago
Stefan Kost [Tue, 17 Mar 2009 07:14:02 +0000 (09:14 +0200)]
indent: fix damange that gst-indent did some time ago

15 years agoplaybin2: fix linking order
Wim Taymans [Mon, 23 Mar 2009 14:27:27 +0000 (15:27 +0100)]
playbin2: fix linking order

Link after doing the state change and unlink before shutting down. Makes the
window for causing races in toggling the visualisations smaller.
See #576187.

15 years agouridecodebin: reset counter
Wim Taymans [Mon, 23 Mar 2009 11:26:05 +0000 (12:26 +0100)]
uridecodebin: reset counter

reset the number of pending dynamic operations back to 0 when we reuse
uridecodebin.
Fixes #576190

15 years agotheoradec: Use GST_CLOCK_TIME_NONE for invalid positions. Fixes #543591
Edward Hervey [Mon, 23 Mar 2009 10:38:53 +0000 (11:38 +0100)]
theoradec: Use GST_CLOCK_TIME_NONE for invalid positions. Fixes #543591

The problem was that previously we didn't check whether _theora_granule_frame
returned a negative framecount or not, resulting in bogus timestamps.

15 years agovorbisenc: Set caps on non-header ouput buffers.
René Stadler [Sat, 21 Mar 2009 08:46:28 +0000 (09:46 +0100)]
vorbisenc: Set caps on non-header ouput buffers.

Fixes #576142.

15 years agoseek: Add some more debug
Wim Taymans [Fri, 20 Mar 2009 15:13:06 +0000 (16:13 +0100)]
seek: Add some more debug

Add some more info about the selected streams.

15 years agodecodebin2: a pad starts out being not drained.
Wim Taymans [Fri, 20 Mar 2009 14:47:47 +0000 (15:47 +0100)]
decodebin2: a pad starts out being not drained.

Mark a new pad as not drained until we get EOS on it.

15 years agowin32: fix seeking in large files
LRN [Fri, 20 Mar 2009 13:17:19 +0000 (14:17 +0100)]
win32: fix seeking in large files

Fix Seeking in large files by using the 64-bit seek functions.
Fixes #576019

15 years agodecodebin2: recover from failing to add a pad
Wim Taymans [Thu, 19 Mar 2009 19:31:01 +0000 (20:31 +0100)]
decodebin2: recover from failing to add a pad

When we cannot add a pad to the decodebin2 for some reason, print a warning but
continue adding the remaining pads.

15 years agodecodebin2: more cleanups and docs.
Wim Taymans [Thu, 19 Mar 2009 18:35:15 +0000 (19:35 +0100)]
decodebin2: more cleanups and docs.

Add some more comments and use g_list_prepend().

15 years agodecodebin2: refactoring and race fixes
Wim Taymans [Thu, 19 Mar 2009 18:19:38 +0000 (19:19 +0100)]
decodebin2: refactoring and race fixes

Refactor some code so that we can take the right locks and in the right order.
Fixes quite a bit of races already.

15 years agoplaybin2: remove the group cond + cleanups
Wim Taymans [Thu, 19 Mar 2009 18:03:25 +0000 (19:03 +0100)]
playbin2: remove the group cond + cleanups

Remove the group GCond that we used for waiting for groups to finish because we
use pad blocking on the selectors and counters instead for waiting for the
groups to complete.

remove the obsolete about_to_finish variable set while emiting the
about-to-finish signal and fix some old comments.

We don't need to take the playbin lock when querying the uridecodebin.

15 years agoicles: print better error and warning messages
Wim Taymans [Wed, 18 Mar 2009 09:45:50 +0000 (10:45 +0100)]
icles: print better error and warning messages

--

15 years agortsp: Use GLib base64 functions and deprecate gst_rtsp_base64_encode
Sebastian Dröge [Tue, 17 Mar 2009 21:53:44 +0000 (22:53 +0100)]
rtsp: Use GLib base64 functions and deprecate gst_rtsp_base64_encode

This also fixes another instance of CVE-2008-4316.

15 years agooggdemux: report -1 for duration in push mode
Wim Taymans [Tue, 17 Mar 2009 18:53:44 +0000 (19:53 +0100)]
oggdemux: report -1 for duration in push mode

In push mode we must return TRUE from the duration query with a value of -1
meaning that we know that we don't know the duration.

15 years agodecodebin2: add extra dynamic ref for demuxers
Wim Taymans [Tue, 17 Mar 2009 18:09:02 +0000 (19:09 +0100)]
decodebin2: add extra dynamic ref for demuxers

When we make a group connected to a demuxer, keep an extra dynamic refcount for
the group which is only decremented when no_more_pads or a multiqueue overrun is
detected. This way we avoid a race between exposing the group while more dynamic
refs are added from new pads.

Fixes #575588.

15 years agoplaybin2: sync state of the sink correctly
Wim Taymans [Tue, 17 Mar 2009 14:39:23 +0000 (15:39 +0100)]
playbin2: sync state of the sink correctly

Sync the state of the newly added chains to the state of the parent sink element
to avoid lost async-start messages. Fixes cdda:// async-done message storm.

15 years agoplaybin2: return NOT_LINKED for unselected streams
Wim Taymans [Tue, 17 Mar 2009 10:54:40 +0000 (11:54 +0100)]
playbin2: return NOT_LINKED for unselected streams

When streams are not selected in the selector, return NOT_LINKED so that
upstream elements can skip decoding. Only do this for audio and video pads
because for text streams the overhead is smaller and they could come from
external files.

15 years agoplaybin: set custom text sink properties
Wim Taymans [Tue, 17 Mar 2009 10:51:58 +0000 (11:51 +0100)]
playbin: set custom text sink properties

Set the custom sink async=FALSE to not make it participate in preroll because we
are dealing with sparse streams.
Try to set sync=TRUE on the custom text sink.

15 years agoexample: use appsink instead of fakesink
Wim Taymans [Tue, 17 Mar 2009 10:30:58 +0000 (11:30 +0100)]
example: use appsink instead of fakesink

Use appsink instead of fakesink to get the subtitles.
Make things more pretty.

15 years agoexamples: add example of intercepting subtitles
Wim Taymans [Tue, 17 Mar 2009 10:24:00 +0000 (11:24 +0100)]
examples: add example of intercepting subtitles

Add an example of how to install a custom sink for receiving subtitles in
playbin2.

15 years agotests: fix include in the appsink test
Wim Taymans [Tue, 17 Mar 2009 10:03:57 +0000 (11:03 +0100)]
tests: fix include in the appsink test

Fix dist by doing the right include.

15 years agoplaybin2: don't try to set invalid stream numbers
Wim Taymans [Mon, 16 Mar 2009 15:42:18 +0000 (16:42 +0100)]
playbin2: don't try to set invalid stream numbers

Fix a problem with setting the stream numbers because we check for the wrong
range.
See #575239.

15 years agoplaybin2: release the shutdown lock
Wim Taymans [Mon, 16 Mar 2009 15:16:30 +0000 (16:16 +0100)]
playbin2: release the shutdown lock

Release the shutdown lock when we wait for other groups to complete or else we
have a deadlock when the other group completes and tries to grab the shutdown
lock.
Fixes #575550.