aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSebastian Dröge <sebastian@centricular.com>2014-06-22 17:41:01 +0200
committerSebastian Dröge <sebastian@centricular.com>2014-06-22 17:41:01 +0200
commitdba3a9c7b379fce9ae44e4395eaad303b4557177 (patch)
tree7ab1b67895f1c2dea3448551fa2c6a0463296abf
parent7eb64336dfd22cad136c0be861451106f395589c (diff)
parent87918580293e8928f8721ec5885c40d74cc358e2 (diff)
Merge tag 'upstream/1.3.3' into debian-experimental
Upstream version 1.3.3
-rw-r--r--ChangeLog402
-rw-r--r--NEWS26
-rw-r--r--RELEASE47
-rwxr-xr-xconfigure36
-rw-r--r--configure.ac6
-rw-r--r--docs/libs/gst-plugins-base-libs-docs.sgml1
-rw-r--r--docs/libs/html/api-index-full.html72
-rw-r--r--docs/libs/html/gst-plugins-base-libs-1.0.devhelp237
-rw-r--r--docs/libs/html/gst-plugins-base-libs-gstaudiobasesrc.html2
-rw-r--r--docs/libs/html/gst-plugins-base-libs-gstaudiocdsrc.html2
-rw-r--r--docs/libs/html/gst-plugins-base-libs-gstnavigation.html1572
-rw-r--r--docs/libs/html/gst-plugins-base-libs-gstpluginsbaseversion.html2
-rw-r--r--docs/libs/html/gst-plugins-base-libs-gstvideoutils.html4
-rw-r--r--docs/libs/html/gstreamer-libs-hierarchy.html6
-rw-r--r--docs/libs/html/gstreamer-plugins-base.html4
-rw-r--r--docs/libs/html/gstreamer-video.html4
-rw-r--r--docs/libs/html/index.html6
-rw-r--r--docs/libs/html/index.sgml45
-rw-r--r--docs/plugins/gst-plugins-base-plugins-docs.sgml2
-rw-r--r--docs/plugins/gst-plugins-base-plugins-sections.txt61
-rw-r--r--docs/plugins/html/ch01.html6
-rw-r--r--docs/plugins/html/gst-plugins-base-plugins-1.0.devhelp2131
-rw-r--r--docs/plugins/html/gst-plugins-base-plugins-playbin.html4
-rw-r--r--docs/plugins/html/gst-plugins-base-plugins-playsink.html575
-rw-r--r--docs/plugins/html/gst-plugins-base-plugins-plugin-adder.html2
-rw-r--r--docs/plugins/html/gst-plugins-base-plugins-plugin-alsa.html2
-rw-r--r--docs/plugins/html/gst-plugins-base-plugins-plugin-app.html2
-rw-r--r--docs/plugins/html/gst-plugins-base-plugins-plugin-audioconvert.html2
-rw-r--r--docs/plugins/html/gst-plugins-base-plugins-plugin-audiorate.html2
-rw-r--r--docs/plugins/html/gst-plugins-base-plugins-plugin-audioresample.html2
-rw-r--r--docs/plugins/html/gst-plugins-base-plugins-plugin-audiotestsrc.html2
-rw-r--r--docs/plugins/html/gst-plugins-base-plugins-plugin-cdparanoia.html2
-rw-r--r--docs/plugins/html/gst-plugins-base-plugins-plugin-encoding.html2
-rw-r--r--docs/plugins/html/gst-plugins-base-plugins-plugin-gio.html2
-rw-r--r--docs/plugins/html/gst-plugins-base-plugins-plugin-libvisual.html2
-rw-r--r--docs/plugins/html/gst-plugins-base-plugins-plugin-ogg.html2
-rw-r--r--docs/plugins/html/gst-plugins-base-plugins-plugin-pango.html2
-rw-r--r--docs/plugins/html/gst-plugins-base-plugins-plugin-playback.html6
-rw-r--r--docs/plugins/html/gst-plugins-base-plugins-plugin-subparse.html2
-rw-r--r--docs/plugins/html/gst-plugins-base-plugins-plugin-tcp.html2
-rw-r--r--docs/plugins/html/gst-plugins-base-plugins-plugin-theora.html2
-rw-r--r--docs/plugins/html/gst-plugins-base-plugins-plugin-typefindfunctions.html2
-rw-r--r--docs/plugins/html/gst-plugins-base-plugins-plugin-videoconvert.html2
-rw-r--r--docs/plugins/html/gst-plugins-base-plugins-plugin-videorate.html2
-rw-r--r--docs/plugins/html/gst-plugins-base-plugins-plugin-videoscale.html2
-rw-r--r--docs/plugins/html/gst-plugins-base-plugins-plugin-videotestsrc.html2
-rw-r--r--docs/plugins/html/gst-plugins-base-plugins-plugin-volume.html2
-rw-r--r--docs/plugins/html/gst-plugins-base-plugins-plugin-vorbis.html2
-rw-r--r--docs/plugins/html/gst-plugins-base-plugins-plugin-ximagesink.html2
-rw-r--r--docs/plugins/html/gst-plugins-base-plugins-plugin-xvimagesink.html2
-rw-r--r--docs/plugins/html/gst-plugins-base-plugins-streamsynchronizer.html159
-rw-r--r--docs/plugins/html/gst-plugins-base-plugins-subtitleoverlay.html10
-rw-r--r--docs/plugins/html/gst-plugins-base-plugins-tcpclientsink.html6
-rw-r--r--docs/plugins/html/gst-plugins-base-plugins-tcpclientsrc.html6
-rw-r--r--docs/plugins/html/gst-plugins-base-plugins-tcpserversink.html6
-rw-r--r--docs/plugins/html/gst-plugins-base-plugins-tcpserversrc.html6
-rw-r--r--docs/plugins/html/gst-plugins-base-plugins-textoverlay.html4
-rw-r--r--docs/plugins/html/gst-plugins-base-plugins-textrender.html4
-rw-r--r--docs/plugins/html/gst-plugins-base-plugins-theoradec.html4
-rw-r--r--docs/plugins/html/gst-plugins-base-plugins-theoraenc.html4
-rw-r--r--docs/plugins/html/gst-plugins-base-plugins-theoraparse.html4
-rw-r--r--docs/plugins/html/gst-plugins-base-plugins-timeoverlay.html4
-rw-r--r--docs/plugins/html/gst-plugins-base-plugins-uridecodebin.html32
-rw-r--r--docs/plugins/html/gst-plugins-base-plugins-videorate.html6
-rw-r--r--docs/plugins/html/gst-plugins-base-plugins-videoscale.html8
-rw-r--r--docs/plugins/html/gst-plugins-base-plugins-videotestsrc.html8
-rw-r--r--docs/plugins/html/gst-plugins-base-plugins-volume.html6
-rw-r--r--docs/plugins/html/gst-plugins-base-plugins-vorbisdec.html4
-rw-r--r--docs/plugins/html/gst-plugins-base-plugins-vorbisenc.html4
-rw-r--r--docs/plugins/html/gst-plugins-base-plugins-vorbisparse.html4
-rw-r--r--docs/plugins/html/gst-plugins-base-plugins-vorbistag.html4
-rw-r--r--docs/plugins/html/gst-plugins-base-plugins-ximagesink.html4
-rw-r--r--docs/plugins/html/gst-plugins-base-plugins-xvimagesink.html4
-rw-r--r--docs/plugins/html/index.html8
-rw-r--r--docs/plugins/html/index.sgml38
-rw-r--r--docs/plugins/inspect/plugin-adder.xml2
-rw-r--r--docs/plugins/inspect/plugin-alsa.xml2
-rw-r--r--docs/plugins/inspect/plugin-app.xml2
-rw-r--r--docs/plugins/inspect/plugin-audioconvert.xml2
-rw-r--r--docs/plugins/inspect/plugin-audiorate.xml2
-rw-r--r--docs/plugins/inspect/plugin-audioresample.xml2
-rw-r--r--docs/plugins/inspect/plugin-audiotestsrc.xml2
-rw-r--r--docs/plugins/inspect/plugin-cdparanoia.xml2
-rw-r--r--docs/plugins/inspect/plugin-encoding.xml2
-rw-r--r--docs/plugins/inspect/plugin-gio.xml2
-rw-r--r--docs/plugins/inspect/plugin-ivorbisdec.xml2
-rw-r--r--docs/plugins/inspect/plugin-libvisual.xml2
-rw-r--r--docs/plugins/inspect/plugin-ogg.xml2
-rw-r--r--docs/plugins/inspect/plugin-pango.xml2
-rw-r--r--docs/plugins/inspect/plugin-playback.xml2
-rw-r--r--docs/plugins/inspect/plugin-subparse.xml2
-rw-r--r--docs/plugins/inspect/plugin-tcp.xml2
-rw-r--r--docs/plugins/inspect/plugin-theora.xml2
-rw-r--r--docs/plugins/inspect/plugin-typefindfunctions.xml2
-rw-r--r--docs/plugins/inspect/plugin-videoconvert.xml2
-rw-r--r--docs/plugins/inspect/plugin-videorate.xml2
-rw-r--r--docs/plugins/inspect/plugin-videoscale.xml2
-rw-r--r--docs/plugins/inspect/plugin-videotestsrc.xml2
-rw-r--r--docs/plugins/inspect/plugin-volume.xml2
-rw-r--r--docs/plugins/inspect/plugin-vorbis.xml2
-rw-r--r--docs/plugins/inspect/plugin-ximagesink.xml2
-rw-r--r--docs/plugins/inspect/plugin-xvimagesink.xml2
-rw-r--r--ext/alsa/gstalsasink.c23
-rw-r--r--ext/ogg/gstoggdemux.c117
-rw-r--r--ext/ogg/gstoggdemux.h3
-rw-r--r--ext/ogg/gstoggstream.c2
-rw-r--r--ext/theora/gsttheoraenc.c2
-rw-r--r--ext/vorbis/gstvorbisenc.c1
-rw-r--r--gst-libs/gst/allocators/gstdmabuf.c2
-rw-r--r--gst-libs/gst/app/gstappsrc.c21
-rw-r--r--gst-libs/gst/audio/audio-format.c2
-rw-r--r--gst-libs/gst/audio/gstaudiodecoder.c60
-rw-r--r--gst-libs/gst/audio/gstaudioencoder.c24
-rw-r--r--gst-libs/gst/sdp/gstmikey.c7
-rw-r--r--gst-libs/gst/video/gstvideodecoder.c37
-rw-r--r--gst-libs/gst/video/gstvideoencoder.c38
-rw-r--r--gst-libs/gst/video/video-info.c13
-rw-r--r--gst-plugins-base.doap12
-rw-r--r--gst-plugins-base.spec2
-rw-r--r--gst/encoding/gststreamsplitter.c33
-rw-r--r--gst/playback/gstdecodebin2.c81
-rw-r--r--gst/playback/gsturidecodebin.c56
-rw-r--r--gst/tcp/gsttcpclientsrc.c12
-rw-r--r--gst/tcp/gsttcpserversrc.c22
-rw-r--r--gst/videoscale/vs_fill_borders.c18
-rw-r--r--gst/videoscale/vs_image.h2
-rw-r--r--po/af.gmobin555 -> 555 bytes
-rw-r--r--po/af.po2
-rw-r--r--po/az.gmobin616 -> 616 bytes
-rw-r--r--po/az.po2
-rw-r--r--po/bg.gmobin15986 -> 15986 bytes
-rw-r--r--po/bg.po2
-rw-r--r--po/ca.gmobin12557 -> 12557 bytes
-rw-r--r--po/ca.po2
-rw-r--r--po/cs.gmobin15222 -> 15222 bytes
-rw-r--r--po/cs.po2
-rw-r--r--po/da.gmobin14195 -> 14590 bytes
-rw-r--r--po/da.po20
-rw-r--r--po/de.gmobin14887 -> 15322 bytes
-rw-r--r--po/de.po18
-rw-r--r--po/el.gmobin16109 -> 16109 bytes
-rw-r--r--po/el.po2
-rw-r--r--po/en_GB.gmobin559 -> 559 bytes
-rw-r--r--po/en_GB.po2
-rw-r--r--po/eo.gmobin3409 -> 3409 bytes
-rw-r--r--po/eo.po2
-rw-r--r--po/es.gmobin12536 -> 12536 bytes
-rw-r--r--po/es.po2
-rw-r--r--po/eu.gmobin8196 -> 8196 bytes
-rw-r--r--po/eu.po2
-rw-r--r--po/fi.gmobin11553 -> 11553 bytes
-rw-r--r--po/fi.po2
-rw-r--r--po/fr.gmobin12930 -> 12930 bytes
-rw-r--r--po/fr.po2
-rw-r--r--po/gl.gmobin13234 -> 13234 bytes
-rw-r--r--po/gl.po2
-rw-r--r--po/gst-plugins-base-1.0.pot36
-rw-r--r--po/hr.gmobin11851 -> 11851 bytes
-rw-r--r--po/hr.po2
-rw-r--r--po/hu.gmobin14878 -> 15315 bytes
-rw-r--r--po/hu.po18
-rw-r--r--po/id.gmobin14269 -> 14669 bytes
-rw-r--r--po/id.po16
-rw-r--r--po/it.gmobin8432 -> 8432 bytes
-rw-r--r--po/it.po2
-rw-r--r--po/ja.gmobin10257 -> 10257 bytes
-rw-r--r--po/ja.po2
-rw-r--r--po/lt.gmobin6356 -> 6356 bytes
-rw-r--r--po/lt.po2
-rw-r--r--po/lv.gmobin14627 -> 14627 bytes
-rw-r--r--po/lv.po2
-rw-r--r--po/nb.gmobin14007 -> 14007 bytes
-rw-r--r--po/nb.po2
-rw-r--r--po/nl.gmobin14663 -> 15105 bytes
-rw-r--r--po/nl.po18
-rw-r--r--po/or.gmobin649 -> 649 bytes
-rw-r--r--po/or.po2
-rw-r--r--po/pl.gmobin14737 -> 15182 bytes
-rw-r--r--po/pl.po18
-rw-r--r--po/pt_BR.gmobin15350 -> 15350 bytes
-rw-r--r--po/pt_BR.po2
-rw-r--r--po/ro.gmobin7912 -> 7912 bytes
-rw-r--r--po/ro.po2
-rw-r--r--po/ru.gmobin18379 -> 18951 bytes
-rw-r--r--po/ru.po20
-rw-r--r--po/sk.gmobin13990 -> 13990 bytes
-rw-r--r--po/sk.po2
-rw-r--r--po/sl.gmobin12719 -> 12719 bytes
-rw-r--r--po/sl.po2
-rw-r--r--po/sq.gmobin568 -> 568 bytes
-rw-r--r--po/sq.po2
-rw-r--r--po/sr.gmobin18700 -> 19225 bytes
-rw-r--r--po/sr.po21
-rw-r--r--po/sv.gmobin7965 -> 7965 bytes
-rw-r--r--po/sv.po2
-rw-r--r--po/tr.gmobin12710 -> 12710 bytes
-rw-r--r--po/tr.po2
-rw-r--r--po/uk.gmobin19449 -> 20089 bytes
-rw-r--r--po/uk.po18
-rw-r--r--po/vi.gmobin16577 -> 16577 bytes
-rw-r--r--po/vi.po2
-rw-r--r--po/zh_CN.gmobin5928 -> 5928 bytes
-rw-r--r--po/zh_CN.po2
-rw-r--r--tests/check/elements/decodebin.c94
-rw-r--r--tests/check/libs/audiodecoder.c233
-rw-r--r--tests/check/libs/audioencoder.c105
-rw-r--r--tests/check/libs/video.c38
-rw-r--r--tests/check/libs/videodecoder.c257
-rw-r--r--tests/check/libs/videoencoder.c104
-rw-r--r--tools/gst-play.c4
-rw-r--r--win32/common/_stdint.h2
-rw-r--r--win32/common/config.h8
212 files changed, 4613 insertions, 593 deletions
diff --git a/ChangeLog b/ChangeLog
index 4131681..6a62659 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,9 +1,407 @@
+=== release 1.3.3 ===
+
+2014-06-22 Sebastian Dröge <slomo@coaxion.net>
+
+ * configure.ac:
+ releasing 1.3.3
+
+2014-06-22 14:23:32 +0200 Sebastian Dröge <sebastian@centricular.com>
+
+ * po/da.po:
+ * po/de.po:
+ * po/hu.po:
+ * po/id.po:
+ * po/nl.po:
+ * po/pl.po:
+ * po/ru.po:
+ * po/sr.po:
+ * po/uk.po:
+ po: Update translations
+
+2014-06-20 11:00:14 +0200 Sebastian Dröge <sebastian@centricular.com>
+
+ * gst-libs/gst/audio/gstaudiodecoder.c:
+ * tests/check/libs/audiodecoder.c:
+ audiodecoder: Don't be too picky about the output frame counter
+ With most decoder libraries, and especially when accessing codecs via
+ OpenMAX or similar APIs, we don't have the ability to properly related
+ the output buffers to a number of input samples. And could e.g. get
+ a fractional number of input buffers decoded at a time.
+ Previously this would in the end lead to an error message and stopped
+ playback. Change it to a warning message instead and try to handle it
+ gracefully. In theory the subclass can now get timestamp tracking
+ wrong if it completely misuses the API, but if on average it behaves
+ correct (and gst-omx and others do) it will continue to work properly.
+ Also add a test for the new behaviour.
+ We don't change it in the encoder yet as that requires more internal logic
+ changes AFAIU and I'm not aware of a case where this was a problem so far.
+
+2014-06-12 12:36:26 +0200 Michael Olbrich <m.olbrich@pengutronix.de>
+
+ * gst/tcp/gsttcpserversrc.c:
+ tcpserversrc: close the server socket after accepting a connection
+ g_socket_accept() is only called once for a server socket. So
+ keeping the socket open ist just confusing possible clients.
+ https://bugzilla.gnome.org/show_bug.cgi?id=731566
+
+2014-06-13 10:04:47 +0100 Tim-Philipp Müller <tim@centricular.com>
+
+ * gst/tcp/gsttcpclientsrc.c:
+ tcpclientsrc: return FLUSHING when select() is canceled
+ https://bugzilla.gnome.org/show_bug.cgi?id=731567
+
+2014-06-12 13:23:29 +0200 Michael Olbrich <m.olbrich@pengutronix.de>
+
+ * gst/tcp/gsttcpserversrc.c:
+ tcpserversrc: return FLOW_FLUSHING instead of an error when accept/select is canceled
+ Canceling the accept/select happens when the source is shut down. This is
+ not an error and the GST_FLOW_ERROR causes problems when only part of the
+ pipeline is shut down.
+ https://bugzilla.gnome.org/show_bug.cgi?id=731567
+
+2014-06-12 11:55:59 +0200 Edward Hervey <bilboed@bilboed.com>
+
+ * gst-libs/gst/sdp/gstmikey.c:
+ mikey: Fix Wall to NTP conversion
+ We are scaling from a unit in microseconds to a unit in ((1 << 32) per seconds).
+ We therefore scale the microseconds values by:
+ value of a second in the target unit (1 << 32)
+ --------------------------------------------------------------
+ value of a second in the origin format (1 000 000 microsecond)
+
+2014-06-06 12:18:49 +0100 Vincent Penquerc'h <vincent.penquerch@collabora.co.uk>
+
+ * ext/ogg/gstoggdemux.c:
+ oggdemux: allow unset seek stop time in push mode
+
+2014-06-11 12:50:23 +0100 Tim-Philipp Müller <tim@centricular.com>
+
+ * docs/plugins/gst-plugins-base-plugins-docs.sgml:
+ * docs/plugins/gst-plugins-base-plugins-sections.txt:
+ docs: add streamsynchronizer to documentation
+
+2014-06-11 12:43:35 +0100 Tim-Philipp Müller <tim@centricular.com>
+
+ * docs/plugins/gst-plugins-base-plugins-docs.sgml:
+ * docs/plugins/gst-plugins-base-plugins-sections.txt:
+ docs: add playsink element to documentation
+
+2014-06-11 10:53:50 +0100 Tim-Philipp Müller <tim@centricular.com>
+
+ * docs/libs/gst-plugins-base-libs-docs.sgml:
+ docs: add navigation interface to docs
+
+2014-06-10 12:59:53 -0300 Thiago Santos <ts.santos@sisa.samsung.com>
+
+ * gst-libs/gst/app/gstappsrc.c:
+ appsrc: add send_event handler for flushing
+ Adds a send_event handling for allowing appsrc to flush its internal
+ data, allowing users to flush the pipeline without setting it to null.
+ https://bugzilla.gnome.org/show_bug.cgi?id=724231
+
+2014-06-09 21:05:00 -0300 Thiago Santos <ts.santos@sisa.samsung.com>
+
+ * gst/videoscale/vs_fill_borders.c:
+ * gst/videoscale/vs_image.h:
+ videoscale: vs_image: strides are a gsize
+ The strides that are set from the GstVideoInfo structs are
+ a gsize. Using an int can cause overflows when dealing with large
+ enough images
+ https://bugzilla.gnome.org/show_bug.cgi?id=731195
+
+2014-06-09 19:44:56 -0300 Thiago Santos <ts.santos@sisa.samsung.com>
+
+ * gst-libs/gst/video/video-info.c:
+ * tests/check/libs/video.c:
+ video: avoid overflows when doing int operations for size
+ size is a gsize, so cast the operands to it to avoid overflows
+ and setting wrong value to the video size.
+ Includes tests.
+ https://bugzilla.gnome.org/show_bug.cgi?id=731195
+
+2014-06-09 10:53:03 +0200 Edward Hervey <bilboed@bilboed.com>
+
+ * ext/theora/gsttheoraenc.c:
+ theoraenc: Remove unneeded check
+ running timestamps are guaranteed to be positive and valid since the
+ GstVideoEncoder base class will clip incoming buffers
+ CID #1139797
+
+2014-06-09 10:38:53 +0200 Edward Hervey <bilboed@bilboed.com>
+
+ * ext/vorbis/gstvorbisenc.c:
+ vorbisenc: add missing va_end in variadic function
+ Coverity 1139944
+
+2014-06-06 10:35:31 +0100 Vincent Penquerc'h <vincent.penquerch@collabora.co.uk>
+
+ * tests/check/libs/videodecoder.c:
+ tests: fix uninitialized variable use in video decoder test
+
+2014-06-05 15:35:31 +0200 Sebastian Dröge <sebastian@centricular.com>
+
+ * gst/playback/gsturidecodebin.c:
+ uridecodebin: Also catch CODEC_NOT_FOUND errors and delay them until all decodebins are done
+
+2014-06-04 17:00:34 +0200 Sebastian Dröge <sebastian@centricular.com>
+
+ * gst/playback/gsturidecodebin.c:
+ uridecodebin: Ignore missing-plugin messages unless all decodebins post one
+ When playing RTSP streams there will be one decodebin per stream. If some of
+ them fail because of a missing plugin we should not fail completely but play
+ the supported streams at least.
+ https://bugzilla.gnome.org/show_bug.cgi?id=730868
+
+2014-06-04 14:14:14 +0200 Sebastian Dröge <sebastian@centricular.com>
+
+ * gst/playback/gstdecodebin2.c:
+ decodebin: Do async-done on expose errors too
+
+2014-05-20 12:28:15 +0200 Michael Olbrich <m.olbrich@pengutronix.de>
+
+ * gst-libs/gst/allocators/gstdmabuf.c:
+ dmabuf: fix checking mmap flags
+ A simple '&' is not sufficiant. With mmapping_flags == PROT_READ and
+ prot == PROT_READ|PROT_WRITE the check produces the wrong result.
+ Change the check to make sure that prot is a subset of mmapping_flags.
+ https://bugzilla.gnome.org/show_bug.cgi?id=730559
+
+2014-06-03 15:16:44 +0100 Vincent Penquerc'h <vincent.penquerch@collabora.co.uk>
+
+ * ext/alsa/gstalsasink.c:
+ alsasink: make gst-ident happy
+
+2014-06-03 15:10:33 +0100 Vincent Penquerc'h <vincent.penquerch@collabora.co.uk>
+
+ * ext/alsa/gstalsasink.c:
+ alsasink: fix occasional crash intersecting invalid values
+ When a pipeline using alsasink and push mode upstream fails
+ to preroll, the following state will be the case:
+ - A loop upstream will be PAUSED, pushing a first buffer
+ - alsasink will be READY, pending PAUSED, because async
+ On error, the pipeline will switch to NULL. alsasink is in
+ READY, so goes to NULL immediately. It zeroes its cached
+ caps. Meanwhile, the upstream loop can cause a caps query,
+ conccurent with the state change. This will use those cached
+ caps. If the zeroing happens between the NULL test and the
+ dereferencing, GStreamer will critical down in the GstValue
+ code.
+ Since it appears that such a gap between states (PAUSED
+ and pushing upstream, and NULL downstream) is expected, we
+ need to protect the read/write access to the cached caps.
+ This fixes the critical.
+ See https://bugzilla.gnome.org/show_bug.cgi?id=731121
+
+2013-10-14 18:56:55 -0300 Thibault Saunier <thibault.saunier@collabora.com>
+
+ * gst-libs/gst/video/gstvideodecoder.c:
+ * tests/check/libs/videodecoder.c:
+ videodecoder: Keep still meaningfull pending events on FLUSH_STOP
+ Only EOS and segment should be deleted in that case.
+ + Add a testcase
+ https://bugzilla.gnome.org/show_bug.cgi?id=709868
+
+2013-10-14 18:48:08 -0300 Thibault Saunier <thibault.saunier@collabora.com>
+
+ * gst-libs/gst/audio/gstaudiodecoder.c:
+ * tests/check/libs/audiodecoder.c:
+ audiodecoder: Keep still meaningfull pending events on FLUSH_STOP
+ Only EOS and segment should be deleted in that case.
+ https://bugzilla.gnome.org/show_bug.cgi?id=709868
+
+2013-10-14 18:45:10 -0300 Thibault Saunier <thibault.saunier@collabora.com>
+
+ * gst-libs/gst/video/gstvideoencoder.c:
+ * tests/check/libs/videoencoder.c:
+ videoencoder: Keep still meaningfull pending events on FLUSH_STOP
+ Only EOS and segment should be deleted in that case.
+ https://bugzilla.gnome.org/show_bug.cgi?id=709868
+
+2013-10-10 18:50:17 -0300 Thibault Saunier <thibault.saunier@collabora.com>
+
+ * gst/encoding/gststreamsplitter.c:
+ streamsplitter: Keep still meaningfull pending events on FLUSH_STOP
+ Only EOS and segment should be deleted in that case.
+ https://bugzilla.gnome.org/show_bug.cgi?id=709868
+
+2013-10-10 18:48:47 -0300 Thibault Saunier <thibault.saunier@collabora.com>
+
+ * gst-libs/gst/audio/gstaudioencoder.c:
+ * tests/check/libs/audioencoder.c:
+ audioencoder: Keep still meaningfull pending events on FLUSH_STOP
+ Only EOS and segment should be deleted in that case.
+ https://bugzilla.gnome.org/show_bug.cgi?id=709868
+
+2014-06-02 12:40:27 +0100 Vincent Penquerc'h <vincent.penquerch@collabora.co.uk>
+
+ * ext/ogg/gstoggstream.c:
+ oggstream: consider all opus packets as "keyframes"
+ This lets oggdemux determine they are not delta units, and removes
+ spurious per packet warnings about being unable to determine the
+ packet's keyframeness.
+
+2014-05-12 17:13:50 +0200 Edward Hervey <bilboed@bilboed.com>
+
+ * gst-libs/gst/sdp/gstmikey.c:
+ mikey: Free MikeyPayload in error cases
+ CID #1212136
+
+2014-03-16 14:27:30 -0300 Thiago Santos <ts.santos@sisa.samsung.com>
+
+ * gst/playback/gstdecodebin2.c:
+ * tests/check/elements/decodebin.c:
+ decodebin: aggregate buffering messages
+ Aggregate buffering messages to only post the lower value
+ to avoid setting pipeline to playing while any multiqueue
+ is still buffering.
+ There are 3 scenarios where the entries should be removed from
+ the list:
+ 1) When decodebin is set to READY
+ 2) When an element posts a 100% buffering (already implemented)
+ 3) When a multiqueue is removed from decodebin.
+ For item 3 we don't need to handle it because this should only
+ happen when either 1 is hapenning or when it is playing a
+ chained file, for which number 2 should have happened for the
+ previous stream to finish
+ https://bugzilla.gnome.org/show_bug.cgi?id=726423
+
+2014-05-28 10:23:24 +0100 Philip Withnall <philip.withnall@collabora.co.uk>
+
+ * gst-libs/gst/audio/audio-format.c:
+ audio: Add a missing precondition to gst_audio_format_from_string()
+ https://bugzilla.gnome.org/show_bug.cgi?id=730874
+
+2014-05-26 20:57:30 -0300 Thiago Santos <ts.santos@sisa.samsung.com>
+
+ * tests/check/libs/audiodecoder.c:
+ * tests/check/libs/videodecoder.c:
+ tests: videodecoder: audiodecoder: add tests for eos after segment
+ Tests that pushing a buffer after the segment returns EOS
+
+2014-05-26 21:24:07 -0300 Thiago Santos <ts.santos@sisa.samsung.com>
+
+ * gst-libs/gst/video/gstvideodecoder.c:
+ videodecoder: actually return the push result in backwards playback
+ It was always returning _OK regardless of what downstream returned
+
+2014-05-26 12:44:48 -0300 Thiago Santos <ts.santos@sisa.samsung.com>
+
+ * gst-libs/gst/video/gstvideodecoder.c:
+ videodecoder: return EOS when segment is over
+ if a buffer is clipped by being completely out of segment, check if this
+ buffer is after the end of the segment and return EOS upstream
+ https://bugzilla.gnome.org/show_bug.cgi?id=709224
+
+2014-05-26 12:44:38 -0300 Thiago Santos <ts.santos@sisa.samsung.com>
+
+ * gst-libs/gst/audio/gstaudiodecoder.c:
+ audiodecoder: return EOS when segment is over
+ if a buffer is clipped by being completely out of segment, check if this
+ buffer is after the end of the segment and return EOS upstream
+ https://bugzilla.gnome.org/show_bug.cgi?id=709224
+
+2014-05-26 11:45:29 -0300 Thiago Santos <ts.santos@sisa.samsung.com>
+
+ * ext/ogg/gstoggdemux.c:
+ * ext/ogg/gstoggdemux.h:
+ oggdemux: use new gstutils helper GstFlowCombiner
+ Fixes the handling of GST_FLOW_EOS by using the helper object
+ from gstutils that does the correct combination of flow returns.
+ https://bugzilla.gnome.org/show_bug.cgi?id=709224
+
+2014-05-23 19:21:35 +0100 Tim-Philipp Müller <tim@centricular.com>
+
+ * tools/gst-play.c:
+ tools: play: use cubic volume factor when adjusting volume
+ This is more natural and better-suited for a playback application.
+
+2014-05-21 13:23:24 +0200 Sebastian Dröge <sebastian@centricular.com>
+
+ * configure.ac:
+ Back to development
+
=== release 1.3.2 ===
-2014-05-21 Sebastian Dröge <slomo@coaxion.net>
+2014-05-21 13:06:34 +0200 Sebastian Dröge <sebastian@centricular.com>
+ * ChangeLog:
+ * NEWS:
+ * RELEASE:
+ * common:
* configure.ac:
- releasing 1.3.2
+ * docs/plugins/inspect/plugin-adder.xml:
+ * docs/plugins/inspect/plugin-alsa.xml:
+ * docs/plugins/inspect/plugin-app.xml:
+ * docs/plugins/inspect/plugin-audioconvert.xml:
+ * docs/plugins/inspect/plugin-audiorate.xml:
+ * docs/plugins/inspect/plugin-audioresample.xml:
+ * docs/plugins/inspect/plugin-audiotestsrc.xml:
+ * docs/plugins/inspect/plugin-cdparanoia.xml:
+ * docs/plugins/inspect/plugin-encoding.xml:
+ * docs/plugins/inspect/plugin-gio.xml:
+ * docs/plugins/inspect/plugin-ivorbisdec.xml:
+ * docs/plugins/inspect/plugin-libvisual.xml:
+ * docs/plugins/inspect/plugin-ogg.xml:
+ * docs/plugins/inspect/plugin-pango.xml:
+ * docs/plugins/inspect/plugin-playback.xml:
+ * docs/plugins/inspect/plugin-subparse.xml:
+ * docs/plugins/inspect/plugin-tcp.xml:
+ * docs/plugins/inspect/plugin-theora.xml:
+ * docs/plugins/inspect/plugin-typefindfunctions.xml:
+ * docs/plugins/inspect/plugin-videoconvert.xml:
+ * docs/plugins/inspect/plugin-videorate.xml:
+ * docs/plugins/inspect/plugin-videoscale.xml:
+ * docs/plugins/inspect/plugin-videotestsrc.xml:
+ * docs/plugins/inspect/plugin-volume.xml:
+ * docs/plugins/inspect/plugin-vorbis.xml:
+ * docs/plugins/inspect/plugin-ximagesink.xml:
+ * docs/plugins/inspect/plugin-xvimagesink.xml:
+ * gst-plugins-base.doap:
+ * win32/common/_stdint.h:
+ * win32/common/config.h:
+ Release 1.3.2
+
+2014-05-21 12:01:15 +0200 Sebastian Dröge <sebastian@centricular.com>
+
+ * po/af.po:
+ * po/az.po:
+ * po/bg.po:
+ * po/ca.po:
+ * po/cs.po:
+ * po/da.po:
+ * po/de.po:
+ * po/el.po:
+ * po/en_GB.po:
+ * po/eo.po:
+ * po/es.po:
+ * po/eu.po:
+ * po/fi.po:
+ * po/fr.po:
+ * po/gl.po:
+ * po/hr.po:
+ * po/hu.po:
+ * po/id.po:
+ * po/it.po:
+ * po/ja.po:
+ * po/lt.po:
+ * po/lv.po:
+ * po/nb.po:
+ * po/nl.po:
+ * po/or.po:
+ * po/pl.po:
+ * po/pt_BR.po:
+ * po/ro.po:
+ * po/ru.po:
+ * po/sk.po:
+ * po/sl.po:
+ * po/sq.po:
+ * po/sr.po:
+ * po/sv.po:
+ * po/tr.po:
+ * po/uk.po:
+ * po/vi.po:
+ * po/zh_CN.po:
+ Update .po files
2014-05-21 10:50:56 +0200 Sebastian Dröge <sebastian@centricular.com>
diff --git a/NEWS b/NEWS
index ff23a34..efca995 100644
--- a/NEWS
+++ b/NEWS
@@ -1,7 +1,8 @@
-This is GStreamer Base Plugins 1.3.2
+This is GStreamer Base Plugins 1.3.3
Changes since 1.2:
+
New API:
• GstMessageType has GST_MESSAGE_EXTENDED added. All types before
that can be used together as a flags type as before, but from
@@ -30,6 +31,10 @@ New API:
caps.
• GstCollectPads has support for flushing and a default handler for
SEEK events now.
+ • New GstFlowAggregator helper object that simplifies handling of
+ flow returns in elements with multiple source pads. Additionally
+ GstPad now always stores the last flow return and provides an
+ API to retrieve it.
• GstSegment has new API to offset the running time by a specific
value and this is used in GstPad to allow positive and negative
offsets in gst_pad_set_offset() in all situations.
@@ -43,6 +48,7 @@ New API:
• Support for tiled, raw video formats has been added.
• GstVideoDecoder and GstAudioDecoder have API to help aggregating tag
events and merge custom tags into them consistently.
+ • GstBufferPool has support for flushing now.
• playbin/playsink has support for application provided audio and video
filters.
• GstDiscoverer has new and simplified API to get details about missing
@@ -54,6 +60,10 @@ New API:
DispManX (Raspberry Pi), EAGL (iOS), WGL (Windows) and generic X11,
Wayland and EGL platforms.
This replaces eglglessink and also is supposed to replace osxvideosink.
+ • New GstAggregator base class in gst-plugins-bad. This is supposed to
+ replace GstCollectPads in the future and fix long-known shortcomings
+ in its API. Together with the base class some elements are provided
+ already, like a videomixer (compositor).
Major changes:
@@ -97,7 +107,8 @@ Major changes:
∘ dvbsrc supports more delivery mechanisms and other features
now, including DVB S2 and T2 support.
∘ The MPEGTS library has support for many more descriptors.
- ∘ Major improvements to tsdemux, especially time related.
+ ∘ Major improvements to tsdemux and tsparse, especially time and
+ seeking related.
∘ souphttpsrc now has support for keep-alive connections,
compression, configurable number of retries and configuration
for SSL certificate validation.
@@ -110,9 +121,16 @@ Major changes:
finish.
∘ videoflip can automatically flip based on the orientation tag.
∘ openjpeg supports the OpenJPEG2 API.
+ ∘ waylandsink was refactored and should be more useful now. It also
+ includes a small library which most likely is going to be removed
+ in the future and will result in extensions to the GstVideoOverlay
+ interface.
∘ gst-rtsp-server supports SRTP and MIKEY now.
+ ∘ gst-libav encoders are now negotiating any profile/level settings
+ with downstream via caps.
∘ Lots of fixes for coverity warnings all over the place.
- ∘ 400+ fixed bug reports, and many other bug fixes and other
+ ∘ Negotiation related performance improvements.
+ ∘ 500+ fixed bug reports, and many other bug fixes and other
improvements everywhere that had no bug report.
Things to look out for:
@@ -120,3 +138,5 @@ Things to look out for:
element.
• The mfcdec element was removed and replaced by v4l2videodec.
• osxvideosink is only available in OS X 10.6 or newer.
+ • The GstDeviceMonitor API will likely change slightly before the
+ 1.4.0 release.
diff --git a/RELEASE b/RELEASE
index d34ea18..caab143 100644
--- a/RELEASE
+++ b/RELEASE
@@ -1,8 +1,8 @@
-Release notes for GStreamer Base Plugins 1.3.2
+Release notes for GStreamer Base Plugins 1.3.3
-The GStreamer team is pleased to announce the second release of the unstable
+The GStreamer team is pleased to announce the third release of the unstable
1.3 release series. The 1.3 release series is adding new features on top of
the 1.0 and 1.2 series and is part of the API and ABI-stable 1.x release
series of the GStreamer multimedia framework. The unstable 1.3 release series
@@ -10,23 +10,15 @@ will lead to the stable 1.4 release series in the next weeks, and newly added
API can still change until that point.
+This is hopefully the last 1.3 development release and will be followed by
+the first 1.4.0 release candidate (1.3.90) in 1-2 weeks. Which then hopefully
+is followed by 1.4.0 soonish in early July.
+
Binaries for Android, iOS, Mac OS X and Windows will be provided separately
during the unstable 1.3 release series.
-
-The versioning scheme that is used in general is that 1.x.y is API and
-ABI backwards compatible with previous 1.x.y releases. If x is an even
-number it is a stable release series and all releases in this series
-will only contain important bugfixes, e.g. the 1.0 series with 1.0.7. If
-x is odd it is a development release series that will lead to the next
-stable release series 1.x+1 and contains new features and bigger
-changes. During the development release series, new API can still
-change.
-
-
-
This module contains a set of reference plugins, base classes for other
plugins, and helper libraries. It also includes essential elements such
as audio and video format converters, and higher-level components like playbin,
@@ -73,15 +65,15 @@ contains a set of codecs plugins based on libav (formerly gst-ffmpeg)
Bugs fixed in this release
- * 720596 : discoverer: Rework the API to make " install missing plugin " feature cleaner
- * 729514 : rtsp: fails to build on Windows, undefined refs to getsockname and setsockopt
- * 729515 : W32: playback-test fails to build due to warnings
- * 729617 : playback-test: crash when setting buffer-size property on playbin
- * 729632 : rtspconnection: crashing sometimes when addinging a read source
- * 730010 : gst-play: audio_sink and video_sink strings are not freed
- * 730368 : Add a read source on write socket when tunnel lost.
- * 730441 : dmabuf: shared the mapping with shared copies of the memory
- * 729513 : W32: -base erroneously detects X11 headers from tcl/tk
+ * 709868 : Keep still meaningfull pending events on FLUSH_STOP
+ * 724231 : appsrc: handle flushing from send_event
+ * 730559 : dmabuf: fix checking mmap flags
+ * 730749 : Failed to determine keyframeness of audio/x-opus packet
+ * 730868 : uridecodebin: Does not handle RTSP streams where one of the payload formats is not supported properly
+ * 730874 : audio: Add a missing precondition to gst_audio_format_from_string()
+ * 731121 : alsasink: Race condition causes alsasink to use invalid caps when a pipeline fails to start
+ * 731566 : tcpserversrc: close the server socket after accepting a connection
+ * 731567 : tcpserversrc: return GST_FLOW_FLUSHING instead of GST_FLOW_ERROR when accept is canceled
==== Download ====
@@ -118,17 +110,12 @@ subscribe to the gstreamer-devel list.
Contributors to this release
- * Anuj Jaiswal
* Edward Hervey
- * Göran Jönsson
- * Luis de Bethencourt
* Michael Olbrich
- * Nicolas Dufresne
- * Ravi Kiran K N
+ * Philip Withnall
* Sebastian Dröge
+ * Thiago Santos
* Thibault Saunier
* Tim-Philipp Müller
* Vincent Penquerc'h
- * Wim Taymans
- * Руслан Ижбулатов
  \ No newline at end of file
diff --git a/configure b/configure
index 8f72ede..b746738 100755
--- a/configure
+++ b/configure
@@ -1,6 +1,6 @@
#! /bin/sh
# Guess values for system-dependent variables and create Makefiles.
-# Generated by GNU Autoconf 2.69 for GStreamer Base Plug-ins 1.3.2.
+# Generated by GNU Autoconf 2.69 for GStreamer Base Plug-ins 1.3.3.
#
# Report bugs to <http://bugzilla.gnome.org/enter_bug.cgi?product=GStreamer>.
#
@@ -591,8 +591,8 @@ MAKEFLAGS=
# Identity of this package.
PACKAGE_NAME='GStreamer Base Plug-ins'
PACKAGE_TARNAME='gst-plugins-base'
-PACKAGE_VERSION='1.3.2'
-PACKAGE_STRING='GStreamer Base Plug-ins 1.3.2'
+PACKAGE_VERSION='1.3.3'
+PACKAGE_STRING='GStreamer Base Plug-ins 1.3.3'
PACKAGE_BUGREPORT='http://bugzilla.gnome.org/enter_bug.cgi?product=GStreamer'
PACKAGE_URL=''
@@ -1762,7 +1762,7 @@ if test "$ac_init_help" = "long"; then
# Omit some internal or obsolete options to make the list less imposing.
# This message is too long to be a string in the A/UX 3.1 sh.
cat <<_ACEOF
-\`configure' configures GStreamer Base Plug-ins 1.3.2 to adapt to many kinds of systems.
+\`configure' configures GStreamer Base Plug-ins 1.3.3 to adapt to many kinds of systems.
Usage: $0 [OPTION]... [VAR=VALUE]...
@@ -1838,7 +1838,7 @@ fi
if test -n "$ac_init_help"; then
case $ac_init_help in
- short | recursive ) echo "Configuration of GStreamer Base Plug-ins 1.3.2:";;
+ short | recursive ) echo "Configuration of GStreamer Base Plug-ins 1.3.3:";;
esac
cat <<\_ACEOF
@@ -2119,7 +2119,7 @@ fi
test -n "$ac_init_help" && exit $ac_status
if $ac_init_version; then
cat <<\_ACEOF
-GStreamer Base Plug-ins configure 1.3.2
+GStreamer Base Plug-ins configure 1.3.3
generated by GNU Autoconf 2.69
Copyright (C) 2012 Free Software Foundation, Inc.
@@ -2892,7 +2892,7 @@ cat >config.log <<_ACEOF
This file contains any messages produced by compilers while
running configure, to aid debugging if configure makes a mistake.
-It was created by GStreamer Base Plug-ins $as_me 1.3.2, which was
+It was created by GStreamer Base Plug-ins $as_me 1.3.3, which was
generated by GNU Autoconf 2.69. Invocation command line was
$ $0 $@
@@ -3871,7 +3871,7 @@ fi
# Define the identity of the package.
PACKAGE='gst-plugins-base'
- VERSION='1.3.2'
+ VERSION='1.3.3'
cat >>confdefs.h <<_ACEOF
@@ -4082,9 +4082,9 @@ fi
- PACKAGE_VERSION_MAJOR=$(echo 1.3.2 | cut -d'.' -f1)
- PACKAGE_VERSION_MINOR=$(echo 1.3.2 | cut -d'.' -f2)
- PACKAGE_VERSION_MICRO=$(echo 1.3.2 | cut -d'.' -f3)
+ PACKAGE_VERSION_MAJOR=$(echo 1.3.3 | cut -d'.' -f1)
+ PACKAGE_VERSION_MINOR=$(echo 1.3.3 | cut -d'.' -f2)
+ PACKAGE_VERSION_MICRO=$(echo 1.3.3 | cut -d'.' -f3)
@@ -4095,7 +4095,7 @@ fi
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking nano version" >&5
$as_echo_n "checking nano version... " >&6; }
- NANO=$(echo 1.3.2 | cut -d'.' -f4)
+ NANO=$(echo 1.3.3 | cut -d'.' -f4)
if test x"$NANO" = x || test "x$NANO" = "x0" ; then
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: 0 (release)" >&5
@@ -8744,10 +8744,10 @@ fi
done
- GST_CURRENT=302
+ GST_CURRENT=303
GST_REVISION=0
- GST_AGE=302
- GST_LIBVERSION=302:0:302
+ GST_AGE=303
+ GST_LIBVERSION=303:0:303
@@ -13072,7 +13072,7 @@ CC="$lt_save_CC"
-GST_REQ=1.3.2
+GST_REQ=1.3.3
@@ -32433,7 +32433,7 @@ cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
# report actual input values of CONFIG_FILES etc. instead of their
# values after options handling.
ac_log="
-This file was extended by GStreamer Base Plug-ins $as_me 1.3.2, which was
+This file was extended by GStreamer Base Plug-ins $as_me 1.3.3, which was
generated by GNU Autoconf 2.69. Invocation command line was
CONFIG_FILES = $CONFIG_FILES
@@ -32499,7 +32499,7 @@ _ACEOF
cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`"
ac_cs_version="\\
-GStreamer Base Plug-ins config.status 1.3.2
+GStreamer Base Plug-ins config.status 1.3.3
configured by $0, generated by GNU Autoconf 2.69,
with options \\"\$ac_cs_config\\"
diff --git a/configure.ac b/configure.ac
index a7308f2..38f3863 100644
--- a/configure.ac
+++ b/configure.ac
@@ -5,7 +5,7 @@ dnl please read gstreamer/docs/random/autotools before changing this file
dnl initialize autoconf
dnl releases only do -Wall, git and prerelease does -Werror too
dnl use a three digit version number for releases, and four for git/prerelease
-AC_INIT([GStreamer Base Plug-ins],[1.3.2],[http://bugzilla.gnome.org/enter_bug.cgi?product=GStreamer],[gst-plugins-base])
+AC_INIT([GStreamer Base Plug-ins],[1.3.3],[http://bugzilla.gnome.org/enter_bug.cgi?product=GStreamer],[gst-plugins-base])
AG_GST_INIT
@@ -56,10 +56,10 @@ dnl 1.2.5 => 205
dnl 1.10.9 (who knows) => 1009
dnl
dnl sets GST_LT_LDFLAGS
-AS_LIBTOOL(GST, 302, 0, 302)
+AS_LIBTOOL(GST, 303, 0, 303)
dnl *** required versions of GStreamer stuff ***
-GST_REQ=1.3.2
+GST_REQ=1.3.3
dnl *** autotools stuff ****
diff --git a/docs/libs/gst-plugins-base-libs-docs.sgml b/docs/libs/gst-plugins-base-libs-docs.sgml
index bc3b067..3da30ad 100644
--- a/docs/libs/gst-plugins-base-libs-docs.sgml
+++ b/docs/libs/gst-plugins-base-libs-docs.sgml
@@ -207,6 +207,7 @@
<xi:include href="xml/gstvideoencoder.xml" />
<xi:include href="xml/gstvideopool.xml" />
<xi:include href="xml/gstvideoutils.xml" />
+ <xi:include href="xml/gstnavigation.xml" />
</chapter>
</part>
diff --git a/docs/libs/html/api-index-full.html b/docs/libs/html/api-index-full.html
index c1bf914..4cbece1 100644
--- a/docs/libs/html/api-index-full.html
+++ b/docs/libs/html/api-index-full.html
@@ -2390,147 +2390,147 @@
<dd></dd>
<a name="idxN"></a><h3 class="title">N</h3>
<dt>
-<a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gst-plugins-base-libs/html/gst-plugins-base-libs-gstnavigation.html#GstNavigation-struct">GstNavigation</a>, struct in <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gst-plugins-base-libs/html/gst-plugins-base-libs-gstnavigation.html">gstnavigation</a>
+<a class="link" href="gst-plugins-base-libs-gstnavigation.html#GstNavigation-struct" title="GstNavigation">GstNavigation</a>, struct in <a class="link" href="gst-plugins-base-libs-gstnavigation.html" title="gstnavigation">gstnavigation</a>
</dt>
<dd></dd>
<dt>
-<a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gst-plugins-base-libs/html/gst-plugins-base-libs-gstnavigation.html#GstNavigationCommand">GstNavigationCommand</a>, enum in <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gst-plugins-base-libs/html/gst-plugins-base-libs-gstnavigation.html">gstnavigation</a>
+<a class="link" href="gst-plugins-base-libs-gstnavigation.html#GstNavigationCommand" title="enum GstNavigationCommand">GstNavigationCommand</a>, enum in <a class="link" href="gst-plugins-base-libs-gstnavigation.html" title="gstnavigation">gstnavigation</a>
</dt>
<dd></dd>
<dt>
-<a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gst-plugins-base-libs/html/gst-plugins-base-libs-gstnavigation.html#GstNavigationEventType">GstNavigationEventType</a>, enum in <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gst-plugins-base-libs/html/gst-plugins-base-libs-gstnavigation.html">gstnavigation</a>
+<a class="link" href="gst-plugins-base-libs-gstnavigation.html#GstNavigationEventType" title="enum GstNavigationEventType">GstNavigationEventType</a>, enum in <a class="link" href="gst-plugins-base-libs-gstnavigation.html" title="gstnavigation">gstnavigation</a>
</dt>
<dd></dd>
<dt>
-<a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gst-plugins-base-libs/html/gst-plugins-base-libs-gstnavigation.html#GstNavigationInterface">GstNavigationInterface</a>, struct in <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gst-plugins-base-libs/html/gst-plugins-base-libs-gstnavigation.html">gstnavigation</a>
+<a class="link" href="gst-plugins-base-libs-gstnavigation.html#GstNavigationInterface" title="struct GstNavigationInterface">GstNavigationInterface</a>, struct in <a class="link" href="gst-plugins-base-libs-gstnavigation.html" title="gstnavigation">gstnavigation</a>
</dt>
<dd></dd>
<dt>
-<a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gst-plugins-base-libs/html/gst-plugins-base-libs-gstnavigation.html#GstNavigationMessageType">GstNavigationMessageType</a>, enum in <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gst-plugins-base-libs/html/gst-plugins-base-libs-gstnavigation.html">gstnavigation</a>
+<a class="link" href="gst-plugins-base-libs-gstnavigation.html#GstNavigationMessageType" title="enum GstNavigationMessageType">GstNavigationMessageType</a>, enum in <a class="link" href="gst-plugins-base-libs-gstnavigation.html" title="gstnavigation">gstnavigation</a>
</dt>
<dd></dd>
<dt>
-<a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gst-plugins-base-libs/html/gst-plugins-base-libs-gstnavigation.html#GstNavigationQueryType">GstNavigationQueryType</a>, enum in <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gst-plugins-base-libs/html/gst-plugins-base-libs-gstnavigation.html">gstnavigation</a>
+<a class="link" href="gst-plugins-base-libs-gstnavigation.html#GstNavigationQueryType" title="enum GstNavigationQueryType">GstNavigationQueryType</a>, enum in <a class="link" href="gst-plugins-base-libs-gstnavigation.html" title="gstnavigation">gstnavigation</a>
</dt>
<dd></dd>
<dt>
-<a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gst-plugins-base-libs/html/gst-plugins-base-libs-gstnavigation.html#GST-NAVIGATION-COMMAND-DVD-ANGLE-MENU:CAPS">GST_NAVIGATION_COMMAND_DVD_ANGLE_MENU</a>, macro in <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gst-plugins-base-libs/html/gst-plugins-base-libs-gstnavigation.html">gstnavigation</a>
+<a class="link" href="gst-plugins-base-libs-gstnavigation.html#GST-NAVIGATION-COMMAND-DVD-ANGLE-MENU:CAPS" title="GST_NAVIGATION_COMMAND_DVD_ANGLE_MENU">GST_NAVIGATION_COMMAND_DVD_ANGLE_MENU</a>, macro in <a class="link" href="gst-plugins-base-libs-gstnavigation.html" title="gstnavigation">gstnavigation</a>
</dt>
<dd></dd>
<dt>
-<a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gst-plugins-base-libs/html/gst-plugins-base-libs-gstnavigation.html#GST-NAVIGATION-COMMAND-DVD-AUDIO-MENU:CAPS">GST_NAVIGATION_COMMAND_DVD_AUDIO_MENU</a>, macro in <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gst-plugins-base-libs/html/gst-plugins-base-libs-gstnavigation.html">gstnavigation</a>
+<a class="link" href="gst-plugins-base-libs-gstnavigation.html#GST-NAVIGATION-COMMAND-DVD-AUDIO-MENU:CAPS" title="GST_NAVIGATION_COMMAND_DVD_AUDIO_MENU">GST_NAVIGATION_COMMAND_DVD_AUDIO_MENU</a>, macro in <a class="link" href="gst-plugins-base-libs-gstnavigation.html" title="gstnavigation">gstnavigation</a>
</dt>
<dd></dd>
<dt>
-<a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gst-plugins-base-libs/html/gst-plugins-base-libs-gstnavigation.html#GST-NAVIGATION-COMMAND-DVD-CHAPTER-MENU:CAPS">GST_NAVIGATION_COMMAND_DVD_CHAPTER_MENU</a>, macro in <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gst-plugins-base-libs/html/gst-plugins-base-libs-gstnavigation.html">gstnavigation</a>
+<a class="link" href="gst-plugins-base-libs-gstnavigation.html#GST-NAVIGATION-COMMAND-DVD-CHAPTER-MENU:CAPS" title="GST_NAVIGATION_COMMAND_DVD_CHAPTER_MENU">GST_NAVIGATION_COMMAND_DVD_CHAPTER_MENU</a>, macro in <a class="link" href="gst-plugins-base-libs-gstnavigation.html" title="gstnavigation">gstnavigation</a>
</dt>
<dd></dd>
<dt>
-<a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gst-plugins-base-libs/html/gst-plugins-base-libs-gstnavigation.html#GST-NAVIGATION-COMMAND-DVD-MENU:CAPS">GST_NAVIGATION_COMMAND_DVD_MENU</a>, macro in <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gst-plugins-base-libs/html/gst-plugins-base-libs-gstnavigation.html">gstnavigation</a>
+<a class="link" href="gst-plugins-base-libs-gstnavigation.html#GST-NAVIGATION-COMMAND-DVD-MENU:CAPS" title="GST_NAVIGATION_COMMAND_DVD_MENU">GST_NAVIGATION_COMMAND_DVD_MENU</a>, macro in <a class="link" href="gst-plugins-base-libs-gstnavigation.html" title="gstnavigation">gstnavigation</a>
</dt>
<dd></dd>
<dt>
-<a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gst-plugins-base-libs/html/gst-plugins-base-libs-gstnavigation.html#GST-NAVIGATION-COMMAND-DVD-ROOT-MENU:CAPS">GST_NAVIGATION_COMMAND_DVD_ROOT_MENU</a>, macro in <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gst-plugins-base-libs/html/gst-plugins-base-libs-gstnavigation.html">gstnavigation</a>
+<a class="link" href="gst-plugins-base-libs-gstnavigation.html#GST-NAVIGATION-COMMAND-DVD-ROOT-MENU:CAPS" title="GST_NAVIGATION_COMMAND_DVD_ROOT_MENU">GST_NAVIGATION_COMMAND_DVD_ROOT_MENU</a>, macro in <a class="link" href="gst-plugins-base-libs-gstnavigation.html" title="gstnavigation">gstnavigation</a>
</dt>
<dd></dd>
<dt>
-<a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gst-plugins-base-libs/html/gst-plugins-base-libs-gstnavigation.html#GST-NAVIGATION-COMMAND-DVD-SUBPICTURE-MENU:CAPS">GST_NAVIGATION_COMMAND_DVD_SUBPICTURE_MENU</a>, macro in <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gst-plugins-base-libs/html/gst-plugins-base-libs-gstnavigation.html">gstnavigation</a>
+<a class="link" href="gst-plugins-base-libs-gstnavigation.html#GST-NAVIGATION-COMMAND-DVD-SUBPICTURE-MENU:CAPS" title="GST_NAVIGATION_COMMAND_DVD_SUBPICTURE_MENU">GST_NAVIGATION_COMMAND_DVD_SUBPICTURE_MENU</a>, macro in <a class="link" href="gst-plugins-base-libs-gstnavigation.html" title="gstnavigation">gstnavigation</a>
</dt>
<dd></dd>
<dt>
-<a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gst-plugins-base-libs/html/gst-plugins-base-libs-gstnavigation.html#GST-NAVIGATION-COMMAND-DVD-TITLE-MENU:CAPS">GST_NAVIGATION_COMMAND_DVD_TITLE_MENU</a>, macro in <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gst-plugins-base-libs/html/gst-plugins-base-libs-gstnavigation.html">gstnavigation</a>
+<a class="link" href="gst-plugins-base-libs-gstnavigation.html#GST-NAVIGATION-COMMAND-DVD-TITLE-MENU:CAPS" title="GST_NAVIGATION_COMMAND_DVD_TITLE_MENU">GST_NAVIGATION_COMMAND_DVD_TITLE_MENU</a>, macro in <a class="link" href="gst-plugins-base-libs-gstnavigation.html" title="gstnavigation">gstnavigation</a>
</dt>
<dd></dd>
<dt>
-<a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gst-plugins-base-libs/html/gst-plugins-base-libs-gstnavigation.html#gst-navigation-event-parse-command">gst_navigation_event_parse_command</a>, function in <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gst-plugins-base-libs/html/gst-plugins-base-libs-gstnavigation.html">gstnavigation</a>
+<a class="link" href="gst-plugins-base-libs-gstnavigation.html#gst-navigation-event-parse-command" title="gst_navigation_event_parse_command ()">gst_navigation_event_parse_command</a>, function in <a class="link" href="gst-plugins-base-libs-gstnavigation.html" title="gstnavigation">gstnavigation</a>
</dt>
<dd></dd>
<dt>
-<a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gst-plugins-base-libs/html/gst-plugins-base-libs-gstnavigation.html#gst-navigation-event-parse-key-event">gst_navigation_event_parse_key_event</a>, function in <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gst-plugins-base-libs/html/gst-plugins-base-libs-gstnavigation.html">gstnavigation</a>
+<a class="link" href="gst-plugins-base-libs-gstnavigation.html#gst-navigation-event-parse-key-event" title="gst_navigation_event_parse_key_event ()">gst_navigation_event_parse_key_event</a>, function in <a class="link" href="gst-plugins-base-libs-gstnavigation.html" title="gstnavigation">gstnavigation</a>
</dt>
<dd></dd>
<dt>
-<a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gst-plugins-base-libs/html/gst-plugins-base-libs-gstnavigation.html#gst-navigation-event-parse-mouse-button-event">gst_navigation_event_parse_mouse_button_event</a>, function in <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gst-plugins-base-libs/html/gst-plugins-base-libs-gstnavigation.html">gstnavigation</a>
+<a class="link" href="gst-plugins-base-libs-gstnavigation.html#gst-navigation-event-parse-mouse-button-event" title="gst_navigation_event_parse_mouse_button_event ()">gst_navigation_event_parse_mouse_button_event</a>, function in <a class="link" href="gst-plugins-base-libs-gstnavigation.html" title="gstnavigation">gstnavigation</a>
</dt>
<dd></dd>
<dt>
-<a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gst-plugins-base-libs/html/gst-plugins-base-libs-gstnavigation.html#gst-navigation-event-parse-mouse-move-event">gst_navigation_event_parse_mouse_move_event</a>, function in <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gst-plugins-base-libs/html/gst-plugins-base-libs-gstnavigation.html">gstnavigation</a>
+<a class="link" href="gst-plugins-base-libs-gstnavigation.html#gst-navigation-event-parse-mouse-move-event" title="gst_navigation_event_parse_mouse_move_event ()">gst_navigation_event_parse_mouse_move_event</a>, function in <a class="link" href="gst-plugins-base-libs-gstnavigation.html" title="gstnavigation">gstnavigation</a>
</dt>
<dd></dd>
<dt>
-<a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gst-plugins-base-libs/html/gst-plugins-base-libs-gstnavigation.html#gst-navigation-message-get-type">gst_navigation_message_get_type</a>, function in <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gst-plugins-base-libs/html/gst-plugins-base-libs-gstnavigation.html">gstnavigation</a>
+<a class="link" href="gst-plugins-base-libs-gstnavigation.html#gst-navigation-message-get-type" title="gst_navigation_message_get_type ()">gst_navigation_message_get_type</a>, function in <a class="link" href="gst-plugins-base-libs-gstnavigation.html" title="gstnavigation">gstnavigation</a>
</dt>
<dd></dd>
<dt>
-<a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gst-plugins-base-libs/html/gst-plugins-base-libs-gstnavigation.html#gst-navigation-message-new-angles-changed">gst_navigation_message_new_angles_changed</a>, function in <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gst-plugins-base-libs/html/gst-plugins-base-libs-gstnavigation.html">gstnavigation</a>
+<a class="link" href="gst-plugins-base-libs-gstnavigation.html#gst-navigation-message-new-angles-changed" title="gst_navigation_message_new_angles_changed ()">gst_navigation_message_new_angles_changed</a>, function in <a class="link" href="gst-plugins-base-libs-gstnavigation.html" title="gstnavigation">gstnavigation</a>
</dt>
<dd></dd>
<dt>
-<a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gst-plugins-base-libs/html/gst-plugins-base-libs-gstnavigation.html#gst-navigation-message-new-commands-changed">gst_navigation_message_new_commands_changed</a>, function in <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gst-plugins-base-libs/html/gst-plugins-base-libs-gstnavigation.html">gstnavigation</a>
+<a class="link" href="gst-plugins-base-libs-gstnavigation.html#gst-navigation-message-new-commands-changed" title="gst_navigation_message_new_commands_changed ()">gst_navigation_message_new_commands_changed</a>, function in <a class="link" href="gst-plugins-base-libs-gstnavigation.html" title="gstnavigation">gstnavigation</a>
</dt>
<dd></dd>
<dt>
-<a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gst-plugins-base-libs/html/gst-plugins-base-libs-gstnavigation.html#gst-navigation-message-new-mouse-over">gst_navigation_message_new_mouse_over</a>, function in <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gst-plugins-base-libs/html/gst-plugins-base-libs-gstnavigation.html">gstnavigation</a>
+<a class="link" href="gst-plugins-base-libs-gstnavigation.html#gst-navigation-message-new-mouse-over" title="gst_navigation_message_new_mouse_over ()">gst_navigation_message_new_mouse_over</a>, function in <a class="link" href="gst-plugins-base-libs-gstnavigation.html" title="gstnavigation">gstnavigation</a>
</dt>
<dd></dd>
<dt>
-<a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gst-plugins-base-libs/html/gst-plugins-base-libs-gstnavigation.html#gst-navigation-message-parse-angles-changed">gst_navigation_message_parse_angles_changed</a>, function in <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gst-plugins-base-libs/html/gst-plugins-base-libs-gstnavigation.html">gstnavigation</a>
+<a class="link" href="gst-plugins-base-libs-gstnavigation.html#gst-navigation-message-parse-angles-changed" title="gst_navigation_message_parse_angles_changed ()">gst_navigation_message_parse_angles_changed</a>, function in <a class="link" href="gst-plugins-base-libs-gstnavigation.html" title="gstnavigation">gstnavigation</a>
</dt>
<dd></dd>
<dt>
-<a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gst-plugins-base-libs/html/gst-plugins-base-libs-gstnavigation.html#gst-navigation-message-parse-mouse-over">gst_navigation_message_parse_mouse_over</a>, function in <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gst-plugins-base-libs/html/gst-plugins-base-libs-gstnavigation.html">gstnavigation</a>
+<a class="link" href="gst-plugins-base-libs-gstnavigation.html#gst-navigation-message-parse-mouse-over" title="gst_navigation_message_parse_mouse_over ()">gst_navigation_message_parse_mouse_over</a>, function in <a class="link" href="gst-plugins-base-libs-gstnavigation.html" title="gstnavigation">gstnavigation</a>
</dt>
<dd></dd>
<dt>
-<a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gst-plugins-base-libs/html/gst-plugins-base-libs-gstnavigation.html#gst-navigation-query-get-type">gst_navigation_query_get_type</a>, function in <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gst-plugins-base-libs/html/gst-plugins-base-libs-gstnavigation.html">gstnavigation</a>
+<a class="link" href="gst-plugins-base-libs-gstnavigation.html#gst-navigation-query-get-type" title="gst_navigation_query_get_type ()">gst_navigation_query_get_type</a>, function in <a class="link" href="gst-plugins-base-libs-gstnavigation.html" title="gstnavigation">gstnavigation</a>
</dt>
<dd></dd>
<dt>
-<a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gst-plugins-base-libs/html/gst-plugins-base-libs-gstnavigation.html#gst-navigation-query-new-angles">gst_navigation_query_new_angles</a>, function in <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gst-plugins-base-libs/html/gst-plugins-base-libs-gstnavigation.html">gstnavigation</a>
+<a class="link" href="gst-plugins-base-libs-gstnavigation.html#gst-navigation-query-new-angles" title="gst_navigation_query_new_angles ()">gst_navigation_query_new_angles</a>, function in <a class="link" href="gst-plugins-base-libs-gstnavigation.html" title="gstnavigation">gstnavigation</a>
</dt>
<dd></dd>
<dt>
-<a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gst-plugins-base-libs/html/gst-plugins-base-libs-gstnavigation.html#gst-navigation-query-new-commands">gst_navigation_query_new_commands</a>, function in <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gst-plugins-base-libs/html/gst-plugins-base-libs-gstnavigation.html">gstnavigation</a>
+<a class="link" href="gst-plugins-base-libs-gstnavigation.html#gst-navigation-query-new-commands" title="gst_navigation_query_new_commands ()">gst_navigation_query_new_commands</a>, function in <a class="link" href="gst-plugins-base-libs-gstnavigation.html" title="gstnavigation">gstnavigation</a>
</dt>
<dd></dd>
<dt>
-<a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gst-plugins-base-libs/html/gst-plugins-base-libs-gstnavigation.html#gst-navigation-query-parse-angles">gst_navigation_query_parse_angles</a>, function in <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gst-plugins-base-libs/html/gst-plugins-base-libs-gstnavigation.html">gstnavigation</a>
+<a class="link" href="gst-plugins-base-libs-gstnavigation.html#gst-navigation-query-parse-angles" title="gst_navigation_query_parse_angles ()">gst_navigation_query_parse_angles</a>, function in <a class="link" href="gst-plugins-base-libs-gstnavigation.html" title="gstnavigation">gstnavigation</a>
</dt>
<dd></dd>
<dt>
-<a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gst-plugins-base-libs/html/gst-plugins-base-libs-gstnavigation.html#gst-navigation-query-parse-commands-length">gst_navigation_query_parse_commands_length</a>, function in <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gst-plugins-base-libs/html/gst-plugins-base-libs-gstnavigation.html">gstnavigation</a>
+<a class="link" href="gst-plugins-base-libs-gstnavigation.html#gst-navigation-query-parse-commands-length" title="gst_navigation_query_parse_commands_length ()">gst_navigation_query_parse_commands_length</a>, function in <a class="link" href="gst-plugins-base-libs-gstnavigation.html" title="gstnavigation">gstnavigation</a>
</dt>
<dd></dd>
<dt>
-<a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gst-plugins-base-libs/html/gst-plugins-base-libs-gstnavigation.html#gst-navigation-query-parse-commands-nth">gst_navigation_query_parse_commands_nth</a>, function in <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gst-plugins-base-libs/html/gst-plugins-base-libs-gstnavigation.html">gstnavigation</a>
+<a class="link" href="gst-plugins-base-libs-gstnavigation.html#gst-navigation-query-parse-commands-nth" title="gst_navigation_query_parse_commands_nth ()">gst_navigation_query_parse_commands_nth</a>, function in <a class="link" href="gst-plugins-base-libs-gstnavigation.html" title="gstnavigation">gstnavigation</a>
</dt>
<dd></dd>
<dt>
-<a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gst-plugins-base-libs/html/gst-plugins-base-libs-gstnavigation.html#gst-navigation-query-set-angles">gst_navigation_query_set_angles</a>, function in <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gst-plugins-base-libs/html/gst-plugins-base-libs-gstnavigation.html">gstnavigation</a>
+<a class="link" href="gst-plugins-base-libs-gstnavigation.html#gst-navigation-query-set-angles" title="gst_navigation_query_set_angles ()">gst_navigation_query_set_angles</a>, function in <a class="link" href="gst-plugins-base-libs-gstnavigation.html" title="gstnavigation">gstnavigation</a>
</dt>
<dd></dd>
<dt>
-<a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gst-plugins-base-libs/html/gst-plugins-base-libs-gstnavigation.html#gst-navigation-query-set-commands">gst_navigation_query_set_commands</a>, function in <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gst-plugins-base-libs/html/gst-plugins-base-libs-gstnavigation.html">gstnavigation</a>
+<a class="link" href="gst-plugins-base-libs-gstnavigation.html#gst-navigation-query-set-commands" title="gst_navigation_query_set_commands ()">gst_navigation_query_set_commands</a>, function in <a class="link" href="gst-plugins-base-libs-gstnavigation.html" title="gstnavigation">gstnavigation</a>
</dt>
<dd></dd>
<dt>
-<a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gst-plugins-base-libs/html/gst-plugins-base-libs-gstnavigation.html#gst-navigation-query-set-commandsv">gst_navigation_query_set_commandsv</a>, function in <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gst-plugins-base-libs/html/gst-plugins-base-libs-gstnavigation.html">gstnavigation</a>
+<a class="link" href="gst-plugins-base-libs-gstnavigation.html#gst-navigation-query-set-commandsv" title="gst_navigation_query_set_commandsv ()">gst_navigation_query_set_commandsv</a>, function in <a class="link" href="gst-plugins-base-libs-gstnavigation.html" title="gstnavigation">gstnavigation</a>
</dt>
<dd></dd>
<dt>
-<a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gst-plugins-base-libs/html/gst-plugins-base-libs-gstnavigation.html#gst-navigation-send-command">gst_navigation_send_command</a>, function in <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gst-plugins-base-libs/html/gst-plugins-base-libs-gstnavigation.html">gstnavigation</a>
+<a class="link" href="gst-plugins-base-libs-gstnavigation.html#gst-navigation-send-command" title="gst_navigation_send_command ()">gst_navigation_send_command</a>, function in <a class="link" href="gst-plugins-base-libs-gstnavigation.html" title="gstnavigation">gstnavigation</a>
</dt>
<dd></dd>
<dt>
-<a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gst-plugins-base-libs/html/gst-plugins-base-libs-gstnavigation.html#gst-navigation-send-event">gst_navigation_send_event</a>, function in <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gst-plugins-base-libs/html/gst-plugins-base-libs-gstnavigation.html">gstnavigation</a>
+<a class="link" href="gst-plugins-base-libs-gstnavigation.html#gst-navigation-send-event" title="gst_navigation_send_event ()">gst_navigation_send_event</a>, function in <a class="link" href="gst-plugins-base-libs-gstnavigation.html" title="gstnavigation">gstnavigation</a>
</dt>
<dd></dd>
<dt>
-<a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gst-plugins-base-libs/html/gst-plugins-base-libs-gstnavigation.html#gst-navigation-send-key-event">gst_navigation_send_key_event</a>, function in <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gst-plugins-base-libs/html/gst-plugins-base-libs-gstnavigation.html">gstnavigation</a>
+<a class="link" href="gst-plugins-base-libs-gstnavigation.html#gst-navigation-send-key-event" title="gst_navigation_send_key_event ()">gst_navigation_send_key_event</a>, function in <a class="link" href="gst-plugins-base-libs-gstnavigation.html" title="gstnavigation">gstnavigation</a>
</dt>
<dd></dd>
<dt>
-<a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gst-plugins-base-libs/html/gst-plugins-base-libs-gstnavigation.html#gst-navigation-send-mouse-event">gst_navigation_send_mouse_event</a>, function in <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gst-plugins-base-libs/html/gst-plugins-base-libs-gstnavigation.html">gstnavigation</a>
+<a class="link" href="gst-plugins-base-libs-gstnavigation.html#gst-navigation-send-mouse-event" title="gst_navigation_send_mouse_event ()">gst_navigation_send_mouse_event</a>, function in <a class="link" href="gst-plugins-base-libs-gstnavigation.html" title="gstnavigation">gstnavigation</a>
</dt>
<dd></dd>
<a name="idxP"></a><h3 class="title">P</h3>
diff --git a/docs/libs/html/gst-plugins-base-libs-1.0.devhelp2 b/docs/libs/html/gst-plugins-base-libs-1.0.devhelp2
index 7e56d03..7a583d6 100644
--- a/docs/libs/html/gst-plugins-base-libs-1.0.devhelp2
+++ b/docs/libs/html/gst-plugins-base-libs-1.0.devhelp2
@@ -98,6 +98,7 @@
<sub name="GstVideoEncoder" link="gst-plugins-base-libs-GstVideoEncoder.html"/>
<sub name="GstVideoPool" link="gst-plugins-base-libs-GstVideoPool.html"/>
<sub name="gstvideoutils" link="gst-plugins-base-libs-gstvideoutils.html"/>
+ <sub name="gstnavigation" link="gst-plugins-base-libs-gstnavigation.html"/>
</sub>
</sub>
<sub name="Object Hierarchy" link="gstreamer-libs-hierarchy.html"/>
@@ -1596,5 +1597,41 @@
<keyword type="struct" name="struct GstVideoCodecFrame" link="gst-plugins-base-libs-gstvideoutils.html#GstVideoCodecFrame"/>
<keyword type="enum" name="enum GstVideoCodecFrameFlags" link="gst-plugins-base-libs-gstvideoutils.html#GstVideoCodecFrameFlags"/>
<keyword type="struct" name="struct GstVideoCodecState" link="gst-plugins-base-libs-gstvideoutils.html#GstVideoCodecState"/>
+ <keyword type="function" name="gst_navigation_send_event ()" link="gst-plugins-base-libs-gstnavigation.html#gst-navigation-send-event"/>
+ <keyword type="function" name="gst_navigation_send_key_event ()" link="gst-plugins-base-libs-gstnavigation.html#gst-navigation-send-key-event"/>
+ <keyword type="function" name="gst_navigation_send_mouse_event ()" link="gst-plugins-base-libs-gstnavigation.html#gst-navigation-send-mouse-event"/>
+ <keyword type="function" name="gst_navigation_send_command ()" link="gst-plugins-base-libs-gstnavigation.html#gst-navigation-send-command"/>
+ <keyword type="function" name="gst_navigation_event_parse_command ()" link="gst-plugins-base-libs-gstnavigation.html#gst-navigation-event-parse-command"/>
+ <keyword type="function" name="gst_navigation_event_parse_key_event ()" link="gst-plugins-base-libs-gstnavigation.html#gst-navigation-event-parse-key-event"/>
+ <keyword type="function" name="gst_navigation_event_parse_mouse_button_event ()" link="gst-plugins-base-libs-gstnavigation.html#gst-navigation-event-parse-mouse-button-event"/>
+ <keyword type="function" name="gst_navigation_event_parse_mouse_move_event ()" link="gst-plugins-base-libs-gstnavigation.html#gst-navigation-event-parse-mouse-move-event"/>
+ <keyword type="function" name="gst_navigation_message_get_type ()" link="gst-plugins-base-libs-gstnavigation.html#gst-navigation-message-get-type"/>
+ <keyword type="function" name="gst_navigation_message_new_angles_changed ()" link="gst-plugins-base-libs-gstnavigation.html#gst-navigation-message-new-angles-changed"/>
+ <keyword type="function" name="gst_navigation_message_new_commands_changed ()" link="gst-plugins-base-libs-gstnavigation.html#gst-navigation-message-new-commands-changed"/>
+ <keyword type="function" name="gst_navigation_message_new_mouse_over ()" link="gst-plugins-base-libs-gstnavigation.html#gst-navigation-message-new-mouse-over"/>
+ <keyword type="function" name="gst_navigation_message_parse_mouse_over ()" link="gst-plugins-base-libs-gstnavigation.html#gst-navigation-message-parse-mouse-over"/>
+ <keyword type="function" name="gst_navigation_message_parse_angles_changed ()" link="gst-plugins-base-libs-gstnavigation.html#gst-navigation-message-parse-angles-changed"/>
+ <keyword type="function" name="gst_navigation_query_new_angles ()" link="gst-plugins-base-libs-gstnavigation.html#gst-navigation-query-new-angles"/>
+ <keyword type="function" name="gst_navigation_query_get_type ()" link="gst-plugins-base-libs-gstnavigation.html#gst-navigation-query-get-type"/>
+ <keyword type="function" name="gst_navigation_query_new_commands ()" link="gst-plugins-base-libs-gstnavigation.html#gst-navigation-query-new-commands"/>
+ <keyword type="function" name="gst_navigation_query_parse_angles ()" link="gst-plugins-base-libs-gstnavigation.html#gst-navigation-query-parse-angles"/>
+ <keyword type="function" name="gst_navigation_query_parse_commands_length ()" link="gst-plugins-base-libs-gstnavigation.html#gst-navigation-query-parse-commands-length"/>
+ <keyword type="function" name="gst_navigation_query_parse_commands_nth ()" link="gst-plugins-base-libs-gstnavigation.html#gst-navigation-query-parse-commands-nth"/>
+ <keyword type="function" name="gst_navigation_query_set_angles ()" link="gst-plugins-base-libs-gstnavigation.html#gst-navigation-query-set-angles"/>
+ <keyword type="function" name="gst_navigation_query_set_commands ()" link="gst-plugins-base-libs-gstnavigation.html#gst-navigation-query-set-commands"/>
+ <keyword type="function" name="gst_navigation_query_set_commandsv ()" link="gst-plugins-base-libs-gstnavigation.html#gst-navigation-query-set-commandsv"/>
+ <keyword type="struct" name="GstNavigation" link="gst-plugins-base-libs-gstnavigation.html#GstNavigation-struct"/>
+ <keyword type="struct" name="struct GstNavigationInterface" link="gst-plugins-base-libs-gstnavigation.html#GstNavigationInterface"/>
+ <keyword type="enum" name="enum GstNavigationCommand" link="gst-plugins-base-libs-gstnavigation.html#GstNavigationCommand"/>
+ <keyword type="enum" name="enum GstNavigationEventType" link="gst-plugins-base-libs-gstnavigation.html#GstNavigationEventType"/>
+ <keyword type="enum" name="enum GstNavigationMessageType" link="gst-plugins-base-libs-gstnavigation.html#GstNavigationMessageType"/>
+ <keyword type="enum" name="enum GstNavigationQueryType" link="gst-plugins-base-libs-gstnavigation.html#GstNavigationQueryType"/>
+ <keyword type="macro" name="GST_NAVIGATION_COMMAND_DVD_ANGLE_MENU" link="gst-plugins-base-libs-gstnavigation.html#GST-NAVIGATION-COMMAND-DVD-ANGLE-MENU:CAPS"/>
+ <keyword type="macro" name="GST_NAVIGATION_COMMAND_DVD_AUDIO_MENU" link="gst-plugins-base-libs-gstnavigation.html#GST-NAVIGATION-COMMAND-DVD-AUDIO-MENU:CAPS"/>
+ <keyword type="macro" name="GST_NAVIGATION_COMMAND_DVD_CHAPTER_MENU" link="gst-plugins-base-libs-gstnavigation.html#GST-NAVIGATION-COMMAND-DVD-CHAPTER-MENU:CAPS"/>
+ <keyword type="macro" name="GST_NAVIGATION_COMMAND_DVD_MENU" link="gst-plugins-base-libs-gstnavigation.html#GST-NAVIGATION-COMMAND-DVD-MENU:CAPS"/>
+ <keyword type="macro" name="GST_NAVIGATION_COMMAND_DVD_ROOT_MENU" link="gst-plugins-base-libs-gstnavigation.html#GST-NAVIGATION-COMMAND-DVD-ROOT-MENU:CAPS"/>
+ <keyword type="macro" name="GST_NAVIGATION_COMMAND_DVD_SUBPICTURE_MENU" link="gst-plugins-base-libs-gstnavigation.html#GST-NAVIGATION-COMMAND-DVD-SUBPICTURE-MENU:CAPS"/>
+ <keyword type="macro" name="GST_NAVIGATION_COMMAND_DVD_TITLE_MENU" link="gst-plugins-base-libs-gstnavigation.html#GST-NAVIGATION-COMMAND-DVD-TITLE-MENU:CAPS"/>
</functions>
</book>
diff --git a/docs/libs/html/gst-plugins-base-libs-gstaudiobasesrc.html b/docs/libs/html/gst-plugins-base-libs-gstaudiobasesrc.html
index 9e94f81..9b93dff 100644
--- a/docs/libs/html/gst-plugins-base-libs-gstaudiobasesrc.html
+++ b/docs/libs/html/gst-plugins-base-libs-gstaudiobasesrc.html
@@ -419,7 +419,7 @@ functionality.</p>
</colgroup>
<tbody>
<tr>
-<td class="struct_member_name"><p><span class="type">GstPushSrcClass</span> <em class="structfield"><code><a name="GstAudioBaseSrcClass.parent-class"></a>parent_class</code></em>;</p></td>
+<td class="struct_member_name"><p><a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer-libs/html/GstPushSrc.html#GstPushSrcClass"><span class="type">GstPushSrcClass</span></a> <em class="structfield"><code><a name="GstAudioBaseSrcClass.parent-class"></a>parent_class</code></em>;</p></td>
<td class="struct_member_description"><p>the parent class.</p></td>
<td class="struct_member_annotations"> </td>
</tr>
diff --git a/docs/libs/html/gst-plugins-base-libs-gstaudiocdsrc.html b/docs/libs/html/gst-plugins-base-libs-gstaudiocdsrc.html
index 0f17b28..7cb2ce4 100644
--- a/docs/libs/html/gst-plugins-base-libs-gstaudiocdsrc.html
+++ b/docs/libs/html/gst-plugins-base-libs-gstaudiocdsrc.html
@@ -265,7 +265,7 @@ copy of the structure (and take ownership of the taglist if there is one).</p>
</colgroup>
<tbody>
<tr>
-<td class="struct_member_name"><p><span class="type">GstPushSrcClass</span> <em class="structfield"><code><a name="GstAudioCdSrcClass.pushsrc-class"></a>pushsrc_class</code></em>;</p></td>
+<td class="struct_member_name"><p><a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer-libs/html/GstPushSrc.html#GstPushSrcClass"><span class="type">GstPushSrcClass</span></a> <em class="structfield"><code><a name="GstAudioCdSrcClass.pushsrc-class"></a>pushsrc_class</code></em>;</p></td>
<td class="struct_member_description"><p>the parent class</p></td>
<td class="struct_member_annotations"> </td>
</tr>
diff --git a/docs/libs/html/gst-plugins-base-libs-gstnavigation.html b/docs/libs/html/gst-plugins-base-libs-gstnavigation.html
new file mode 100644
index 0000000..ee52a48
--- /dev/null
+++ b/docs/libs/html/gst-plugins-base-libs-gstnavigation.html
@@ -0,0 +1,1572 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<title>GStreamer Base Plugins 1.0 Library Reference Manual: gstnavigation</title>
+<meta name="generator" content="DocBook XSL Stylesheets V1.78.1">
+<link rel="home" href="index.html" title="GStreamer Base Plugins 1.0 Library Reference Manual">
+<link rel="up" href="gstreamer-video.html" title="Video Library">
+<link rel="prev" href="gst-plugins-base-libs-gstvideoutils.html" title="gstvideoutils">
+<link rel="next" href="gstreamer-libs-hierarchy.html" title="Part II. Object Hierarchy">
+<meta name="generator" content="GTK-Doc V1.20 (XML mode)">
+<link rel="stylesheet" href="style.css" type="text/css">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="10"><tr valign="middle">
+<td width="100%" align="left" class="shortcuts">
+<a href="#" class="shortcut">Top</a><span id="nav_description"> <span class="dim">|</span> 
+ <a href="#gst-plugins-base-libs-gstnavigation.description" class="shortcut">Description</a></span><span id="nav_hierarchy"> <span class="dim">|</span> 
+ <a href="#gst-plugins-base-libs-gstnavigation.object-hierarchy" class="shortcut">Object Hierarchy</a></span>
+</td>
+<td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
+<td><a accesskey="u" href="gstreamer-video.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
+<td><a accesskey="p" href="gst-plugins-base-libs-gstvideoutils.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
+<td><a accesskey="n" href="gstreamer-libs-hierarchy.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
+</tr></table>
+<div class="refentry">
+<a name="gst-plugins-base-libs-gstnavigation"></a><div class="titlepage"></div>
+<div class="refnamediv"><table width="100%"><tr>
+<td valign="top">
+<h2><span class="refentrytitle"><a name="gst-plugins-base-libs-gstnavigation.top_of_page"></a>gstnavigation</span></h2>
+<p>gstnavigation — Interface for creating, sending and parsing navigation
+events.</p>
+</td>
+<td class="gallery_image" valign="top" align="right"></td>
+</tr></table></div>
+<div class="refsect1">
+<a name="gst-plugins-base-libs-gstnavigation.functions"></a><h2>Functions</h2>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="150px" class="functions_return">
+<col class="functions_name">
+</colgroup>
+<tbody>
+<tr>
+<td class="function_type">
+<span class="returnvalue">void</span>
+</td>
+<td class="function_name">
+<a class="link" href="gst-plugins-base-libs-gstnavigation.html#gst-navigation-send-event" title="gst_navigation_send_event ()">gst_navigation_send_event</a> <span class="c_punctuation">()</span>
+</td>
+</tr>
+<tr>
+<td class="function_type">
+<span class="returnvalue">void</span>
+</td>
+<td class="function_name">
+<a class="link" href="gst-plugins-base-libs-gstnavigation.html#gst-navigation-send-key-event" title="gst_navigation_send_key_event ()">gst_navigation_send_key_event</a> <span class="c_punctuation">()</span>
+</td>
+</tr>
+<tr>
+<td class="function_type">
+<span class="returnvalue">void</span>
+</td>
+<td class="function_name">
+<a class="link" href="gst-plugins-base-libs-gstnavigation.html#gst-navigation-send-mouse-event" title="gst_navigation_send_mouse_event ()">gst_navigation_send_mouse_event</a> <span class="c_punctuation">()</span>
+</td>
+</tr>
+<tr>
+<td class="function_type">
+<span class="returnvalue">void</span>
+</td>
+<td class="function_name">
+<a class="link" href="gst-plugins-base-libs-gstnavigation.html#gst-navigation-send-command" title="gst_navigation_send_command ()">gst_navigation_send_command</a> <span class="c_punctuation">()</span>
+</td>
+</tr>
+<tr>
+<td class="function_type">
+<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+</td>
+<td class="function_name">
+<a class="link" href="gst-plugins-base-libs-gstnavigation.html#gst-navigation-event-parse-command" title="gst_navigation_event_parse_command ()">gst_navigation_event_parse_command</a> <span class="c_punctuation">()</span>
+</td>
+</tr>
+<tr>
+<td class="function_type">
+<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+</td>
+<td class="function_name">
+<a class="link" href="gst-plugins-base-libs-gstnavigation.html#gst-navigation-event-parse-key-event" title="gst_navigation_event_parse_key_event ()">gst_navigation_event_parse_key_event</a> <span class="c_punctuation">()</span>
+</td>
+</tr>
+<tr>
+<td class="function_type">
+<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+</td>
+<td class="function_name">
+<a class="link" href="gst-plugins-base-libs-gstnavigation.html#gst-navigation-event-parse-mouse-button-event" title="gst_navigation_event_parse_mouse_button_event ()">gst_navigation_event_parse_mouse_button_event</a> <span class="c_punctuation">()</span>
+</td>
+</tr>
+<tr>
+<td class="function_type">
+<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+</td>
+<td class="function_name">
+<a class="link" href="gst-plugins-base-libs-gstnavigation.html#gst-navigation-event-parse-mouse-move-event" title="gst_navigation_event_parse_mouse_move_event ()">gst_navigation_event_parse_mouse_move_event</a> <span class="c_punctuation">()</span>
+</td>
+</tr>
+<tr>
+<td class="function_type">
+<a class="link" href="gst-plugins-base-libs-gstnavigation.html#GstNavigationMessageType" title="enum GstNavigationMessageType"><span class="returnvalue">GstNavigationMessageType</span></a>
+</td>
+<td class="function_name">
+<a class="link" href="gst-plugins-base-libs-gstnavigation.html#gst-navigation-message-get-type" title="gst_navigation_message_get_type ()">gst_navigation_message_get_type</a> <span class="c_punctuation">()</span>
+</td>
+</tr>
+<tr>
+<td class="function_type">
+<a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/gstreamer-GstMessage.html#GstMessage"><span class="returnvalue">GstMessage</span></a> *
+</td>
+<td class="function_name">
+<a class="link" href="gst-plugins-base-libs-gstnavigation.html#gst-navigation-message-new-angles-changed" title="gst_navigation_message_new_angles_changed ()">gst_navigation_message_new_angles_changed</a> <span class="c_punctuation">()</span>
+</td>
+</tr>
+<tr>
+<td class="function_type">
+<a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/gstreamer-GstMessage.html#GstMessage"><span class="returnvalue">GstMessage</span></a> *
+</td>
+<td class="function_name">
+<a class="link" href="gst-plugins-base-libs-gstnavigation.html#gst-navigation-message-new-commands-changed" title="gst_navigation_message_new_commands_changed ()">gst_navigation_message_new_commands_changed</a> <span class="c_punctuation">()</span>
+</td>
+</tr>
+<tr>
+<td class="function_type">
+<a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/gstreamer-GstMessage.html#GstMessage"><span class="returnvalue">GstMessage</span></a> *
+</td>
+<td class="function_name">
+<a class="link" href="gst-plugins-base-libs-gstnavigation.html#gst-navigation-message-new-mouse-over" title="gst_navigation_message_new_mouse_over ()">gst_navigation_message_new_mouse_over</a> <span class="c_punctuation">()</span>
+</td>
+</tr>
+<tr>
+<td class="function_type">
+<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+</td>
+<td class="function_name">
+<a class="link" href="gst-plugins-base-libs-gstnavigation.html#gst-navigation-message-parse-mouse-over" title="gst_navigation_message_parse_mouse_over ()">gst_navigation_message_parse_mouse_over</a> <span class="c_punctuation">()</span>
+</td>
+</tr>
+<tr>
+<td class="function_type">
+<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+</td>
+<td class="function_name">
+<a class="link" href="gst-plugins-base-libs-gstnavigation.html#gst-navigation-message-parse-angles-changed" title="gst_navigation_message_parse_angles_changed ()">gst_navigation_message_parse_angles_changed</a> <span class="c_punctuation">()</span>
+</td>
+</tr>
+<tr>
+<td class="function_type">
+<a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/gstreamer-GstQuery.html#GstQuery"><span class="returnvalue">GstQuery</span></a> *
+</td>
+<td class="function_name">
+<a class="link" href="gst-plugins-base-libs-gstnavigation.html#gst-navigation-query-new-angles" title="gst_navigation_query_new_angles ()">gst_navigation_query_new_angles</a> <span class="c_punctuation">()</span>
+</td>
+</tr>
+<tr>
+<td class="function_type">
+<a class="link" href="gst-plugins-base-libs-gstnavigation.html#GstNavigationQueryType" title="enum GstNavigationQueryType"><span class="returnvalue">GstNavigationQueryType</span></a>
+</td>
+<td class="function_name">
+<a class="link" href="gst-plugins-base-libs-gstnavigation.html#gst-navigation-query-get-type" title="gst_navigation_query_get_type ()">gst_navigation_query_get_type</a> <span class="c_punctuation">()</span>
+</td>
+</tr>
+<tr>
+<td class="function_type">
+<a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/gstreamer-GstQuery.html#GstQuery"><span class="returnvalue">GstQuery</span></a> *
+</td>
+<td class="function_name">
+<a class="link" href="gst-plugins-base-libs-gstnavigation.html#gst-navigation-query-new-commands" title="gst_navigation_query_new_commands ()">gst_navigation_query_new_commands</a> <span class="c_punctuation">()</span>
+</td>
+</tr>
+<tr>
+<td class="function_type">
+<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+</td>
+<td class="function_name">
+<a class="link" href="gst-plugins-base-libs-gstnavigation.html#gst-navigation-query-parse-angles" title="gst_navigation_query_parse_angles ()">gst_navigation_query_parse_angles</a> <span class="c_punctuation">()</span>
+</td>
+</tr>
+<tr>
+<td class="function_type">
+<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+</td>
+<td class="function_name">
+<a class="link" href="gst-plugins-base-libs-gstnavigation.html#gst-navigation-query-parse-commands-length" title="gst_navigation_query_parse_commands_length ()">gst_navigation_query_parse_commands_length</a> <span class="c_punctuation">()</span>
+</td>
+</tr>
+<tr>
+<td class="function_type">
+<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+</td>
+<td class="function_name">
+<a class="link" href="gst-plugins-base-libs-gstnavigation.html#gst-navigation-query-parse-commands-nth" title="gst_navigation_query_parse_commands_nth ()">gst_navigation_query_parse_commands_nth</a> <span class="c_punctuation">()</span>
+</td>
+</tr>
+<tr>
+<td class="function_type">
+<span class="returnvalue">void</span>
+</td>
+<td class="function_name">
+<a class="link" href="gst-plugins-base-libs-gstnavigation.html#gst-navigation-query-set-angles" title="gst_navigation_query_set_angles ()">gst_navigation_query_set_angles</a> <span class="c_punctuation">()</span>
+</td>
+</tr>
+<tr>
+<td class="function_type">
+<span class="returnvalue">void</span>
+</td>
+<td class="function_name">
+<a class="link" href="gst-plugins-base-libs-gstnavigation.html#gst-navigation-query-set-commands" title="gst_navigation_query_set_commands ()">gst_navigation_query_set_commands</a> <span class="c_punctuation">()</span>
+</td>
+</tr>
+<tr>
+<td class="function_type">
+<span class="returnvalue">void</span>
+</td>
+<td class="function_name">
+<a class="link" href="gst-plugins-base-libs-gstnavigation.html#gst-navigation-query-set-commandsv" title="gst_navigation_query_set_commandsv ()">gst_navigation_query_set_commandsv</a> <span class="c_punctuation">()</span>
+</td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<a name="GstNavigation"></a><div class="refsect1">
+<a name="gst-plugins-base-libs-gstnavigation.other"></a><h2>Types and Values</h2>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="150px" class="name">
+<col class="description">
+</colgroup>
+<tbody>
+<tr>
+<td class="datatype_keyword"> </td>
+<td class="function_name"><a class="link" href="gst-plugins-base-libs-gstnavigation.html#GstNavigation-struct" title="GstNavigation">GstNavigation</a></td>
+</tr>
+<tr>
+<td class="datatype_keyword">struct</td>
+<td class="function_name"><a class="link" href="gst-plugins-base-libs-gstnavigation.html#GstNavigationInterface" title="struct GstNavigationInterface">GstNavigationInterface</a></td>
+</tr>
+<tr>
+<td class="datatype_keyword">enum</td>
+<td class="function_name"><a class="link" href="gst-plugins-base-libs-gstnavigation.html#GstNavigationCommand" title="enum GstNavigationCommand">GstNavigationCommand</a></td>
+</tr>
+<tr>
+<td class="datatype_keyword">enum</td>
+<td class="function_name"><a class="link" href="gst-plugins-base-libs-gstnavigation.html#GstNavigationEventType" title="enum GstNavigationEventType">GstNavigationEventType</a></td>
+</tr>
+<tr>
+<td class="datatype_keyword">enum</td>
+<td class="function_name"><a class="link" href="gst-plugins-base-libs-gstnavigation.html#GstNavigationMessageType" title="enum GstNavigationMessageType">GstNavigationMessageType</a></td>
+</tr>
+<tr>
+<td class="datatype_keyword">enum</td>
+<td class="function_name"><a class="link" href="gst-plugins-base-libs-gstnavigation.html#GstNavigationQueryType" title="enum GstNavigationQueryType">GstNavigationQueryType</a></td>
+</tr>
+<tr>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="gst-plugins-base-libs-gstnavigation.html#GST-NAVIGATION-COMMAND-DVD-ANGLE-MENU:CAPS" title="GST_NAVIGATION_COMMAND_DVD_ANGLE_MENU">GST_NAVIGATION_COMMAND_DVD_ANGLE_MENU</a></td>
+</tr>
+<tr>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="gst-plugins-base-libs-gstnavigation.html#GST-NAVIGATION-COMMAND-DVD-AUDIO-MENU:CAPS" title="GST_NAVIGATION_COMMAND_DVD_AUDIO_MENU">GST_NAVIGATION_COMMAND_DVD_AUDIO_MENU</a></td>
+</tr>
+<tr>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="gst-plugins-base-libs-gstnavigation.html#GST-NAVIGATION-COMMAND-DVD-CHAPTER-MENU:CAPS" title="GST_NAVIGATION_COMMAND_DVD_CHAPTER_MENU">GST_NAVIGATION_COMMAND_DVD_CHAPTER_MENU</a></td>
+</tr>
+<tr>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="gst-plugins-base-libs-gstnavigation.html#GST-NAVIGATION-COMMAND-DVD-MENU:CAPS" title="GST_NAVIGATION_COMMAND_DVD_MENU">GST_NAVIGATION_COMMAND_DVD_MENU</a></td>
+</tr>
+<tr>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="gst-plugins-base-libs-gstnavigation.html#GST-NAVIGATION-COMMAND-DVD-ROOT-MENU:CAPS" title="GST_NAVIGATION_COMMAND_DVD_ROOT_MENU">GST_NAVIGATION_COMMAND_DVD_ROOT_MENU</a></td>
+</tr>
+<tr>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="gst-plugins-base-libs-gstnavigation.html#GST-NAVIGATION-COMMAND-DVD-SUBPICTURE-MENU:CAPS" title="GST_NAVIGATION_COMMAND_DVD_SUBPICTURE_MENU">GST_NAVIGATION_COMMAND_DVD_SUBPICTURE_MENU</a></td>
+</tr>
+<tr>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="gst-plugins-base-libs-gstnavigation.html#GST-NAVIGATION-COMMAND-DVD-TITLE-MENU:CAPS" title="GST_NAVIGATION_COMMAND_DVD_TITLE_MENU">GST_NAVIGATION_COMMAND_DVD_TITLE_MENU</a></td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<div class="refsect1">
+<a name="gst-plugins-base-libs-gstnavigation.object-hierarchy"></a><h2>Object Hierarchy</h2>
+<pre class="screen"> GInterface
+ <span class="lineart">╰──</span> GstNavigation
+</pre>
+</div>
+<div class="refsect1">
+<a name="gst-plugins-base-libs-gstnavigation.includes"></a><h2>Includes</h2>
+<pre class="synopsis">#include &lt;gst/video/navigation.h&gt;
+</pre>
+</div>
+<div class="refsect1">
+<a name="gst-plugins-base-libs-gstnavigation.description"></a><h2>Description</h2>
+<p>The Navigation interface is used for creating and injecting navigation related
+events such as mouse button presses, cursor motion and key presses. The associated
+library also provides methods for parsing received events, and for sending and
+receiving navigation related bus events. One main usecase is DVD menu navigation.</p>
+<p>The main parts of the API are:</p>
+<div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; ">
+<li class="listitem"><p>
+The GstNavigation interface, implemented by elements which provide an application
+with the ability to create and inject navigation events into the pipeline.
+</p></li>
+<li class="listitem"><p>
+GstNavigation event handling API. GstNavigation events are created in response to
+calls on a GstNavigation interface implementation, and sent in the pipeline. Upstream
+elements can use the navigation event API functions to parse the contents of received
+messages.
+</p></li>
+<li class="listitem">
+<p>
+GstNavigation message handling API. GstNavigation messages may be sent on the message
+bus to inform applications of navigation related changes in the pipeline, such as the
+mouse moving over a clickable region, or the set of available angles changing.
+</p>
+<p>
+The GstNavigation message functions provide functions for creating and parsing
+custom bus messages for signaling GstNavigation changes.
+</p>
+</li>
+</ul></div>
+</div>
+<div class="refsect1">
+<a name="gst-plugins-base-libs-gstnavigation.functions_details"></a><h2>Functions</h2>
+<div class="refsect2">
+<a name="gst-navigation-send-event"></a><h3>gst_navigation_send_event ()</h3>
+<pre class="programlisting"><span class="returnvalue">void</span>
+gst_navigation_send_event (<em class="parameter"><code><a class="link" href="gst-plugins-base-libs-gstnavigation.html#GstNavigation"><span class="type">GstNavigation</span></a> *navigation</code></em>,
+ <em class="parameter"><code><a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/gstreamer-GstStructure.html#GstStructure"><span class="type">GstStructure</span></a> *structure</code></em>);</pre>
+</div>
+<hr>
+<div class="refsect2">
+<a name="gst-navigation-send-key-event"></a><h3>gst_navigation_send_key_event ()</h3>
+<pre class="programlisting"><span class="returnvalue">void</span>
+gst_navigation_send_key_event (<em class="parameter"><code><a class="link" href="gst-plugins-base-libs-gstnavigation.html#GstNavigation"><span class="type">GstNavigation</span></a> *navigation</code></em>,
+ <em class="parameter"><code>const <span class="type">char</span> *event</code></em>,
+ <em class="parameter"><code>const <span class="type">char</span> *key</code></em>);</pre>
+<div class="refsect3">
+<a name="id-1.2.15.16.9.3.4"></a><h4>Parameters</h4>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
+<tbody>
+<tr>
+<td class="parameter_name"><p>navigation</p></td>
+<td class="parameter_description"><p>The navigation interface instance</p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+<tr>
+<td class="parameter_name"><p>event</p></td>
+<td class="parameter_description"><p>The type of the key event. Recognised values are "key-press" and
+"key-release"</p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+<tr>
+<td class="parameter_name"><p>key</p></td>
+<td class="parameter_description"><p>Character representation of the key. This is typically as produced
+by XKeysymToString.</p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+</tbody>
+</table></div>
+</div>
+</div>
+<hr>
+<div class="refsect2">
+<a name="gst-navigation-send-mouse-event"></a><h3>gst_navigation_send_mouse_event ()</h3>
+<pre class="programlisting"><span class="returnvalue">void</span>
+gst_navigation_send_mouse_event (<em class="parameter"><code><a class="link" href="gst-plugins-base-libs-gstnavigation.html#GstNavigation"><span class="type">GstNavigation</span></a> *navigation</code></em>,
+ <em class="parameter"><code>const <span class="type">char</span> *event</code></em>,
+ <em class="parameter"><code><span class="type">int</span> button</code></em>,
+ <em class="parameter"><code><span class="type">double</span> x</code></em>,
+ <em class="parameter"><code><span class="type">double</span> y</code></em>);</pre>
+<p>Sends a mouse event to the navigation interface. Mouse event coordinates
+are sent relative to the display space of the related output area. This is
+usually the size in pixels of the window associated with the element
+implementing the <a class="link" href="gst-plugins-base-libs-gstnavigation.html#GstNavigation"><span class="type">GstNavigation</span></a> interface.</p>
+<div class="refsect3">
+<a name="id-1.2.15.16.9.4.5"></a><h4>Parameters</h4>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
+<tbody>
+<tr>
+<td class="parameter_name"><p>navigation</p></td>
+<td class="parameter_description"><p>The navigation interface instance</p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+<tr>
+<td class="parameter_name"><p>event</p></td>
+<td class="parameter_description"><p>The type of mouse event, as a text string. Recognised values are
+"mouse-button-press", "mouse-button-release" and "mouse-move".</p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+<tr>
+<td class="parameter_name"><p>button</p></td>
+<td class="parameter_description"><p>The button number of the button being pressed or released. Pass 0
+for mouse-move events.</p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+<tr>
+<td class="parameter_name"><p>x</p></td>
+<td class="parameter_description"><p>The x coordinate of the mouse event.</p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+<tr>
+<td class="parameter_name"><p>y</p></td>
+<td class="parameter_description"><p>The y coordinate of the mouse event.</p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+</tbody>
+</table></div>
+</div>
+</div>
+<hr>
+<div class="refsect2">
+<a name="gst-navigation-send-command"></a><h3>gst_navigation_send_command ()</h3>
+<pre class="programlisting"><span class="returnvalue">void</span>
+gst_navigation_send_command (<em class="parameter"><code><a class="link" href="gst-plugins-base-libs-gstnavigation.html#GstNavigation"><span class="type">GstNavigation</span></a> *navigation</code></em>,
+ <em class="parameter"><code><a class="link" href="gst-plugins-base-libs-gstnavigation.html#GstNavigationCommand" title="enum GstNavigationCommand"><span class="type">GstNavigationCommand</span></a> command</code></em>);</pre>
+<p>Sends the indicated command to the navigation interface.</p>
+<div class="refsect3">
+<a name="id-1.2.15.16.9.5.5"></a><h4>Parameters</h4>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
+<tbody>
+<tr>
+<td class="parameter_name"><p>navigation</p></td>
+<td class="parameter_description"><p>The navigation interface instance</p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+<tr>
+<td class="parameter_name"><p>command</p></td>
+<td class="parameter_description"><p>The command to issue</p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+</tbody>
+</table></div>
+</div>
+</div>
+<hr>
+<div class="refsect2">
+<a name="gst-navigation-event-parse-command"></a><h3>gst_navigation_event_parse_command ()</h3>
+<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+gst_navigation_event_parse_command (<em class="parameter"><code><a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/gstreamer-GstEvent.html#GstEvent"><span class="type">GstEvent</span></a> *event</code></em>,
+ <em class="parameter"><code><a class="link" href="gst-plugins-base-libs-gstnavigation.html#GstNavigationCommand" title="enum GstNavigationCommand"><span class="type">GstNavigationCommand</span></a> *command</code></em>);</pre>
+<p>Inspect a <a class="link" href="gst-plugins-base-libs-gstnavigation.html#GstNavigation"><span class="type">GstNavigation</span></a> command event and retrieve the enum value of the
+associated command.</p>
+<div class="refsect3">
+<a name="id-1.2.15.16.9.6.5"></a><h4>Parameters</h4>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
+<tbody>
+<tr>
+<td class="parameter_name"><p>event</p></td>
+<td class="parameter_description"><p>A <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/gstreamer-GstEvent.html#GstEvent"><span class="type">GstEvent</span></a> to inspect.</p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+<tr>
+<td class="parameter_name"><p>command</p></td>
+<td class="parameter_description"><p>Pointer to GstNavigationCommand to receive the type of the
+navigation event.</p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<div class="refsect3">
+<a name="id-1.2.15.16.9.6.6"></a><h4>Returns</h4>
+<p> TRUE if the navigation command could be extracted, otherwise FALSE.</p>
+<p></p>
+</div>
+</div>
+<hr>
+<div class="refsect2">
+<a name="gst-navigation-event-parse-key-event"></a><h3>gst_navigation_event_parse_key_event ()</h3>
+<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+gst_navigation_event_parse_key_event (<em class="parameter"><code><a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/gstreamer-GstEvent.html#GstEvent"><span class="type">GstEvent</span></a> *event</code></em>,
+ <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> **key</code></em>);</pre>
+<div class="refsect3">
+<a name="id-1.2.15.16.9.7.4"></a><h4>Parameters</h4>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
+<tbody>
+<tr>
+<td class="parameter_name"><p>event</p></td>
+<td class="parameter_description"><p>A <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/gstreamer-GstEvent.html#GstEvent"><span class="type">GstEvent</span></a> to inspect.</p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+<tr>
+<td class="parameter_name"><p>key</p></td>
+<td class="parameter_description"><p>A pointer to a location to receive the string identifying the key
+press. The returned string is owned by the event, and valid only until the
+event is unreffed.</p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+</tbody>
+</table></div>
+</div>
+</div>
+<hr>
+<div class="refsect2">
+<a name="gst-navigation-event-parse-mouse-button-event"></a><h3>gst_navigation_event_parse_mouse_button_event ()</h3>
+<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+gst_navigation_event_parse_mouse_button_event
+ (<em class="parameter"><code><a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/gstreamer-GstEvent.html#GstEvent"><span class="type">GstEvent</span></a> *event</code></em>,
+ <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> *button</code></em>,
+ <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gdouble"><span class="type">gdouble</span></a> *x</code></em>,
+ <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gdouble"><span class="type">gdouble</span></a> *y</code></em>);</pre>
+<p>Retrieve the details of either a <a class="link" href="gst-plugins-base-libs-gstnavigation.html#GstNavigation"><span class="type">GstNavigation</span></a> mouse button press event or
+a mouse button release event. Determine which type the event is using
+<code class="function">gst_navigation_event_get_type()</code> to retrieve the <a class="link" href="gst-plugins-base-libs-gstnavigation.html#GstNavigationEventType" title="enum GstNavigationEventType"><span class="type">GstNavigationEventType</span></a>.</p>
+<div class="refsect3">
+<a name="id-1.2.15.16.9.8.5"></a><h4>Parameters</h4>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
+<tbody>
+<tr>
+<td class="parameter_name"><p>event</p></td>
+<td class="parameter_description"><p>A <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/gstreamer-GstEvent.html#GstEvent"><span class="type">GstEvent</span></a> to inspect.</p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+<tr>
+<td class="parameter_name"><p>button</p></td>
+<td class="parameter_description"><p>Pointer to a gint that will receive the button number associated
+with the event.</p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+<tr>
+<td class="parameter_name"><p>x</p></td>
+<td class="parameter_description"><p>Pointer to a gdouble to receive the x coordinate of the mouse button
+event.</p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+<tr>
+<td class="parameter_name"><p>y</p></td>
+<td class="parameter_description"><p>Pointer to a gdouble to receive the y coordinate of the mouse button
+event.</p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<div class="refsect3">
+<a name="id-1.2.15.16.9.8.6"></a><h4>Returns</h4>
+<p> TRUE if the button number and both coordinates could be extracted,
+otherwise FALSE.</p>
+<p></p>
+</div>
+</div>
+<hr>
+<div class="refsect2">
+<a name="gst-navigation-event-parse-mouse-move-event"></a><h3>gst_navigation_event_parse_mouse_move_event ()</h3>
+<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+gst_navigation_event_parse_mouse_move_event
+ (<em class="parameter"><code><a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/gstreamer-GstEvent.html#GstEvent"><span class="type">GstEvent</span></a> *event</code></em>,
+ <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gdouble"><span class="type">gdouble</span></a> *x</code></em>,
+ <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gdouble"><span class="type">gdouble</span></a> *y</code></em>);</pre>
+<p>Inspect a <a class="link" href="gst-plugins-base-libs-gstnavigation.html#GstNavigation"><span class="type">GstNavigation</span></a> mouse movement event and extract the coordinates
+of the event.</p>
+<div class="refsect3">
+<a name="id-1.2.15.16.9.9.5"></a><h4>Parameters</h4>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
+<tbody>
+<tr>
+<td class="parameter_name"><p>event</p></td>
+<td class="parameter_description"><p>A <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/gstreamer-GstEvent.html#GstEvent"><span class="type">GstEvent</span></a> to inspect.</p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+<tr>
+<td class="parameter_name"><p>x</p></td>
+<td class="parameter_description"><p>Pointer to a gdouble to receive the x coordinate of the mouse movement.</p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+<tr>
+<td class="parameter_name"><p>y</p></td>
+<td class="parameter_description"><p>Pointer to a gdouble to receive the y coordinate of the mouse movement.</p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<div class="refsect3">
+<a name="id-1.2.15.16.9.9.6"></a><h4>Returns</h4>
+<p> TRUE if both coordinates could be extracted, otherwise FALSE.</p>
+<p></p>
+</div>
+</div>
+<hr>
+<div class="refsect2">
+<a name="gst-navigation-message-get-type"></a><h3>gst_navigation_message_get_type ()</h3>
+<pre class="programlisting"><a class="link" href="gst-plugins-base-libs-gstnavigation.html#GstNavigationMessageType" title="enum GstNavigationMessageType"><span class="returnvalue">GstNavigationMessageType</span></a>
+gst_navigation_message_get_type (<em class="parameter"><code><a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/gstreamer-GstMessage.html#GstMessage"><span class="type">GstMessage</span></a> *message</code></em>);</pre>
+<p>Check a bus message to see if it is a <a class="link" href="gst-plugins-base-libs-gstnavigation.html#GstNavigation"><span class="type">GstNavigation</span></a> event, and return
+the <a class="link" href="gst-plugins-base-libs-gstnavigation.html#GstNavigationMessageType" title="enum GstNavigationMessageType"><span class="type">GstNavigationMessageType</span></a> identifying the type of the message if so.</p>
+<div class="refsect3">
+<a name="id-1.2.15.16.9.10.5"></a><h4>Parameters</h4>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
+<tbody><tr>
+<td class="parameter_name"><p>message</p></td>
+<td class="parameter_description"><p>A <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/gstreamer-GstMessage.html#GstMessage"><span class="type">GstMessage</span></a> to inspect.</p></td>
+<td class="parameter_annotations"> </td>
+</tr></tbody>
+</table></div>
+</div>
+<div class="refsect3">
+<a name="id-1.2.15.16.9.10.6"></a><h4>Returns</h4>
+<p> The type of the <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/gstreamer-GstMessage.html#GstMessage"><span class="type">GstMessage</span></a>, or
+<a class="link" href="gst-plugins-base-libs-gstnavigation.html#GST-NAVIGATION-MESSAGE-INVALID:CAPS"><span class="type">GST_NAVIGATION_MESSAGE_INVALID</span></a> if the message is not a <a class="link" href="gst-plugins-base-libs-gstnavigation.html#GstNavigation"><span class="type">GstNavigation</span></a>
+notification.</p>
+<p></p>
+</div>
+</div>
+<hr>
+<div class="refsect2">
+<a name="gst-navigation-message-new-angles-changed"></a><h3>gst_navigation_message_new_angles_changed ()</h3>
+<pre class="programlisting"><a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/gstreamer-GstMessage.html#GstMessage"><span class="returnvalue">GstMessage</span></a> *
+gst_navigation_message_new_angles_changed
+ (<em class="parameter"><code><a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstObject.html"><span class="type">GstObject</span></a> *src</code></em>,
+ <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> cur_angle</code></em>,
+ <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> n_angles</code></em>);</pre>
+<p>Creates a new <a class="link" href="gst-plugins-base-libs-gstnavigation.html#GstNavigation"><span class="type">GstNavigation</span></a> message with type
+<a class="link" href="gst-plugins-base-libs-gstnavigation.html#GST-NAVIGATION-MESSAGE-ANGLES-CHANGED:CAPS"><span class="type">GST_NAVIGATION_MESSAGE_ANGLES_CHANGED</span></a> for notifying an application
+that the current angle, or current number of angles available in a
+multiangle video has changed.</p>
+<div class="refsect3">
+<a name="id-1.2.15.16.9.11.5"></a><h4>Parameters</h4>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
+<tbody>
+<tr>
+<td class="parameter_name"><p>src</p></td>
+<td class="parameter_description"><p>A <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstObject.html"><span class="type">GstObject</span></a> to set as source of the new message.</p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+<tr>
+<td class="parameter_name"><p>cur_angle</p></td>
+<td class="parameter_description"><p>The currently selected angle.</p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+<tr>
+<td class="parameter_name"><p>n_angles</p></td>
+<td class="parameter_description"><p>The number of viewing angles now available.</p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<div class="refsect3">
+<a name="id-1.2.15.16.9.11.6"></a><h4>Returns</h4>
+<p> The new <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/gstreamer-GstMessage.html#GstMessage"><span class="type">GstMessage</span></a>.</p>
+<p></p>
+</div>
+</div>
+<hr>
+<div class="refsect2">
+<a name="gst-navigation-message-new-commands-changed"></a><h3>gst_navigation_message_new_commands_changed ()</h3>
+<pre class="programlisting"><a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/gstreamer-GstMessage.html#GstMessage"><span class="returnvalue">GstMessage</span></a> *
+gst_navigation_message_new_commands_changed
+ (<em class="parameter"><code><a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstObject.html"><span class="type">GstObject</span></a> *src</code></em>);</pre>
+<p>Creates a new <a class="link" href="gst-plugins-base-libs-gstnavigation.html#GstNavigation"><span class="type">GstNavigation</span></a> message with type
+<a class="link" href="gst-plugins-base-libs-gstnavigation.html#GST-NAVIGATION-MESSAGE-COMMANDS-CHANGED:CAPS"><span class="type">GST_NAVIGATION_MESSAGE_COMMANDS_CHANGED</span></a></p>
+<div class="refsect3">
+<a name="id-1.2.15.16.9.12.5"></a><h4>Parameters</h4>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
+<tbody><tr>
+<td class="parameter_name"><p>src</p></td>
+<td class="parameter_description"><p>A <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstObject.html"><span class="type">GstObject</span></a> to set as source of the new message.</p></td>
+<td class="parameter_annotations"> </td>
+</tr></tbody>
+</table></div>
+</div>
+<div class="refsect3">
+<a name="id-1.2.15.16.9.12.6"></a><h4>Returns</h4>
+<p> The new <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/gstreamer-GstMessage.html#GstMessage"><span class="type">GstMessage</span></a>.</p>
+<p></p>
+</div>
+</div>
+<hr>
+<div class="refsect2">
+<a name="gst-navigation-message-new-mouse-over"></a><h3>gst_navigation_message_new_mouse_over ()</h3>
+<pre class="programlisting"><a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/gstreamer-GstMessage.html#GstMessage"><span class="returnvalue">GstMessage</span></a> *
+gst_navigation_message_new_mouse_over (<em class="parameter"><code><a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstObject.html"><span class="type">GstObject</span></a> *src</code></em>,
+ <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> active</code></em>);</pre>
+<p>Creates a new <a class="link" href="gst-plugins-base-libs-gstnavigation.html#GstNavigation"><span class="type">GstNavigation</span></a> message with type
+<a class="link" href="gst-plugins-base-libs-gstnavigation.html#GST-NAVIGATION-MESSAGE-MOUSE-OVER:CAPS"><span class="type">GST_NAVIGATION_MESSAGE_MOUSE_OVER</span></a>.</p>
+<div class="refsect3">
+<a name="id-1.2.15.16.9.13.5"></a><h4>Parameters</h4>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
+<tbody>
+<tr>
+<td class="parameter_name"><p>src</p></td>
+<td class="parameter_description"><p>A <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstObject.html"><span class="type">GstObject</span></a> to set as source of the new message.</p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+<tr>
+<td class="parameter_name"><p>active</p></td>
+<td class="parameter_description"><p><a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the mouse has entered a clickable area of the display.
+<a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> if it over a non-clickable area.</p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<div class="refsect3">
+<a name="id-1.2.15.16.9.13.6"></a><h4>Returns</h4>
+<p> The new <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/gstreamer-GstMessage.html#GstMessage"><span class="type">GstMessage</span></a>.</p>
+<p></p>
+</div>
+</div>
+<hr>
+<div class="refsect2">
+<a name="gst-navigation-message-parse-mouse-over"></a><h3>gst_navigation_message_parse_mouse_over ()</h3>
+<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+gst_navigation_message_parse_mouse_over
+ (<em class="parameter"><code><a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/gstreamer-GstMessage.html#GstMessage"><span class="type">GstMessage</span></a> *message</code></em>,
+ <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> *active</code></em>);</pre>
+<p>Parse a <a class="link" href="gst-plugins-base-libs-gstnavigation.html#GstNavigation"><span class="type">GstNavigation</span></a> message of type <a class="link" href="gst-plugins-base-libs-gstnavigation.html#GST-NAVIGATION-MESSAGE-MOUSE-OVER:CAPS"><span class="type">GST_NAVIGATION_MESSAGE_MOUSE_OVER</span></a>
+and extract the active/inactive flag. If the mouse over event is marked
+active, it indicates that the mouse is over a clickable area.</p>
+<div class="refsect3">
+<a name="id-1.2.15.16.9.14.5"></a><h4>Parameters</h4>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
+<tbody>
+<tr>
+<td class="parameter_name"><p>message</p></td>
+<td class="parameter_description"><p>A <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/gstreamer-GstMessage.html#GstMessage"><span class="type">GstMessage</span></a> to inspect.</p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+<tr>
+<td class="parameter_name"><p>active</p></td>
+<td class="parameter_description"><p>A pointer to a gboolean to receive the active/inactive state,
+or NULL.</p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<div class="refsect3">
+<a name="id-1.2.15.16.9.14.6"></a><h4>Returns</h4>
+<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the message could be successfully parsed. <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> if not.</p>
+<p></p>
+</div>
+</div>
+<hr>
+<div class="refsect2">
+<a name="gst-navigation-message-parse-angles-changed"></a><h3>gst_navigation_message_parse_angles_changed ()</h3>
+<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+gst_navigation_message_parse_angles_changed
+ (<em class="parameter"><code><a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/gstreamer-GstMessage.html#GstMessage"><span class="type">GstMessage</span></a> *message</code></em>,
+ <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> *cur_angle</code></em>,
+ <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> *n_angles</code></em>);</pre>
+<p>Parse a <a class="link" href="gst-plugins-base-libs-gstnavigation.html#GstNavigation"><span class="type">GstNavigation</span></a> message of type GST_NAVIGATION_MESSAGE_ANGLES_CHANGED
+and extract the <em class="parameter"><code>cur_angle</code></em>
+ and <em class="parameter"><code>n_angles</code></em>
+ parameters.</p>
+<div class="refsect3">
+<a name="id-1.2.15.16.9.15.5"></a><h4>Parameters</h4>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
+<tbody>
+<tr>
+<td class="parameter_name"><p>message</p></td>
+<td class="parameter_description"><p>A <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/gstreamer-GstMessage.html#GstMessage"><span class="type">GstMessage</span></a> to inspect.</p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+<tr>
+<td class="parameter_name"><p>cur_angle</p></td>
+<td class="parameter_description"><p>A pointer to a <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> to receive the new current angle number,
+or NULL</p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+<tr>
+<td class="parameter_name"><p>n_angles</p></td>
+<td class="parameter_description"><p>A pointer to a <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> to receive the new angle count, or NULL.</p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<div class="refsect3">
+<a name="id-1.2.15.16.9.15.6"></a><h4>Returns</h4>
+<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the message could be successfully parsed. <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> if not.</p>
+<p></p>
+</div>
+</div>
+<hr>
+<div class="refsect2">
+<a name="gst-navigation-query-new-angles"></a><h3>gst_navigation_query_new_angles ()</h3>
+<pre class="programlisting"><a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/gstreamer-GstQuery.html#GstQuery"><span class="returnvalue">GstQuery</span></a> *
+gst_navigation_query_new_angles (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
+<p>Create a new <a class="link" href="gst-plugins-base-libs-gstnavigation.html#GstNavigation"><span class="type">GstNavigation</span></a> angles query. When executed, it will
+query the pipeline for the set of currently available angles, which may be
+greater than one in a multiangle video.</p>
+<div class="refsect3">
+<a name="id-1.2.15.16.9.16.5"></a><h4>Returns</h4>
+<p> The new query.</p>
+<p></p>
+</div>
+</div>
+<hr>
+<div class="refsect2">
+<a name="gst-navigation-query-get-type"></a><h3>gst_navigation_query_get_type ()</h3>
+<pre class="programlisting"><a class="link" href="gst-plugins-base-libs-gstnavigation.html#GstNavigationQueryType" title="enum GstNavigationQueryType"><span class="returnvalue">GstNavigationQueryType</span></a>
+gst_navigation_query_get_type (<em class="parameter"><code><a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/gstreamer-GstQuery.html#GstQuery"><span class="type">GstQuery</span></a> *query</code></em>);</pre>
+<p>Inspect a <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/gstreamer-GstQuery.html#GstQuery"><span class="type">GstQuery</span></a> and return the <a class="link" href="gst-plugins-base-libs-gstnavigation.html#GstNavigationQueryType" title="enum GstNavigationQueryType"><span class="type">GstNavigationQueryType</span></a> associated with
+it if it is a <a class="link" href="gst-plugins-base-libs-gstnavigation.html#GstNavigation"><span class="type">GstNavigation</span></a> query.</p>
+<div class="refsect3">
+<a name="id-1.2.15.16.9.17.5"></a><h4>Parameters</h4>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
+<tbody><tr>
+<td class="parameter_name"><p>query</p></td>
+<td class="parameter_description"><p>The query to inspect</p></td>
+<td class="parameter_annotations"> </td>
+</tr></tbody>
+</table></div>
+</div>
+<div class="refsect3">
+<a name="id-1.2.15.16.9.17.6"></a><h4>Returns</h4>
+<p> The <a class="link" href="gst-plugins-base-libs-gstnavigation.html#GstNavigationQueryType" title="enum GstNavigationQueryType"><span class="type">GstNavigationQueryType</span></a> of the query, or
+<a class="link" href="gst-plugins-base-libs-gstnavigation.html#GST-NAVIGATION-QUERY-INVALID:CAPS"><span class="type">GST_NAVIGATION_QUERY_INVALID</span></a></p>
+<p></p>
+</div>
+</div>
+<hr>
+<div class="refsect2">
+<a name="gst-navigation-query-new-commands"></a><h3>gst_navigation_query_new_commands ()</h3>
+<pre class="programlisting"><a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/gstreamer-GstQuery.html#GstQuery"><span class="returnvalue">GstQuery</span></a> *
+gst_navigation_query_new_commands (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
+<p>Create a new <a class="link" href="gst-plugins-base-libs-gstnavigation.html#GstNavigation"><span class="type">GstNavigation</span></a> commands query. When executed, it will
+query the pipeline for the set of currently available commands.</p>
+<div class="refsect3">
+<a name="id-1.2.15.16.9.18.5"></a><h4>Returns</h4>
+<p> The new query.</p>
+<p></p>
+</div>
+</div>
+<hr>
+<div class="refsect2">
+<a name="gst-navigation-query-parse-angles"></a><h3>gst_navigation_query_parse_angles ()</h3>
+<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+gst_navigation_query_parse_angles (<em class="parameter"><code><a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/gstreamer-GstQuery.html#GstQuery"><span class="type">GstQuery</span></a> *query</code></em>,
+ <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> *cur_angle</code></em>,
+ <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> *n_angles</code></em>);</pre>
+<p>Parse the current angle number in the <a class="link" href="gst-plugins-base-libs-gstnavigation.html#GstNavigation"><span class="type">GstNavigation</span></a> angles <em class="parameter"><code>query</code></em>
+ into the
+<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> pointed to by the <em class="parameter"><code>cur_angle</code></em>
+ variable, and the number of available
+angles into the <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> pointed to by the <em class="parameter"><code>n_angles</code></em>
+ variable.</p>
+<div class="refsect3">
+<a name="id-1.2.15.16.9.19.5"></a><h4>Parameters</h4>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
+<tbody>
+<tr>
+<td class="parameter_name"><p>query</p></td>
+<td class="parameter_description"><p>a <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/gstreamer-GstQuery.html#GstQuery"><span class="type">GstQuery</span></a></p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+<tr>
+<td class="parameter_name"><p>cur_angle</p></td>
+<td class="parameter_description"><p>Pointer to a <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> into which to store the currently selected
+angle value from the query, or NULL</p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+<tr>
+<td class="parameter_name"><p>n_angles</p></td>
+<td class="parameter_description"><p>Pointer to a <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> into which to store the number of angles
+value from the query, or NULL</p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<div class="refsect3">
+<a name="id-1.2.15.16.9.19.6"></a><h4>Returns</h4>
+<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the query could be successfully parsed. <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> if not.</p>
+<p></p>
+</div>
+</div>
+<hr>
+<div class="refsect2">
+<a name="gst-navigation-query-parse-commands-length"></a><h3>gst_navigation_query_parse_commands_length ()</h3>
+<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+gst_navigation_query_parse_commands_length
+ (<em class="parameter"><code><a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/gstreamer-GstQuery.html#GstQuery"><span class="type">GstQuery</span></a> *query</code></em>,
+ <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> *n_cmds</code></em>);</pre>
+<p>Parse the number of commands in the <a class="link" href="gst-plugins-base-libs-gstnavigation.html#GstNavigation"><span class="type">GstNavigation</span></a> commands <em class="parameter"><code>query</code></em>
+.</p>
+<div class="refsect3">
+<a name="id-1.2.15.16.9.20.5"></a><h4>Parameters</h4>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
+<tbody>
+<tr>
+<td class="parameter_name"><p>query</p></td>
+<td class="parameter_description"><p>a <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/gstreamer-GstQuery.html#GstQuery"><span class="type">GstQuery</span></a></p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+<tr>
+<td class="parameter_name"><p>n_cmds</p></td>
+<td class="parameter_description"><p> the number of commands in this query. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>]</span></td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<div class="refsect3">
+<a name="id-1.2.15.16.9.20.6"></a><h4>Returns</h4>
+<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the query could be successfully parsed. <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> if not.</p>
+<p></p>
+</div>
+</div>
+<hr>
+<div class="refsect2">
+<a name="gst-navigation-query-parse-commands-nth"></a><h3>gst_navigation_query_parse_commands_nth ()</h3>
+<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+gst_navigation_query_parse_commands_nth
+ (<em class="parameter"><code><a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/gstreamer-GstQuery.html#GstQuery"><span class="type">GstQuery</span></a> *query</code></em>,
+ <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> nth</code></em>,
+ <em class="parameter"><code><a class="link" href="gst-plugins-base-libs-gstnavigation.html#GstNavigationCommand" title="enum GstNavigationCommand"><span class="type">GstNavigationCommand</span></a> *cmd</code></em>);</pre>
+<p>Parse the <a class="link" href="gst-plugins-base-libs-gstnavigation.html#GstNavigation"><span class="type">GstNavigation</span></a> command query and retrieve the <em class="parameter"><code>nth</code></em>
+ command from
+it into <em class="parameter"><code>cmd</code></em>
+. If the list contains less elements than <em class="parameter"><code>nth</code></em>
+, <em class="parameter"><code>cmd</code></em>
+ will be
+set to <a class="link" href="gst-plugins-base-libs-gstnavigation.html#GST-NAVIGATION-COMMAND-INVALID:CAPS"><span class="type">GST_NAVIGATION_COMMAND_INVALID</span></a>.</p>
+<div class="refsect3">
+<a name="id-1.2.15.16.9.21.5"></a><h4>Parameters</h4>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
+<tbody>
+<tr>
+<td class="parameter_name"><p>query</p></td>
+<td class="parameter_description"><p>a <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/gstreamer-GstQuery.html#GstQuery"><span class="type">GstQuery</span></a></p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+<tr>
+<td class="parameter_name"><p>nth</p></td>
+<td class="parameter_description"><p>the nth command to retrieve.</p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+<tr>
+<td class="parameter_name"><p>cmd</p></td>
+<td class="parameter_description"><p> a pointer to store the nth command into. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>]</span></td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<div class="refsect3">
+<a name="id-1.2.15.16.9.21.6"></a><h4>Returns</h4>
+<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the query could be successfully parsed. <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> if not.</p>
+<p></p>
+</div>
+</div>
+<hr>
+<div class="refsect2">
+<a name="gst-navigation-query-set-angles"></a><h3>gst_navigation_query_set_angles ()</h3>
+<pre class="programlisting"><span class="returnvalue">void</span>
+gst_navigation_query_set_angles (<em class="parameter"><code><a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/gstreamer-GstQuery.html#GstQuery"><span class="type">GstQuery</span></a> *query</code></em>,
+ <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> cur_angle</code></em>,
+ <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> n_angles</code></em>);</pre>
+<p>Set the <a class="link" href="gst-plugins-base-libs-gstnavigation.html#GstNavigation"><span class="type">GstNavigation</span></a> angles query result field in <em class="parameter"><code>query</code></em>
+.</p>
+<div class="refsect3">
+<a name="id-1.2.15.16.9.22.5"></a><h4>Parameters</h4>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
+<tbody>
+<tr>
+<td class="parameter_name"><p>query</p></td>
+<td class="parameter_description"><p>a <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/gstreamer-GstQuery.html#GstQuery"><span class="type">GstQuery</span></a></p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+<tr>
+<td class="parameter_name"><p>cur_angle</p></td>
+<td class="parameter_description"><p>the current viewing angle to set.</p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+<tr>
+<td class="parameter_name"><p>n_angles</p></td>
+<td class="parameter_description"><p>the number of viewing angles to set.</p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+</tbody>
+</table></div>
+</div>
+</div>
+<hr>
+<div class="refsect2">
+<a name="gst-navigation-query-set-commands"></a><h3>gst_navigation_query_set_commands ()</h3>
+<pre class="programlisting"><span class="returnvalue">void</span>
+gst_navigation_query_set_commands (<em class="parameter"><code><a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/gstreamer-GstQuery.html#GstQuery"><span class="type">GstQuery</span></a> *query</code></em>,
+ <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> n_cmds</code></em>,
+ <em class="parameter"><code>...</code></em>);</pre>
+<p>Set the <a class="link" href="gst-plugins-base-libs-gstnavigation.html#GstNavigation"><span class="type">GstNavigation</span></a> command query result fields in <em class="parameter"><code>query</code></em>
+. The number
+of commands passed must be equal to <em class="parameter"><code>n_commands</code></em>
+.</p>
+<div class="refsect3">
+<a name="id-1.2.15.16.9.23.5"></a><h4>Parameters</h4>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
+<tbody>
+<tr>
+<td class="parameter_name"><p>query</p></td>
+<td class="parameter_description"><p>a <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/gstreamer-GstQuery.html#GstQuery"><span class="type">GstQuery</span></a></p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+<tr>
+<td class="parameter_name"><p>n_cmds</p></td>
+<td class="parameter_description"><p>the number of commands to set.</p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+<tr>
+<td class="parameter_name"><p>...</p></td>
+<td class="parameter_description"><p>A list of <em class="parameter"><code>GstNavigationCommand</code></em>
+values, <em class="parameter"><code>n_cmds</code></em>
+entries long.</p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+</tbody>
+</table></div>
+</div>
+</div>
+<hr>
+<div class="refsect2">
+<a name="gst-navigation-query-set-commandsv"></a><h3>gst_navigation_query_set_commandsv ()</h3>
+<pre class="programlisting"><span class="returnvalue">void</span>
+gst_navigation_query_set_commandsv (<em class="parameter"><code><a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/gstreamer-GstQuery.html#GstQuery"><span class="type">GstQuery</span></a> *query</code></em>,
+ <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> n_cmds</code></em>,
+ <em class="parameter"><code><a class="link" href="gst-plugins-base-libs-gstnavigation.html#GstNavigationCommand" title="enum GstNavigationCommand"><span class="type">GstNavigationCommand</span></a> *cmds</code></em>);</pre>
+<p>Set the <a class="link" href="gst-plugins-base-libs-gstnavigation.html#GstNavigation"><span class="type">GstNavigation</span></a> command query result fields in <em class="parameter"><code>query</code></em>
+. The number
+of commands passed must be equal to <em class="parameter"><code>n_commands</code></em>
+.</p>
+<div class="refsect3">
+<a name="id-1.2.15.16.9.24.5"></a><h4>Parameters</h4>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
+<tbody>
+<tr>
+<td class="parameter_name"><p>query</p></td>
+<td class="parameter_description"><p>a <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/gstreamer-GstQuery.html#GstQuery"><span class="type">GstQuery</span></a></p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+<tr>
+<td class="parameter_name"><p>n_cmds</p></td>
+<td class="parameter_description"><p>the number of commands to set.</p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+<tr>
+<td class="parameter_name"><p>cmds</p></td>
+<td class="parameter_description"><p>An array containing <em class="parameter"><code>n_cmds</code></em>
+<em class="parameter"><code>GstNavigationCommand</code></em>
+values.</p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+</tbody>
+</table></div>
+</div>
+</div>
+</div>
+<div class="refsect1">
+<a name="gst-plugins-base-libs-gstnavigation.other_details"></a><h2>Types and Values</h2>
+<div class="refsect2">
+<a name="GstNavigation-struct"></a><h3>GstNavigation</h3>
+<pre class="programlisting">typedef struct _GstNavigation GstNavigation;</pre>
+</div>
+<hr>
+<div class="refsect2">
+<a name="GstNavigationInterface"></a><h3>struct GstNavigationInterface</h3>
+<pre class="programlisting">struct GstNavigationInterface {
+ GTypeInterface iface;
+
+ /* virtual functions */
+ void (*send_event) (GstNavigation *navigation, GstStructure *structure);
+};
+</pre>
+<p>Navigation interface.</p>
+<div class="refsect3">
+<a name="id-1.2.15.16.10.3.5"></a><h4>Members</h4>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="300px" class="struct_members_name">
+<col class="struct_members_description">
+<col width="200px" class="struct_members_annotations">
+</colgroup>
+<tbody>
+<tr>
+<td class="struct_member_name"><p><a href="http://library.gnome.org/devel/gobject/unstable/gobject-Type-Information.html#GTypeInterface"><span class="type">GTypeInterface</span></a> <em class="structfield"><code><a name="GstNavigationInterface.iface"></a>iface</code></em>;</p></td>
+<td class="struct_member_description"><p>the parent interface</p></td>
+<td class="struct_member_annotations"> </td>
+</tr>
+<tr>
+<td class="struct_member_name"><p><em class="structfield"><code><a name="GstNavigationInterface.send-event"></a>send_event</code></em> ()</p></td>
+<td class="struct_member_description"><p>sending a navigation event</p></td>
+<td class="struct_member_annotations"> </td>
+</tr>
+</tbody>
+</table></div>
+</div>
+</div>
+<hr>
+<div class="refsect2">
+<a name="GstNavigationCommand"></a><h3>enum GstNavigationCommand</h3>
+<p>A set of commands that may be issued to an element providing the
+<a class="link" href="gst-plugins-base-libs-gstnavigation.html#GstNavigation"><span class="type">GstNavigation</span></a> interface. The available commands can be queried via
+the <a class="link" href="gst-plugins-base-libs-gstnavigation.html#gst-navigation-query-new-commands" title="gst_navigation_query_new_commands ()"><code class="function">gst_navigation_query_new_commands()</code></a> query.</p>
+<p>For convenience in handling DVD navigation, the MENU commands are aliased as:
+ GST_NAVIGATION_COMMAND_DVD_MENU = <em class="parameter"><code>GST_NAVIGATION_COMMAND_MENU1</code></em>
+
+ GST_NAVIGATION_COMMAND_DVD_TITLE_MENU = <em class="parameter"><code>GST_NAVIGATION_COMMAND_MENU2</code></em>
+
+ GST_NAVIGATION_COMMAND_DVD_ROOT_MENU = <em class="parameter"><code>GST_NAVIGATION_COMMAND_MENU3</code></em>
+
+ GST_NAVIGATION_COMMAND_DVD_SUBPICTURE_MENU = <em class="parameter"><code>GST_NAVIGATION_COMMAND_MENU4</code></em>
+
+ GST_NAVIGATION_COMMAND_DVD_AUDIO_MENU = <em class="parameter"><code>GST_NAVIGATION_COMMAND_MENU5</code></em>
+
+ GST_NAVIGATION_COMMAND_DVD_ANGLE_MENU = <em class="parameter"><code>GST_NAVIGATION_COMMAND_MENU6</code></em>
+
+ GST_NAVIGATION_COMMAND_DVD_CHAPTER_MENU = <em class="parameter"><code>GST_NAVIGATION_COMMAND_MENU7</code></em>
+</p>
+<div class="refsect3">
+<a name="id-1.2.15.16.10.4.5"></a><h4>Members</h4>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="300px" class="enum_members_name">
+<col class="enum_members_description">
+<col width="200px" class="enum_members_annotations">
+</colgroup>
+<tbody>
+<tr>
+<td class="enum_member_name"><p><a name="GST-NAVIGATION-COMMAND-INVALID:CAPS"></a>GST_NAVIGATION_COMMAND_INVALID</p></td>
+<td class="enum_member_description">
+<p>An invalid command entry</p>
+</td>
+<td class="enum_member_annotations"> </td>
+</tr>
+<tr>
+<td class="enum_member_name"><p><a name="GST-NAVIGATION-COMMAND-MENU1:CAPS"></a>GST_NAVIGATION_COMMAND_MENU1</p></td>
+<td class="enum_member_description">
+<p>Execute navigation menu command 1. For DVD,
+this enters the DVD root menu, or exits back to the title from the menu.</p>
+</td>
+<td class="enum_member_annotations"> </td>
+</tr>
+<tr>
+<td class="enum_member_name"><p><a name="GST-NAVIGATION-COMMAND-MENU2:CAPS"></a>GST_NAVIGATION_COMMAND_MENU2</p></td>
+<td class="enum_member_description">
+<p>Execute navigation menu command 2. For DVD,
+this jumps to the DVD title menu.</p>
+</td>
+<td class="enum_member_annotations"> </td>
+</tr>
+<tr>
+<td class="enum_member_name"><p><a name="GST-NAVIGATION-COMMAND-MENU3:CAPS"></a>GST_NAVIGATION_COMMAND_MENU3</p></td>
+<td class="enum_member_description">
+<p>Execute navigation menu command 3. For DVD,
+this jumps into the DVD root menu.</p>
+</td>
+<td class="enum_member_annotations"> </td>
+</tr>
+<tr>
+<td class="enum_member_name"><p><a name="GST-NAVIGATION-COMMAND-MENU4:CAPS"></a>GST_NAVIGATION_COMMAND_MENU4</p></td>
+<td class="enum_member_description">
+<p>Execute navigation menu command 4. For DVD,
+this jumps to the Subpicture menu.</p>
+</td>
+<td class="enum_member_annotations"> </td>
+</tr>
+<tr>
+<td class="enum_member_name"><p><a name="GST-NAVIGATION-COMMAND-MENU5:CAPS"></a>GST_NAVIGATION_COMMAND_MENU5</p></td>
+<td class="enum_member_description">
+<p>Execute navigation menu command 5. For DVD,
+the jumps to the audio menu.</p>
+</td>
+<td class="enum_member_annotations"> </td>
+</tr>
+<tr>
+<td class="enum_member_name"><p><a name="GST-NAVIGATION-COMMAND-MENU6:CAPS"></a>GST_NAVIGATION_COMMAND_MENU6</p></td>
+<td class="enum_member_description">
+<p>Execute navigation menu command 6. For DVD,
+this jumps to the angles menu.</p>
+</td>
+<td class="enum_member_annotations"> </td>
+</tr>
+<tr>
+<td class="enum_member_name"><p><a name="GST-NAVIGATION-COMMAND-MENU7:CAPS"></a>GST_NAVIGATION_COMMAND_MENU7</p></td>
+<td class="enum_member_description">
+<p>Execute navigation menu command 7. For DVD,
+this jumps to the chapter menu.</p>
+</td>
+<td class="enum_member_annotations"> </td>
+</tr>
+<tr>
+<td class="enum_member_name"><p><a name="GST-NAVIGATION-COMMAND-LEFT:CAPS"></a>GST_NAVIGATION_COMMAND_LEFT</p></td>
+<td class="enum_member_description">
+<p>Select the next button to the left in a menu,
+if such a button exists.</p>
+</td>
+<td class="enum_member_annotations"> </td>
+</tr>
+<tr>
+<td class="enum_member_name"><p><a name="GST-NAVIGATION-COMMAND-RIGHT:CAPS"></a>GST_NAVIGATION_COMMAND_RIGHT</p></td>
+<td class="enum_member_description">
+<p>Select the next button to the right in a menu,
+if such a button exists.</p>
+</td>
+<td class="enum_member_annotations"> </td>
+</tr>
+<tr>
+<td class="enum_member_name"><p><a name="GST-NAVIGATION-COMMAND-UP:CAPS"></a>GST_NAVIGATION_COMMAND_UP</p></td>
+<td class="enum_member_description">
+<p>Select the button above the current one in a
+menu, if such a button exists.</p>
+</td>
+<td class="enum_member_annotations"> </td>
+</tr>
+<tr>
+<td class="enum_member_name"><p><a name="GST-NAVIGATION-COMMAND-DOWN:CAPS"></a>GST_NAVIGATION_COMMAND_DOWN</p></td>
+<td class="enum_member_description">
+<p>Select the button below the current one in a
+menu, if such a button exists.</p>
+</td>
+<td class="enum_member_annotations"> </td>
+</tr>
+<tr>
+<td class="enum_member_name"><p><a name="GST-NAVIGATION-COMMAND-ACTIVATE:CAPS"></a>GST_NAVIGATION_COMMAND_ACTIVATE</p></td>
+<td class="enum_member_description">
+<p>Activate (click) the currently selected
+button in a menu, if such a button exists.</p>
+</td>
+<td class="enum_member_annotations"> </td>
+</tr>
+<tr>
+<td class="enum_member_name"><p><a name="GST-NAVIGATION-COMMAND-PREV-ANGLE:CAPS"></a>GST_NAVIGATION_COMMAND_PREV_ANGLE</p></td>
+<td class="enum_member_description">
+<p>Switch to the previous angle in a
+multiangle feature.</p>
+</td>
+<td class="enum_member_annotations"> </td>
+</tr>
+<tr>
+<td class="enum_member_name"><p><a name="GST-NAVIGATION-COMMAND-NEXT-ANGLE:CAPS"></a>GST_NAVIGATION_COMMAND_NEXT_ANGLE</p></td>
+<td class="enum_member_description">
+<p>Switch to the next angle in a multiangle
+feature.</p>
+</td>
+<td class="enum_member_annotations"> </td>
+</tr>
+</tbody>
+</table></div>
+</div>
+</div>
+<hr>
+<div class="refsect2">
+<a name="GstNavigationEventType"></a><h3>enum GstNavigationEventType</h3>
+<p>Enum values for the various events that an element implementing the
+GstNavigation interface might send up the pipeline.</p>
+<div class="refsect3">
+<a name="id-1.2.15.16.10.5.4"></a><h4>Members</h4>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="300px" class="enum_members_name">
+<col class="enum_members_description">
+<col width="200px" class="enum_members_annotations">
+</colgroup>
+<tbody>
+<tr>
+<td class="enum_member_name"><p><a name="GST-NAVIGATION-EVENT-INVALID:CAPS"></a>GST_NAVIGATION_EVENT_INVALID</p></td>
+<td class="enum_member_description">
+<p>Returned from
+<code class="function">gst_navigation_event_get_type()</code> when the passed event is not a navigation event.</p>
+</td>
+<td class="enum_member_annotations"> </td>
+</tr>
+<tr>
+<td class="enum_member_name"><p><a name="GST-NAVIGATION-EVENT-KEY-PRESS:CAPS"></a>GST_NAVIGATION_EVENT_KEY_PRESS</p></td>
+<td class="enum_member_description">
+<p>A key press event. Use
+<a class="link" href="gst-plugins-base-libs-gstnavigation.html#gst-navigation-event-parse-key-event" title="gst_navigation_event_parse_key_event ()"><code class="function">gst_navigation_event_parse_key_event()</code></a> to extract the details from the event.</p>
+</td>
+<td class="enum_member_annotations"> </td>
+</tr>
+<tr>
+<td class="enum_member_name"><p><a name="GST-NAVIGATION-EVENT-KEY-RELEASE:CAPS"></a>GST_NAVIGATION_EVENT_KEY_RELEASE</p></td>
+<td class="enum_member_description">
+<p>A key release event. Use
+<a class="link" href="gst-plugins-base-libs-gstnavigation.html#gst-navigation-event-parse-key-event" title="gst_navigation_event_parse_key_event ()"><code class="function">gst_navigation_event_parse_key_event()</code></a> to extract the details from the event.</p>
+</td>
+<td class="enum_member_annotations"> </td>
+</tr>
+<tr>
+<td class="enum_member_name"><p><a name="GST-NAVIGATION-EVENT-MOUSE-BUTTON-PRESS:CAPS"></a>GST_NAVIGATION_EVENT_MOUSE_BUTTON_PRESS</p></td>
+<td class="enum_member_description">
+<p>A mouse button press event. Use
+<a class="link" href="gst-plugins-base-libs-gstnavigation.html#gst-navigation-event-parse-mouse-button-event" title="gst_navigation_event_parse_mouse_button_event ()"><code class="function">gst_navigation_event_parse_mouse_button_event()</code></a> to extract the details from the
+event.</p>
+</td>
+<td class="enum_member_annotations"> </td>
+</tr>
+<tr>
+<td class="enum_member_name"><p><a name="GST-NAVIGATION-EVENT-MOUSE-BUTTON-RELEASE:CAPS"></a>GST_NAVIGATION_EVENT_MOUSE_BUTTON_RELEASE</p></td>
+<td class="enum_member_description">
+<p>A mouse button release event. Use
+<a class="link" href="gst-plugins-base-libs-gstnavigation.html#gst-navigation-event-parse-mouse-button-event" title="gst_navigation_event_parse_mouse_button_event ()"><code class="function">gst_navigation_event_parse_mouse_button_event()</code></a> to extract the details from the
+event.</p>
+</td>
+<td class="enum_member_annotations"> </td>
+</tr>
+<tr>
+<td class="enum_member_name"><p><a name="GST-NAVIGATION-EVENT-MOUSE-MOVE:CAPS"></a>GST_NAVIGATION_EVENT_MOUSE_MOVE</p></td>
+<td class="enum_member_description">
+<p>A mouse movement event. Use
+<a class="link" href="gst-plugins-base-libs-gstnavigation.html#gst-navigation-event-parse-mouse-move-event" title="gst_navigation_event_parse_mouse_move_event ()"><code class="function">gst_navigation_event_parse_mouse_move_event()</code></a> to extract the details from the
+event.</p>
+</td>
+<td class="enum_member_annotations"> </td>
+</tr>
+<tr>
+<td class="enum_member_name"><p><a name="GST-NAVIGATION-EVENT-COMMAND:CAPS"></a>GST_NAVIGATION_EVENT_COMMAND</p></td>
+<td class="enum_member_description">
+<p>A navigation command event. Use
+<a class="link" href="gst-plugins-base-libs-gstnavigation.html#gst-navigation-event-parse-command" title="gst_navigation_event_parse_command ()"><code class="function">gst_navigation_event_parse_command()</code></a> to extract the details from the event.</p>
+</td>
+<td class="enum_member_annotations"> </td>
+</tr>
+</tbody>
+</table></div>
+</div>
+</div>
+<hr>
+<div class="refsect2">
+<a name="GstNavigationMessageType"></a><h3>enum GstNavigationMessageType</h3>
+<p>A set of notifications that may be received on the bus when navigation
+related status changes.</p>
+<div class="refsect3">
+<a name="id-1.2.15.16.10.6.4"></a><h4>Members</h4>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="300px" class="enum_members_name">
+<col class="enum_members_description">
+<col width="200px" class="enum_members_annotations">
+</colgroup>
+<tbody>
+<tr>
+<td class="enum_member_name"><p><a name="GST-NAVIGATION-MESSAGE-INVALID:CAPS"></a>GST_NAVIGATION_MESSAGE_INVALID</p></td>
+<td class="enum_member_description">
+<p>Returned from
+<a class="link" href="gst-plugins-base-libs-gstnavigation.html#gst-navigation-message-get-type" title="gst_navigation_message_get_type ()"><code class="function">gst_navigation_message_get_type()</code></a> when the passed message is not a
+navigation message.</p>
+</td>
+<td class="enum_member_annotations"> </td>
+</tr>
+<tr>
+<td class="enum_member_name"><p><a name="GST-NAVIGATION-MESSAGE-MOUSE-OVER:CAPS"></a>GST_NAVIGATION_MESSAGE_MOUSE_OVER</p></td>
+<td class="enum_member_description">
+<p>Sent when the mouse moves over or leaves a
+clickable region of the output, such as a DVD menu button.</p>
+</td>
+<td class="enum_member_annotations"> </td>
+</tr>
+<tr>
+<td class="enum_member_name"><p><a name="GST-NAVIGATION-MESSAGE-COMMANDS-CHANGED:CAPS"></a>GST_NAVIGATION_MESSAGE_COMMANDS_CHANGED</p></td>
+<td class="enum_member_description">
+<p>Sent when the set of available commands
+changes and should re-queried by interested applications.</p>
+</td>
+<td class="enum_member_annotations"> </td>
+</tr>
+<tr>
+<td class="enum_member_name"><p><a name="GST-NAVIGATION-MESSAGE-ANGLES-CHANGED:CAPS"></a>GST_NAVIGATION_MESSAGE_ANGLES_CHANGED</p></td>
+<td class="enum_member_description">
+<p>Sent when display angles in a multi-angle
+feature (such as a multiangle DVD) change - either angles have appeared or
+disappeared.</p>
+</td>
+<td class="enum_member_annotations"> </td>
+</tr>
+</tbody>
+</table></div>
+</div>
+</div>
+<hr>
+<div class="refsect2">
+<a name="GstNavigationQueryType"></a><h3>enum GstNavigationQueryType</h3>
+<p>Tyoes of navigation interface queries.</p>
+<div class="refsect3">
+<a name="id-1.2.15.16.10.7.4"></a><h4>Members</h4>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="300px" class="enum_members_name">
+<col class="enum_members_description">
+<col width="200px" class="enum_members_annotations">
+</colgroup>
+<tbody>
+<tr>
+<td class="enum_member_name"><p><a name="GST-NAVIGATION-QUERY-INVALID:CAPS"></a>GST_NAVIGATION_QUERY_INVALID</p></td>
+<td class="enum_member_description">
+<p>invalid query</p>
+</td>
+<td class="enum_member_annotations"> </td>
+</tr>
+<tr>
+<td class="enum_member_name"><p><a name="GST-NAVIGATION-QUERY-COMMANDS:CAPS"></a>GST_NAVIGATION_QUERY_COMMANDS</p></td>
+<td class="enum_member_description">
+<p>command query</p>
+</td>
+<td class="enum_member_annotations"> </td>
+</tr>
+<tr>
+<td class="enum_member_name"><p><a name="GST-NAVIGATION-QUERY-ANGLES:CAPS"></a>GST_NAVIGATION_QUERY_ANGLES</p></td>
+<td class="enum_member_description">
+<p>viewing angle query</p>
+</td>
+<td class="enum_member_annotations"> </td>
+</tr>
+</tbody>
+</table></div>
+</div>
+</div>
+<hr>
+<div class="refsect2">
+<a name="GST-NAVIGATION-COMMAND-DVD-ANGLE-MENU:CAPS"></a><h3>GST_NAVIGATION_COMMAND_DVD_ANGLE_MENU</h3>
+<pre class="programlisting">#define GST_NAVIGATION_COMMAND_DVD_ANGLE_MENU GST_NAVIGATION_COMMAND_MENU6
+</pre>
+</div>
+<hr>
+<div class="refsect2">
+<a name="GST-NAVIGATION-COMMAND-DVD-AUDIO-MENU:CAPS"></a><h3>GST_NAVIGATION_COMMAND_DVD_AUDIO_MENU</h3>
+<pre class="programlisting">#define GST_NAVIGATION_COMMAND_DVD_AUDIO_MENU GST_NAVIGATION_COMMAND_MENU5
+</pre>
+</div>
+<hr>
+<div class="refsect2">
+<a name="GST-NAVIGATION-COMMAND-DVD-CHAPTER-MENU:CAPS"></a><h3>GST_NAVIGATION_COMMAND_DVD_CHAPTER_MENU</h3>
+<pre class="programlisting">#define GST_NAVIGATION_COMMAND_DVD_CHAPTER_MENU GST_NAVIGATION_COMMAND_MENU7
+</pre>
+</div>
+<hr>
+<div class="refsect2">
+<a name="GST-NAVIGATION-COMMAND-DVD-MENU:CAPS"></a><h3>GST_NAVIGATION_COMMAND_DVD_MENU</h3>
+<pre class="programlisting">#define GST_NAVIGATION_COMMAND_DVD_MENU GST_NAVIGATION_COMMAND_MENU1
+</pre>
+</div>
+<hr>
+<div class="refsect2">
+<a name="GST-NAVIGATION-COMMAND-DVD-ROOT-MENU:CAPS"></a><h3>GST_NAVIGATION_COMMAND_DVD_ROOT_MENU</h3>
+<pre class="programlisting">#define GST_NAVIGATION_COMMAND_DVD_ROOT_MENU GST_NAVIGATION_COMMAND_MENU3
+</pre>
+</div>
+<hr>
+<div class="refsect2">
+<a name="GST-NAVIGATION-COMMAND-DVD-SUBPICTURE-MENU:CAPS"></a><h3>GST_NAVIGATION_COMMAND_DVD_SUBPICTURE_MENU</h3>
+<pre class="programlisting">#define GST_NAVIGATION_COMMAND_DVD_SUBPICTURE_MENU GST_NAVIGATION_COMMAND_MENU4
+</pre>
+</div>
+<hr>
+<div class="refsect2">
+<a name="GST-NAVIGATION-COMMAND-DVD-TITLE-MENU:CAPS"></a><h3>GST_NAVIGATION_COMMAND_DVD_TITLE_MENU</h3>
+<pre class="programlisting">#define GST_NAVIGATION_COMMAND_DVD_TITLE_MENU GST_NAVIGATION_COMMAND_MENU2
+</pre>
+</div>
+</div>
+</div>
+<div class="footer">
+<hr>
+ Generated by GTK-Doc V1.20</div>
+</body>
+</html> \ No newline at end of file
diff --git a/docs/libs/html/gst-plugins-base-libs-gstpluginsbaseversion.html b/docs/libs/html/gst-plugins-base-libs-gstpluginsbaseversion.html
index 6b7f10d..31001f5 100644
--- a/docs/libs/html/gst-plugins-base-libs-gstpluginsbaseversion.html
+++ b/docs/libs/html/gst-plugins-base-libs-gstpluginsbaseversion.html
@@ -117,7 +117,7 @@ libraries are being used / you are currently linked against.</p>
<hr>
<div class="refsect2">
<a name="GST-PLUGINS-BASE-VERSION-MICRO:CAPS"></a><h3>GST_PLUGINS_BASE_VERSION_MICRO</h3>
-<pre class="programlisting">#define GST_PLUGINS_BASE_VERSION_MICRO (2)
+<pre class="programlisting">#define GST_PLUGINS_BASE_VERSION_MICRO (3)
</pre>
<p>The micro version of GStreamer's gst-plugins-base libraries at compile time.</p>
</div>
diff --git a/docs/libs/html/gst-plugins-base-libs-gstvideoutils.html b/docs/libs/html/gst-plugins-base-libs-gstvideoutils.html
index a024174..e2b7254 100644
--- a/docs/libs/html/gst-plugins-base-libs-gstvideoutils.html
+++ b/docs/libs/html/gst-plugins-base-libs-gstvideoutils.html
@@ -7,7 +7,7 @@
<link rel="home" href="index.html" title="GStreamer Base Plugins 1.0 Library Reference Manual">
<link rel="up" href="gstreamer-video.html" title="Video Library">
<link rel="prev" href="gst-plugins-base-libs-GstVideoPool.html" title="GstVideoPool">
-<link rel="next" href="gstreamer-libs-hierarchy.html" title="Part II. Object Hierarchy">
+<link rel="next" href="gst-plugins-base-libs-gstnavigation.html" title="gstnavigation">
<meta name="generator" content="GTK-Doc V1.20 (XML mode)">
<link rel="stylesheet" href="style.css" type="text/css">
</head>
@@ -21,7 +21,7 @@
<td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
<td><a accesskey="u" href="gstreamer-video.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
<td><a accesskey="p" href="gst-plugins-base-libs-GstVideoPool.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
-<td><a accesskey="n" href="gstreamer-libs-hierarchy.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
+<td><a accesskey="n" href="gst-plugins-base-libs-gstnavigation.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
</tr></table>
<div class="refentry">
<a name="gst-plugins-base-libs-gstvideoutils"></a><div class="titlepage"></div>
diff --git a/docs/libs/html/gstreamer-libs-hierarchy.html b/docs/libs/html/gstreamer-libs-hierarchy.html
index d90d675..d760534 100644
--- a/docs/libs/html/gstreamer-libs-hierarchy.html
+++ b/docs/libs/html/gstreamer-libs-hierarchy.html
@@ -6,7 +6,7 @@
<meta name="generator" content="DocBook XSL Stylesheets V1.78.1">
<link rel="home" href="index.html" title="GStreamer Base Plugins 1.0 Library Reference Manual">
<link rel="up" href="index.html" title="GStreamer Base Plugins 1.0 Library Reference Manual">
-<link rel="prev" href="gst-plugins-base-libs-gstvideoutils.html" title="gstvideoutils">
+<link rel="prev" href="gst-plugins-base-libs-gstnavigation.html" title="gstnavigation">
<link rel="next" href="api-index-full.html" title="Index">
<meta name="generator" content="GTK-Doc V1.20 (XML mode)">
<link rel="stylesheet" href="style.css" type="text/css">
@@ -16,7 +16,7 @@
<td width="100%" align="left" class="shortcuts"></td>
<td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
<td><img src="up-insensitive.png" width="16" height="16" border="0"></td>
-<td><a accesskey="p" href="gst-plugins-base-libs-gstvideoutils.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
+<td><a accesskey="p" href="gst-plugins-base-libs-gstnavigation.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
<td><a accesskey="n" href="api-index-full.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
</tr></table>
<div class="part">
@@ -57,7 +57,7 @@
<span class="lineart">├──</span> <a class="link" href="gst-plugins-base-libs-encoding-profile.html#GstEncodingTarget">GstEncodingTarget</a>
<span class="lineart">╰──</span> <a class="link" href="gst-plugins-base-libs-gstdiscoverer.html#GstDiscovererInfo">GstDiscovererInfo</a>
GInterface
- <span class="lineart">├──</span> <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gst-plugins-base-libs/html/gst-plugins-base-libs-gstnavigation.html#GstNavigation">GstNavigation</a>
+ <span class="lineart">├──</span> <a class="link" href="gst-plugins-base-libs-gstnavigation.html#GstNavigation">GstNavigation</a>
<span class="lineart">├──</span> <a class="link" href="gst-plugins-base-libs-gststreamvolume.html#GstStreamVolume">GstStreamVolume</a>
<span class="lineart">├──</span> <a class="link" href="gst-plugins-base-libs-gstcolorbalance.html#GstColorBalance">GstColorBalance</a>
<span class="lineart">├──</span> <a class="link" href="gst-plugins-base-libs-gstvideoorientation.html#GstVideoOrientation">GstVideoOrientation</a>
diff --git a/docs/libs/html/gstreamer-plugins-base.html b/docs/libs/html/gstreamer-plugins-base.html
index fac95ca..d1d0bbb 100644
--- a/docs/libs/html/gstreamer-plugins-base.html
+++ b/docs/libs/html/gstreamer-plugins-base.html
@@ -283,6 +283,10 @@ controls</span>
<dt>
<span class="refentrytitle"><a href="gst-plugins-base-libs-gstvideoutils.html">gstvideoutils</a></span><span class="refpurpose"></span>
</dt>
+<dt>
+<span class="refentrytitle"><a href="gst-plugins-base-libs-gstnavigation.html">gstnavigation</a></span><span class="refpurpose"> — Interface for creating, sending and parsing navigation
+events.</span>
+</dt>
</dl></dd>
</dl>
</div>
diff --git a/docs/libs/html/gstreamer-video.html b/docs/libs/html/gstreamer-video.html
index ff92b8b..ffc9772 100644
--- a/docs/libs/html/gstreamer-video.html
+++ b/docs/libs/html/gstreamer-video.html
@@ -66,6 +66,10 @@ controls</span>
<dt>
<span class="refentrytitle"><a href="gst-plugins-base-libs-gstvideoutils.html">gstvideoutils</a></span><span class="refpurpose"></span>
</dt>
+<dt>
+<span class="refentrytitle"><a href="gst-plugins-base-libs-gstnavigation.html">gstnavigation</a></span><span class="refpurpose"> — Interface for creating, sending and parsing navigation
+events.</span>
+</dt>
</dl></div>
<p>
This library should be linked to by getting cflags and libs from
diff --git a/docs/libs/html/index.html b/docs/libs/html/index.html
index 128227a..19cb016 100644
--- a/docs/libs/html/index.html
+++ b/docs/libs/html/index.html
@@ -15,7 +15,7 @@
<div>
<div><table class="navigation" id="top" width="100%" cellpadding="2" cellspacing="0"><tr><th valign="middle"><p class="title">GStreamer Base Plugins 1.0 Library Reference Manual</p></th></tr></table></div>
<div><p class="releaseinfo">
- for GStreamer Base Library 1.0 (1.3.2)
+ for GStreamer Base Library 1.0 (1.3.3)
<a class="ulink" href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gst-plugins-base-libs/html/" target="_top">http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gst-plugins-base-libs/html/</a>.
</p></div>
</div>
@@ -282,6 +282,10 @@ controls</span>
<dt>
<span class="refentrytitle"><a href="gst-plugins-base-libs-gstvideoutils.html">gstvideoutils</a></span><span class="refpurpose"></span>
</dt>
+<dt>
+<span class="refentrytitle"><a href="gst-plugins-base-libs-gstnavigation.html">gstnavigation</a></span><span class="refpurpose"> — Interface for creating, sending and parsing navigation
+events.</span>
+</dt>
</dl></dd>
</dl></dd>
<dt><span class="part"><a href="gstreamer-libs-hierarchy.html">II. Object Hierarchy</a></span></dt>
diff --git a/docs/libs/html/index.sgml b/docs/libs/html/index.sgml
index d632d6e..9ee27da 100644
--- a/docs/libs/html/index.sgml
+++ b/docs/libs/html/index.sgml
@@ -2082,6 +2082,51 @@
<ANCHOR id="GstVideoCodecFrame" href="gst-plugins-base-libs-1.0/gst-plugins-base-libs-gstvideoutils.html#GstVideoCodecFrame">
<ANCHOR id="GstVideoCodecFrameFlags" href="gst-plugins-base-libs-1.0/gst-plugins-base-libs-gstvideoutils.html#GstVideoCodecFrameFlags">
<ANCHOR id="GstVideoCodecState" href="gst-plugins-base-libs-1.0/gst-plugins-base-libs-gstvideoutils.html#GstVideoCodecState">
+<ANCHOR id="gst-plugins-base-libs-gstnavigation" href="gst-plugins-base-libs-1.0/gst-plugins-base-libs-gstnavigation.html">
+<ANCHOR id="gst-plugins-base-libs-gstnavigation.functions" href="gst-plugins-base-libs-1.0/gst-plugins-base-libs-gstnavigation.html#gst-plugins-base-libs-gstnavigation.functions">
+<ANCHOR id="GstNavigation" href="gst-plugins-base-libs-1.0/gst-plugins-base-libs-gstnavigation.html#GstNavigation">
+<ANCHOR id="gst-plugins-base-libs-gstnavigation.other" href="gst-plugins-base-libs-1.0/gst-plugins-base-libs-gstnavigation.html#gst-plugins-base-libs-gstnavigation.other">
+<ANCHOR id="gst-plugins-base-libs-gstnavigation.object-hierarchy" href="gst-plugins-base-libs-1.0/gst-plugins-base-libs-gstnavigation.html#gst-plugins-base-libs-gstnavigation.object-hierarchy">
+<ANCHOR id="gst-plugins-base-libs-gstnavigation.includes" href="gst-plugins-base-libs-1.0/gst-plugins-base-libs-gstnavigation.html#gst-plugins-base-libs-gstnavigation.includes">
+<ANCHOR id="gst-plugins-base-libs-gstnavigation.description" href="gst-plugins-base-libs-1.0/gst-plugins-base-libs-gstnavigation.html#gst-plugins-base-libs-gstnavigation.description">
+<ANCHOR id="gst-plugins-base-libs-gstnavigation.functions_details" href="gst-plugins-base-libs-1.0/gst-plugins-base-libs-gstnavigation.html#gst-plugins-base-libs-gstnavigation.functions_details">
+<ANCHOR id="gst-navigation-send-event" href="gst-plugins-base-libs-1.0/gst-plugins-base-libs-gstnavigation.html#gst-navigation-send-event">
+<ANCHOR id="gst-navigation-send-key-event" href="gst-plugins-base-libs-1.0/gst-plugins-base-libs-gstnavigation.html#gst-navigation-send-key-event">
+<ANCHOR id="gst-navigation-send-mouse-event" href="gst-plugins-base-libs-1.0/gst-plugins-base-libs-gstnavigation.html#gst-navigation-send-mouse-event">
+<ANCHOR id="gst-navigation-send-command" href="gst-plugins-base-libs-1.0/gst-plugins-base-libs-gstnavigation.html#gst-navigation-send-command">
+<ANCHOR id="gst-navigation-event-parse-command" href="gst-plugins-base-libs-1.0/gst-plugins-base-libs-gstnavigation.html#gst-navigation-event-parse-command">
+<ANCHOR id="gst-navigation-event-parse-key-event" href="gst-plugins-base-libs-1.0/gst-plugins-base-libs-gstnavigation.html#gst-navigation-event-parse-key-event">
+<ANCHOR id="gst-navigation-event-parse-mouse-button-event" href="gst-plugins-base-libs-1.0/gst-plugins-base-libs-gstnavigation.html#gst-navigation-event-parse-mouse-button-event">
+<ANCHOR id="gst-navigation-event-parse-mouse-move-event" href="gst-plugins-base-libs-1.0/gst-plugins-base-libs-gstnavigation.html#gst-navigation-event-parse-mouse-move-event">
+<ANCHOR id="gst-navigation-message-get-type" href="gst-plugins-base-libs-1.0/gst-plugins-base-libs-gstnavigation.html#gst-navigation-message-get-type">
+<ANCHOR id="gst-navigation-message-new-angles-changed" href="gst-plugins-base-libs-1.0/gst-plugins-base-libs-gstnavigation.html#gst-navigation-message-new-angles-changed">
+<ANCHOR id="gst-navigation-message-new-commands-changed" href="gst-plugins-base-libs-1.0/gst-plugins-base-libs-gstnavigation.html#gst-navigation-message-new-commands-changed">
+<ANCHOR id="gst-navigation-message-new-mouse-over" href="gst-plugins-base-libs-1.0/gst-plugins-base-libs-gstnavigation.html#gst-navigation-message-new-mouse-over">
+<ANCHOR id="gst-navigation-message-parse-mouse-over" href="gst-plugins-base-libs-1.0/gst-plugins-base-libs-gstnavigation.html#gst-navigation-message-parse-mouse-over">
+<ANCHOR id="gst-navigation-message-parse-angles-changed" href="gst-plugins-base-libs-1.0/gst-plugins-base-libs-gstnavigation.html#gst-navigation-message-parse-angles-changed">
+<ANCHOR id="gst-navigation-query-new-angles" href="gst-plugins-base-libs-1.0/gst-plugins-base-libs-gstnavigation.html#gst-navigation-query-new-angles">
+<ANCHOR id="gst-navigation-query-get-type" href="gst-plugins-base-libs-1.0/gst-plugins-base-libs-gstnavigation.html#gst-navigation-query-get-type">
+<ANCHOR id="gst-navigation-query-new-commands" href="gst-plugins-base-libs-1.0/gst-plugins-base-libs-gstnavigation.html#gst-navigation-query-new-commands">
+<ANCHOR id="gst-navigation-query-parse-angles" href="gst-plugins-base-libs-1.0/gst-plugins-base-libs-gstnavigation.html#gst-navigation-query-parse-angles">
+<ANCHOR id="gst-navigation-query-parse-commands-length" href="gst-plugins-base-libs-1.0/gst-plugins-base-libs-gstnavigation.html#gst-navigation-query-parse-commands-length">
+<ANCHOR id="gst-navigation-query-parse-commands-nth" href="gst-plugins-base-libs-1.0/gst-plugins-base-libs-gstnavigation.html#gst-navigation-query-parse-commands-nth">
+<ANCHOR id="gst-navigation-query-set-angles" href="gst-plugins-base-libs-1.0/gst-plugins-base-libs-gstnavigation.html#gst-navigation-query-set-angles">
+<ANCHOR id="gst-navigation-query-set-commands" href="gst-plugins-base-libs-1.0/gst-plugins-base-libs-gstnavigation.html#gst-navigation-query-set-commands">
+<ANCHOR id="gst-navigation-query-set-commandsv" href="gst-plugins-base-libs-1.0/gst-plugins-base-libs-gstnavigation.html#gst-navigation-query-set-commandsv">
+<ANCHOR id="gst-plugins-base-libs-gstnavigation.other_details" href="gst-plugins-base-libs-1.0/gst-plugins-base-libs-gstnavigation.html#gst-plugins-base-libs-gstnavigation.other_details">
+<ANCHOR id="GstNavigation-struct" href="gst-plugins-base-libs-1.0/gst-plugins-base-libs-gstnavigation.html#GstNavigation-struct">
+<ANCHOR id="GstNavigationInterface" href="gst-plugins-base-libs-1.0/gst-plugins-base-libs-gstnavigation.html#GstNavigationInterface">
+<ANCHOR id="GstNavigationCommand" href="gst-plugins-base-libs-1.0/gst-plugins-base-libs-gstnavigation.html#GstNavigationCommand">
+<ANCHOR id="GstNavigationEventType" href="gst-plugins-base-libs-1.0/gst-plugins-base-libs-gstnavigation.html#GstNavigationEventType">
+<ANCHOR id="GstNavigationMessageType" href="gst-plugins-base-libs-1.0/gst-plugins-base-libs-gstnavigation.html#GstNavigationMessageType">
+<ANCHOR id="GstNavigationQueryType" href="gst-plugins-base-libs-1.0/gst-plugins-base-libs-gstnavigation.html#GstNavigationQueryType">
+<ANCHOR id="GST-NAVIGATION-COMMAND-DVD-ANGLE-MENU:CAPS" href="gst-plugins-base-libs-1.0/gst-plugins-base-libs-gstnavigation.html#GST-NAVIGATION-COMMAND-DVD-ANGLE-MENU:CAPS">
+<ANCHOR id="GST-NAVIGATION-COMMAND-DVD-AUDIO-MENU:CAPS" href="gst-plugins-base-libs-1.0/gst-plugins-base-libs-gstnavigation.html#GST-NAVIGATION-COMMAND-DVD-AUDIO-MENU:CAPS">
+<ANCHOR id="GST-NAVIGATION-COMMAND-DVD-CHAPTER-MENU:CAPS" href="gst-plugins-base-libs-1.0/gst-plugins-base-libs-gstnavigation.html#GST-NAVIGATION-COMMAND-DVD-CHAPTER-MENU:CAPS">
+<ANCHOR id="GST-NAVIGATION-COMMAND-DVD-MENU:CAPS" href="gst-plugins-base-libs-1.0/gst-plugins-base-libs-gstnavigation.html#GST-NAVIGATION-COMMAND-DVD-MENU:CAPS">
+<ANCHOR id="GST-NAVIGATION-COMMAND-DVD-ROOT-MENU:CAPS" href="gst-plugins-base-libs-1.0/gst-plugins-base-libs-gstnavigation.html#GST-NAVIGATION-COMMAND-DVD-ROOT-MENU:CAPS">
+<ANCHOR id="GST-NAVIGATION-COMMAND-DVD-SUBPICTURE-MENU:CAPS" href="gst-plugins-base-libs-1.0/gst-plugins-base-libs-gstnavigation.html#GST-NAVIGATION-COMMAND-DVD-SUBPICTURE-MENU:CAPS">
+<ANCHOR id="GST-NAVIGATION-COMMAND-DVD-TITLE-MENU:CAPS" href="gst-plugins-base-libs-1.0/gst-plugins-base-libs-gstnavigation.html#GST-NAVIGATION-COMMAND-DVD-TITLE-MENU:CAPS">
<ANCHOR id="annotation-glossterm-allow-none" href="gst-plugins-base-libs-1.0/annotation-glossary.html#annotation-glossterm-allow-none">
<ANCHOR id="annotation-glossterm-array" href="gst-plugins-base-libs-1.0/annotation-glossary.html#annotation-glossterm-array">
<ANCHOR id="annotation-glossterm-closure" href="gst-plugins-base-libs-1.0/annotation-glossary.html#annotation-glossterm-closure">
diff --git a/docs/plugins/gst-plugins-base-plugins-docs.sgml b/docs/plugins/gst-plugins-base-plugins-docs.sgml
index d879e9e..6ae5478 100644
--- a/docs/plugins/gst-plugins-base-plugins-docs.sgml
+++ b/docs/plugins/gst-plugins-base-plugins-docs.sgml
@@ -40,6 +40,8 @@
<xi:include href="xml/element-oggdemux.xml" />
<xi:include href="xml/element-oggmux.xml" />
<xi:include href="xml/element-playbin.xml" />
+ <xi:include href="xml/element-playsink.xml" />
+ <xi:include href="xml/element-streamsynchronizer.xml" />
<xi:include href="xml/element-subtitleoverlay.xml" />
<xi:include href="xml/element-tcpclientsrc.xml" />
<xi:include href="xml/element-tcpclientsink.xml" />
diff --git a/docs/plugins/gst-plugins-base-plugins-sections.txt b/docs/plugins/gst-plugins-base-plugins-sections.txt
index 81eaacb..858dd0b 100644
--- a/docs/plugins/gst-plugins-base-plugins-sections.txt
+++ b/docs/plugins/gst-plugins-base-plugins-sections.txt
@@ -440,13 +440,6 @@ GstOggMuxClass
<FILE>element-playbin</FILE>
<TITLE>playbin</TITLE>
GstPlayBin
-<SUBSECTION Standard>
-</SECTION>
-
-<SECTION>
-<FILE>element-playbin</FILE>
-<TITLE>playbin</TITLE>
-GstPlayBin
GstPlayFlags
<SUBSECTION Standard>
gst_play_flags_get_type
@@ -454,6 +447,60 @@ GST_TYPE_PLAY_FLAGS
</SECTION>
<SECTION>
+<FILE>element-playsink</FILE>
+<TITLE>playsink</TITLE>
+GstPlaySink
+<SUBSECTION Standard>
+GST_TYPE_PLAY_SINK
+GST_PLAY_SINK
+GST_PLAY_SINK_CLASS
+GST_IS_PLAY_SINK
+GST_IS_PLAY_SINK_CLASS
+GstPlaySinkType
+gst_play_sink_get_type
+gst_play_sink_request_pad
+gst_play_sink_release_pad
+gst_play_sink_refresh_pad
+gst_play_sink_set_filter
+gst_play_sink_get_filter
+gst_play_sink_set_sink
+gst_play_sink_get_sink
+gst_play_sink_set_vis_plugin
+gst_play_sink_get_vis_plugin
+gst_play_sink_set_volume
+gst_play_sink_get_volume
+gst_play_sink_set_mute
+gst_play_sink_get_mute
+gst_play_sink_set_flags
+gst_play_sink_get_flags
+gst_play_sink_set_font_desc
+gst_play_sink_get_font_desc
+gst_play_sink_set_subtitle_encoding
+gst_play_sink_get_subtitle_encoding
+gst_play_sink_set_av_offset
+gst_play_sink_get_av_offset
+gst_play_sink_get_last_sample
+gst_play_sink_convert_sample
+gst_play_sink_reconfigure
+gst_play_sink_plugin_init
+</SECTION>
+
+<SECTION>
+<FILE>element-streamsynchronizer</FILE>
+<TITLE>streamsynchronizer</TITLE>
+GstStreamSynchronizer
+<SUBSECTION Standard>
+GST_TYPE_STREAM_SYNCHRONIZER
+GST_STREAM_SYNCHRONIZER
+GST_STREAM_SYNCHRONIZER_CLASS
+GST_IS_STREAM_SYNCHRONIZER
+GST_IS_STREAM_SYNCHRONIZER_CLASS
+GstStreamSynchronizerClass
+gst_stream_synchronizer_get_type
+gst_stream_synchronizer_plugin_init
+</SECTION>
+
+<SECTION>
<FILE>element-subtitleoverlay</FILE>
<TITLE>subtitleoverlay</TITLE>
GstSubtitleOverlay
diff --git a/docs/plugins/html/ch01.html b/docs/plugins/html/ch01.html
index 827e7b6..1bd670e 100644
--- a/docs/plugins/html/ch01.html
+++ b/docs/plugins/html/ch01.html
@@ -93,6 +93,12 @@
<span class="refentrytitle"><a href="gst-plugins-base-plugins-playbin.html">playbin</a></span><span class="refpurpose"> — Autoplug and play media from an uri</span>
</dt>
<dt>
+<span class="refentrytitle"><a href="gst-plugins-base-plugins-playsink.html">playsink</a></span><span class="refpurpose"> — Convenience sink for multiple streams</span>
+</dt>
+<dt>
+<span class="refentrytitle"><a href="gst-plugins-base-plugins-streamsynchronizer.html">streamsynchronizer</a></span><span class="refpurpose"> — Synchronizes a group of streams to have equal durations and starting points</span>
+</dt>
+<dt>
<span class="refentrytitle"><a href="gst-plugins-base-plugins-subtitleoverlay.html">subtitleoverlay</a></span><span class="refpurpose"> — Overlays a video stream with subtitles</span>
</dt>
<dt>
diff --git a/docs/plugins/html/gst-plugins-base-plugins-1.0.devhelp2 b/docs/plugins/html/gst-plugins-base-plugins-1.0.devhelp2
index ba19a14..c69f95b 100644
--- a/docs/plugins/html/gst-plugins-base-plugins-1.0.devhelp2
+++ b/docs/plugins/html/gst-plugins-base-plugins-1.0.devhelp2
@@ -26,6 +26,8 @@
<sub name="oggdemux" link="gst-plugins-base-plugins-oggdemux.html"/>
<sub name="oggmux" link="gst-plugins-base-plugins-oggmux.html"/>
<sub name="playbin" link="gst-plugins-base-plugins-playbin.html"/>
+ <sub name="playsink" link="gst-plugins-base-plugins-playsink.html"/>
+ <sub name="streamsynchronizer" link="gst-plugins-base-plugins-streamsynchronizer.html"/>
<sub name="subtitleoverlay" link="gst-plugins-base-plugins-subtitleoverlay.html"/>
<sub name="tcpclientsrc" link="gst-plugins-base-plugins-tcpclientsrc.html"/>
<sub name="tcpclientsink" link="gst-plugins-base-plugins-tcpclientsink.html"/>
@@ -342,44 +344,67 @@
<keyword type="signal" name="The “text-tags-changed” signal" link="gst-plugins-base-plugins-playbin.html#GstPlayBin-text-tags-changed"/>
<keyword type="signal" name="The “video-changed” signal" link="gst-plugins-base-plugins-playbin.html#GstPlayBin-video-changed"/>
<keyword type="signal" name="The “video-tags-changed” signal" link="gst-plugins-base-plugins-playbin.html#GstPlayBin-video-tags-changed"/>
- <keyword type="" name="Examples" link="gst-plugins-base-plugins-subtitleoverlay.html#id-1.2.25.8.4"/>
- <keyword type="" name="Element Information" link="gst-plugins-base-plugins-subtitleoverlay.html#id-1.2.25.8.5.1"/>
- <keyword type="" name="Element Pads" link="gst-plugins-base-plugins-subtitleoverlay.html#id-1.2.25.8.5.2"/>
+ <keyword type="" name="Element Information" link="gst-plugins-base-plugins-playsink.html#id-1.2.25.9.2.1"/>
+ <keyword type="" name="Element Pads" link="gst-plugins-base-plugins-playsink.html#id-1.2.25.9.2.2"/>
+ <keyword type="struct" name="GstPlaySink" link="gst-plugins-base-plugins-playsink.html#GstPlaySink-struct"/>
+ <keyword type="property" name="The “audio-sink” property" link="gst-plugins-base-plugins-playsink.html#GstPlaySink--audio-sink"/>
+ <keyword type="property" name="The “av-offset” property" link="gst-plugins-base-plugins-playsink.html#GstPlaySink--av-offset"/>
+ <keyword type="property" name="The “flags” property" link="gst-plugins-base-plugins-playsink.html#GstPlaySink--flags"/>
+ <keyword type="property" name="The “force-aspect-ratio” property" link="gst-plugins-base-plugins-playsink.html#GstPlaySink--force-aspect-ratio"/>
+ <keyword type="property" name="The “mute” property" link="gst-plugins-base-plugins-playsink.html#GstPlaySink--mute"/>
+ <keyword type="property" name="The “sample” property" link="gst-plugins-base-plugins-playsink.html#GstPlaySink--sample"/>
+ <keyword type="property" name="The “send-event-mode” property" link="gst-plugins-base-plugins-playsink.html#GstPlaySink--send-event-mode"/>
+ <keyword type="property" name="The “subtitle-encoding” property" link="gst-plugins-base-plugins-playsink.html#GstPlaySink--subtitle-encoding"/>
+ <keyword type="property" name="The “subtitle-font-desc” property" link="gst-plugins-base-plugins-playsink.html#GstPlaySink--subtitle-font-desc"/>
+ <keyword type="property" name="The “text-sink” property" link="gst-plugins-base-plugins-playsink.html#GstPlaySink--text-sink"/>
+ <keyword type="property" name="The “video-sink” property" link="gst-plugins-base-plugins-playsink.html#GstPlaySink--video-sink"/>
+ <keyword type="property" name="The “vis-plugin” property" link="gst-plugins-base-plugins-playsink.html#GstPlaySink--vis-plugin"/>
+ <keyword type="property" name="The “volume” property" link="gst-plugins-base-plugins-playsink.html#GstPlaySink--volume"/>
+ <keyword type="property" name="The “audio-filter” property" link="gst-plugins-base-plugins-playsink.html#GstPlaySink--audio-filter"/>
+ <keyword type="property" name="The “video-filter” property" link="gst-plugins-base-plugins-playsink.html#GstPlaySink--video-filter"/>
+ <keyword type="signal" name="The “convert-sample” signal" link="gst-plugins-base-plugins-playsink.html#GstPlaySink-convert-sample"/>
+ <keyword type="signal" name="The “reconfigure” signal" link="gst-plugins-base-plugins-playsink.html#GstPlaySink-reconfigure"/>
+ <keyword type="" name="Element Information" link="gst-plugins-base-plugins-streamsynchronizer.html#id-1.2.26.6.2.1"/>
+ <keyword type="" name="Element Pads" link="gst-plugins-base-plugins-streamsynchronizer.html#id-1.2.26.6.2.2"/>
+ <keyword type="struct" name="struct GstStreamSynchronizer" link="gst-plugins-base-plugins-streamsynchronizer.html#GstStreamSynchronizer-struct"/>
+ <keyword type="" name="Examples" link="gst-plugins-base-plugins-subtitleoverlay.html#id-1.2.27.8.4"/>
+ <keyword type="" name="Element Information" link="gst-plugins-base-plugins-subtitleoverlay.html#id-1.2.27.8.5.1"/>
+ <keyword type="" name="Element Pads" link="gst-plugins-base-plugins-subtitleoverlay.html#id-1.2.27.8.5.2"/>
<keyword type="struct" name="struct GstSubtitleOverlay" link="gst-plugins-base-plugins-subtitleoverlay.html#GstSubtitleOverlay-struct"/>
<keyword type="property" name="The “font-desc” property" link="gst-plugins-base-plugins-subtitleoverlay.html#GstSubtitleOverlay--font-desc"/>
<keyword type="property" name="The “silent” property" link="gst-plugins-base-plugins-subtitleoverlay.html#GstSubtitleOverlay--silent"/>
<keyword type="property" name="The “subtitle-encoding” property" link="gst-plugins-base-plugins-subtitleoverlay.html#GstSubtitleOverlay--subtitle-encoding"/>
- <keyword type="" name="Example launch line" link="gst-plugins-base-plugins-tcpclientsrc.html#id-1.2.26.7.2"/>
- <keyword type="" name="Element Information" link="gst-plugins-base-plugins-tcpclientsrc.html#id-1.2.26.7.3.1"/>
- <keyword type="" name="Element Pads" link="gst-plugins-base-plugins-tcpclientsrc.html#id-1.2.26.7.3.2"/>
+ <keyword type="" name="Example launch line" link="gst-plugins-base-plugins-tcpclientsrc.html#id-1.2.28.7.2"/>
+ <keyword type="" name="Element Information" link="gst-plugins-base-plugins-tcpclientsrc.html#id-1.2.28.7.3.1"/>
+ <keyword type="" name="Element Pads" link="gst-plugins-base-plugins-tcpclientsrc.html#id-1.2.28.7.3.2"/>
<keyword type="struct" name="struct GstTCPClientSrc" link="gst-plugins-base-plugins-tcpclientsrc.html#GstTCPClientSrc-struct"/>
<keyword type="property" name="The “host” property" link="gst-plugins-base-plugins-tcpclientsrc.html#GstTCPClientSrc--host"/>
<keyword type="property" name="The “port” property" link="gst-plugins-base-plugins-tcpclientsrc.html#GstTCPClientSrc--port"/>
- <keyword type="" name="Example launch line" link="gst-plugins-base-plugins-tcpclientsink.html#id-1.2.27.7.2"/>
- <keyword type="" name="Element Information" link="gst-plugins-base-plugins-tcpclientsink.html#id-1.2.27.7.3.1"/>
- <keyword type="" name="Element Pads" link="gst-plugins-base-plugins-tcpclientsink.html#id-1.2.27.7.3.2"/>
+ <keyword type="" name="Example launch line" link="gst-plugins-base-plugins-tcpclientsink.html#id-1.2.29.7.2"/>
+ <keyword type="" name="Element Information" link="gst-plugins-base-plugins-tcpclientsink.html#id-1.2.29.7.3.1"/>
+ <keyword type="" name="Element Pads" link="gst-plugins-base-plugins-tcpclientsink.html#id-1.2.29.7.3.2"/>
<keyword type="struct" name="struct GstTCPClientSink" link="gst-plugins-base-plugins-tcpclientsink.html#GstTCPClientSink-struct"/>
<keyword type="property" name="The “host” property" link="gst-plugins-base-plugins-tcpclientsink.html#GstTCPClientSink--host"/>
<keyword type="property" name="The “port” property" link="gst-plugins-base-plugins-tcpclientsink.html#GstTCPClientSink--port"/>
- <keyword type="" name="Example launch line" link="gst-plugins-base-plugins-tcpserversrc.html#id-1.2.28.7.2"/>
- <keyword type="" name="Element Information" link="gst-plugins-base-plugins-tcpserversrc.html#id-1.2.28.7.3.1"/>
- <keyword type="" name="Element Pads" link="gst-plugins-base-plugins-tcpserversrc.html#id-1.2.28.7.3.2"/>
+ <keyword type="" name="Example launch line" link="gst-plugins-base-plugins-tcpserversrc.html#id-1.2.30.7.2"/>
+ <keyword type="" name="Element Information" link="gst-plugins-base-plugins-tcpserversrc.html#id-1.2.30.7.3.1"/>
+ <keyword type="" name="Element Pads" link="gst-plugins-base-plugins-tcpserversrc.html#id-1.2.30.7.3.2"/>
<keyword type="struct" name="struct GstTCPServerSrc" link="gst-plugins-base-plugins-tcpserversrc.html#GstTCPServerSrc-struct"/>
<keyword type="property" name="The “current-port” property" link="gst-plugins-base-plugins-tcpserversrc.html#GstTCPServerSrc--current-port"/>
<keyword type="property" name="The “host” property" link="gst-plugins-base-plugins-tcpserversrc.html#GstTCPServerSrc--host"/>
<keyword type="property" name="The “port” property" link="gst-plugins-base-plugins-tcpserversrc.html#GstTCPServerSrc--port"/>
- <keyword type="" name="Example launch line" link="gst-plugins-base-plugins-tcpserversink.html#id-1.2.29.7.2"/>
- <keyword type="" name="Element Information" link="gst-plugins-base-plugins-tcpserversink.html#id-1.2.29.7.3.1"/>
- <keyword type="" name="Element Pads" link="gst-plugins-base-plugins-tcpserversink.html#id-1.2.29.7.3.2"/>
+ <keyword type="" name="Example launch line" link="gst-plugins-base-plugins-tcpserversink.html#id-1.2.31.7.2"/>
+ <keyword type="" name="Element Information" link="gst-plugins-base-plugins-tcpserversink.html#id-1.2.31.7.3.1"/>
+ <keyword type="" name="Element Pads" link="gst-plugins-base-plugins-tcpserversink.html#id-1.2.31.7.3.2"/>
<keyword type="struct" name="struct GstTCPServerSink" link="gst-plugins-base-plugins-tcpserversink.html#GstTCPServerSink-struct"/>
<keyword type="property" name="The “current-port” property" link="gst-plugins-base-plugins-tcpserversink.html#GstTCPServerSink--current-port"/>
<keyword type="property" name="The “host” property" link="gst-plugins-base-plugins-tcpserversink.html#GstTCPServerSink--host"/>
<keyword type="property" name="The “port” property" link="gst-plugins-base-plugins-tcpserversink.html#GstTCPServerSink--port"/>
- <keyword type="" name="Element Information" link="gst-plugins-base-plugins-textoverlay.html#id-1.2.30.6.2.1"/>
- <keyword type="" name="Element Pads" link="gst-plugins-base-plugins-textoverlay.html#id-1.2.30.6.2.2"/>
+ <keyword type="" name="Element Information" link="gst-plugins-base-plugins-textoverlay.html#id-1.2.32.6.2.1"/>
+ <keyword type="" name="Element Pads" link="gst-plugins-base-plugins-textoverlay.html#id-1.2.32.6.2.2"/>
<keyword type="struct" name="struct GstTextOverlay" link="gst-plugins-base-plugins-textoverlay.html#GstTextOverlay-struct"/>
- <keyword type="" name="Element Information" link="gst-plugins-base-plugins-textrender.html#id-1.2.31.7.2.1"/>
- <keyword type="" name="Element Pads" link="gst-plugins-base-plugins-textrender.html#id-1.2.31.7.2.2"/>
+ <keyword type="" name="Element Information" link="gst-plugins-base-plugins-textrender.html#id-1.2.33.7.2.1"/>
+ <keyword type="" name="Element Pads" link="gst-plugins-base-plugins-textrender.html#id-1.2.33.7.2.2"/>
<keyword type="struct" name="struct GstTextRender" link="gst-plugins-base-plugins-textrender.html#GstTextRender-struct"/>
<keyword type="property" name="The “font-desc” property" link="gst-plugins-base-plugins-textrender.html#GstTextRender--font-desc"/>
<keyword type="property" name="The “halignment” property" link="gst-plugins-base-plugins-textrender.html#GstTextRender--halignment"/>
@@ -387,11 +412,11 @@
<keyword type="property" name="The “valignment” property" link="gst-plugins-base-plugins-textrender.html#GstTextRender--valignment"/>
<keyword type="property" name="The “xpad” property" link="gst-plugins-base-plugins-textrender.html#GstTextRender--xpad"/>
<keyword type="property" name="The “ypad” property" link="gst-plugins-base-plugins-textrender.html#GstTextRender--ypad"/>
- <keyword type="" name="Element Information" link="gst-plugins-base-plugins-theoradec.html#id-1.2.32.6.2.1"/>
- <keyword type="" name="Element Pads" link="gst-plugins-base-plugins-theoradec.html#id-1.2.32.6.2.2"/>
+ <keyword type="" name="Element Information" link="gst-plugins-base-plugins-theoradec.html#id-1.2.34.6.2.1"/>
+ <keyword type="" name="Element Pads" link="gst-plugins-base-plugins-theoradec.html#id-1.2.34.6.2.2"/>
<keyword type="struct" name="struct GstTheoraDec" link="gst-plugins-base-plugins-theoradec.html#GstTheoraDec-struct"/>
- <keyword type="" name="Element Information" link="gst-plugins-base-plugins-theoraenc.html#id-1.2.33.8.2.1"/>
- <keyword type="" name="Element Pads" link="gst-plugins-base-plugins-theoraenc.html#id-1.2.33.8.2.2"/>
+ <keyword type="" name="Element Information" link="gst-plugins-base-plugins-theoraenc.html#id-1.2.35.8.2.1"/>
+ <keyword type="" name="Element Pads" link="gst-plugins-base-plugins-theoraenc.html#id-1.2.35.8.2.2"/>
<keyword type="struct" name="struct GstTheoraEnc" link="gst-plugins-base-plugins-theoraenc.html#GstTheoraEnc-struct"/>
<keyword type="property" name="The “bitrate” property" link="gst-plugins-base-plugins-theoraenc.html#GstTheoraEnc--bitrate"/>
<keyword type="property" name="The “cap-overflow” property" link="gst-plugins-base-plugins-theoraenc.html#GstTheoraEnc--cap-overflow"/>
@@ -406,14 +431,14 @@
<keyword type="property" name="The “rate-buffer” property" link="gst-plugins-base-plugins-theoraenc.html#GstTheoraEnc--rate-buffer"/>
<keyword type="property" name="The “speed-level” property" link="gst-plugins-base-plugins-theoraenc.html#GstTheoraEnc--speed-level"/>
<keyword type="property" name="The “vp3-compatible” property" link="gst-plugins-base-plugins-theoraenc.html#GstTheoraEnc--vp3-compatible"/>
- <keyword type="" name="Element Information" link="gst-plugins-base-plugins-theoraparse.html#id-1.2.34.6.2.1"/>
- <keyword type="" name="Element Pads" link="gst-plugins-base-plugins-theoraparse.html#id-1.2.34.6.2.2"/>
+ <keyword type="" name="Element Information" link="gst-plugins-base-plugins-theoraparse.html#id-1.2.36.6.2.1"/>
+ <keyword type="" name="Element Pads" link="gst-plugins-base-plugins-theoraparse.html#id-1.2.36.6.2.2"/>
<keyword type="struct" name="struct GstTheoraParse" link="gst-plugins-base-plugins-theoraparse.html#GstTheoraParse-struct"/>
- <keyword type="" name="Element Information" link="gst-plugins-base-plugins-timeoverlay.html#id-1.2.35.6.2.1"/>
- <keyword type="" name="Element Pads" link="gst-plugins-base-plugins-timeoverlay.html#id-1.2.35.6.2.2"/>
+ <keyword type="" name="Element Information" link="gst-plugins-base-plugins-timeoverlay.html#id-1.2.37.6.2.1"/>
+ <keyword type="" name="Element Pads" link="gst-plugins-base-plugins-timeoverlay.html#id-1.2.37.6.2.2"/>
<keyword type="struct" name="struct GstTimeOverlay" link="gst-plugins-base-plugins-timeoverlay.html#GstTimeOverlay-struct"/>
- <keyword type="" name="Element Information" link="gst-plugins-base-plugins-uridecodebin.html#id-1.2.36.9.2.2.1"/>
- <keyword type="" name="Element Pads" link="gst-plugins-base-plugins-uridecodebin.html#id-1.2.36.9.2.2.2"/>
+ <keyword type="" name="Element Information" link="gst-plugins-base-plugins-uridecodebin.html#id-1.2.38.9.2.2.1"/>
+ <keyword type="" name="Element Pads" link="gst-plugins-base-plugins-uridecodebin.html#id-1.2.38.9.2.2.2"/>
<keyword type="struct" name="struct GstURIDecodeBin" link="gst-plugins-base-plugins-uridecodebin.html#GstURIDecodeBin-struct"/>
<keyword type="enum" name="enum GstAutoplugSelectResult" link="gst-plugins-base-plugins-uridecodebin.html#GstAutoplugSelectResult"/>
<keyword type="property" name="The “buffer-duration” property" link="gst-plugins-base-plugins-uridecodebin.html#GstURIDecodeBin--buffer-duration"/>
@@ -435,9 +460,9 @@
<keyword type="signal" name="The “drained” signal" link="gst-plugins-base-plugins-uridecodebin.html#GstURIDecodeBin-drained"/>
<keyword type="signal" name="The “source-setup” signal" link="gst-plugins-base-plugins-uridecodebin.html#GstURIDecodeBin-source-setup"/>
<keyword type="signal" name="The “unknown-type” signal" link="gst-plugins-base-plugins-uridecodebin.html#GstURIDecodeBin-unknown-type"/>
- <keyword type="" name="Example pipelines" link="gst-plugins-base-plugins-videorate.html#id-1.2.37.7.10"/>
- <keyword type="" name="Element Information" link="gst-plugins-base-plugins-videorate.html#id-1.2.37.7.11.1"/>
- <keyword type="" name="Element Pads" link="gst-plugins-base-plugins-videorate.html#id-1.2.37.7.11.2"/>
+ <keyword type="" name="Example pipelines" link="gst-plugins-base-plugins-videorate.html#id-1.2.39.7.10"/>
+ <keyword type="" name="Element Information" link="gst-plugins-base-plugins-videorate.html#id-1.2.39.7.11.1"/>
+ <keyword type="" name="Element Pads" link="gst-plugins-base-plugins-videorate.html#id-1.2.39.7.11.2"/>
<keyword type="struct" name="struct GstVideoRate" link="gst-plugins-base-plugins-videorate.html#GstVideoRate-struct"/>
<keyword type="property" name="The “average-period” property" link="gst-plugins-base-plugins-videorate.html#GstVideoRate--average-period"/>
<keyword type="property" name="The “drop” property" link="gst-plugins-base-plugins-videorate.html#GstVideoRate--drop"/>
@@ -449,9 +474,9 @@
<keyword type="property" name="The “out” property" link="gst-plugins-base-plugins-videorate.html#GstVideoRate--out"/>
<keyword type="property" name="The “silent” property" link="gst-plugins-base-plugins-videorate.html#GstVideoRate--silent"/>
<keyword type="property" name="The “skip-to-first” property" link="gst-plugins-base-plugins-videorate.html#GstVideoRate--skip-to-first"/>
- <keyword type="" name="Example pipelines" link="gst-plugins-base-plugins-videoscale.html#id-1.2.38.7.4"/>
- <keyword type="" name="Element Information" link="gst-plugins-base-plugins-videoscale.html#id-1.2.38.7.5.1"/>
- <keyword type="" name="Element Pads" link="gst-plugins-base-plugins-videoscale.html#id-1.2.38.7.5.2"/>
+ <keyword type="" name="Example pipelines" link="gst-plugins-base-plugins-videoscale.html#id-1.2.40.7.4"/>
+ <keyword type="" name="Element Information" link="gst-plugins-base-plugins-videoscale.html#id-1.2.40.7.5.1"/>
+ <keyword type="" name="Element Pads" link="gst-plugins-base-plugins-videoscale.html#id-1.2.40.7.5.2"/>
<keyword type="struct" name="struct GstVideoScale" link="gst-plugins-base-plugins-videoscale.html#GstVideoScale-struct"/>
<keyword type="enum" name="enum GstVideoScaleMethod" link="gst-plugins-base-plugins-videoscale.html#GstVideoScaleMethod"/>
<keyword type="property" name="The “add-borders” property" link="gst-plugins-base-plugins-videoscale.html#GstVideoScale--add-borders"/>
@@ -460,9 +485,9 @@
<keyword type="property" name="The “method” property" link="gst-plugins-base-plugins-videoscale.html#GstVideoScale--method"/>
<keyword type="property" name="The “sharpen” property" link="gst-plugins-base-plugins-videoscale.html#GstVideoScale--sharpen"/>
<keyword type="property" name="The “sharpness” property" link="gst-plugins-base-plugins-videoscale.html#GstVideoScale--sharpness"/>
- <keyword type="" name="Example launch line" link="gst-plugins-base-plugins-videotestsrc.html#id-1.2.39.7.3"/>
- <keyword type="" name="Element Information" link="gst-plugins-base-plugins-videotestsrc.html#id-1.2.39.7.4.1"/>
- <keyword type="" name="Element Pads" link="gst-plugins-base-plugins-videotestsrc.html#id-1.2.39.7.4.2"/>
+ <keyword type="" name="Example launch line" link="gst-plugins-base-plugins-videotestsrc.html#id-1.2.41.7.3"/>
+ <keyword type="" name="Element Information" link="gst-plugins-base-plugins-videotestsrc.html#id-1.2.41.7.4.1"/>
+ <keyword type="" name="Element Pads" link="gst-plugins-base-plugins-videotestsrc.html#id-1.2.41.7.4.2"/>
<keyword type="struct" name="struct GstVideoTestSrc" link="gst-plugins-base-plugins-videotestsrc.html#GstVideoTestSrc-struct"/>
<keyword type="enum" name="enum GstVideoTestSrcPattern" link="gst-plugins-base-plugins-videotestsrc.html#GstVideoTestSrcPattern"/>
<keyword type="property" name="The “background-color” property" link="gst-plugins-base-plugins-videotestsrc.html#GstVideoTestSrc--background-color"/>
@@ -483,17 +508,17 @@
<keyword type="property" name="The “timestamp-offset” property" link="gst-plugins-base-plugins-videotestsrc.html#GstVideoTestSrc--timestamp-offset"/>
<keyword type="property" name="The “xoffset” property" link="gst-plugins-base-plugins-videotestsrc.html#GstVideoTestSrc--xoffset"/>
<keyword type="property" name="The “yoffset” property" link="gst-plugins-base-plugins-videotestsrc.html#GstVideoTestSrc--yoffset"/>
- <keyword type="" name="Example launch line" link="gst-plugins-base-plugins-volume.html#id-1.2.40.8.3"/>
- <keyword type="" name="Element Information" link="gst-plugins-base-plugins-volume.html#id-1.2.40.8.4.1"/>
- <keyword type="" name="Element Pads" link="gst-plugins-base-plugins-volume.html#id-1.2.40.8.4.2"/>
+ <keyword type="" name="Example launch line" link="gst-plugins-base-plugins-volume.html#id-1.2.42.8.3"/>
+ <keyword type="" name="Element Information" link="gst-plugins-base-plugins-volume.html#id-1.2.42.8.4.1"/>
+ <keyword type="" name="Element Pads" link="gst-plugins-base-plugins-volume.html#id-1.2.42.8.4.2"/>
<keyword type="struct" name="struct GstVolume" link="gst-plugins-base-plugins-volume.html#GstVolume-struct"/>
<keyword type="property" name="The “mute” property" link="gst-plugins-base-plugins-volume.html#GstVolume--mute"/>
<keyword type="property" name="The “volume” property" link="gst-plugins-base-plugins-volume.html#GstVolume--volume"/>
- <keyword type="" name="Element Information" link="gst-plugins-base-plugins-vorbisdec.html#id-1.2.41.6.2.1"/>
- <keyword type="" name="Element Pads" link="gst-plugins-base-plugins-vorbisdec.html#id-1.2.41.6.2.2"/>
+ <keyword type="" name="Element Information" link="gst-plugins-base-plugins-vorbisdec.html#id-1.2.43.6.2.1"/>
+ <keyword type="" name="Element Pads" link="gst-plugins-base-plugins-vorbisdec.html#id-1.2.43.6.2.2"/>
<keyword type="struct" name="struct GstVorbisDec" link="gst-plugins-base-plugins-vorbisdec.html#GstVorbisDec-struct"/>
- <keyword type="" name="Element Information" link="gst-plugins-base-plugins-vorbisenc.html#id-1.2.42.8.2.1"/>
- <keyword type="" name="Element Pads" link="gst-plugins-base-plugins-vorbisenc.html#id-1.2.42.8.2.2"/>
+ <keyword type="" name="Element Information" link="gst-plugins-base-plugins-vorbisenc.html#id-1.2.44.8.2.1"/>
+ <keyword type="" name="Element Pads" link="gst-plugins-base-plugins-vorbisenc.html#id-1.2.44.8.2.2"/>
<keyword type="struct" name="struct GstVorbisEnc" link="gst-plugins-base-plugins-vorbisenc.html#GstVorbisEnc-struct"/>
<keyword type="property" name="The “bitrate” property" link="gst-plugins-base-plugins-vorbisenc.html#GstVorbisEnc--bitrate"/>
<keyword type="property" name="The “last-message” property" link="gst-plugins-base-plugins-vorbisenc.html#GstVorbisEnc--last-message"/>
@@ -501,14 +526,14 @@
<keyword type="property" name="The “max-bitrate” property" link="gst-plugins-base-plugins-vorbisenc.html#GstVorbisEnc--max-bitrate"/>
<keyword type="property" name="The “min-bitrate” property" link="gst-plugins-base-plugins-vorbisenc.html#GstVorbisEnc--min-bitrate"/>
<keyword type="property" name="The “quality” property" link="gst-plugins-base-plugins-vorbisenc.html#GstVorbisEnc--quality"/>
- <keyword type="" name="Element Information" link="gst-plugins-base-plugins-vorbisparse.html#id-1.2.43.6.2.1"/>
- <keyword type="" name="Element Pads" link="gst-plugins-base-plugins-vorbisparse.html#id-1.2.43.6.2.2"/>
+ <keyword type="" name="Element Information" link="gst-plugins-base-plugins-vorbisparse.html#id-1.2.45.6.2.1"/>
+ <keyword type="" name="Element Pads" link="gst-plugins-base-plugins-vorbisparse.html#id-1.2.45.6.2.2"/>
<keyword type="struct" name="struct GstVorbisParse" link="gst-plugins-base-plugins-vorbisparse.html#GstVorbisParse-struct"/>
- <keyword type="" name="Element Information" link="gst-plugins-base-plugins-vorbistag.html#id-1.2.44.7.2.1"/>
- <keyword type="" name="Element Pads" link="gst-plugins-base-plugins-vorbistag.html#id-1.2.44.7.2.2"/>
+ <keyword type="" name="Element Information" link="gst-plugins-base-plugins-vorbistag.html#id-1.2.46.7.2.1"/>
+ <keyword type="" name="Element Pads" link="gst-plugins-base-plugins-vorbistag.html#id-1.2.46.7.2.2"/>
<keyword type="struct" name="struct GstVorbisTag" link="gst-plugins-base-plugins-vorbistag.html#GstVorbisTag-struct"/>
- <keyword type="" name="Element Information" link="gst-plugins-base-plugins-ximagesink.html#id-1.2.45.8.2.1"/>
- <keyword type="" name="Element Pads" link="gst-plugins-base-plugins-ximagesink.html#id-1.2.45.8.2.2"/>
+ <keyword type="" name="Element Information" link="gst-plugins-base-plugins-ximagesink.html#id-1.2.47.8.2.1"/>
+ <keyword type="" name="Element Pads" link="gst-plugins-base-plugins-ximagesink.html#id-1.2.47.8.2.2"/>
<keyword type="struct" name="struct GstXImageSink" link="gst-plugins-base-plugins-ximagesink.html#GstXImageSink-struct"/>
<keyword type="property" name="The “display” property" link="gst-plugins-base-plugins-ximagesink.html#GstXImageSink--display"/>
<keyword type="property" name="The “force-aspect-ratio” property" link="gst-plugins-base-plugins-ximagesink.html#GstXImageSink--force-aspect-ratio"/>
@@ -518,8 +543,8 @@
<keyword type="property" name="The “synchronous” property" link="gst-plugins-base-plugins-ximagesink.html#GstXImageSink--synchronous"/>
<keyword type="property" name="The “window-height” property" link="gst-plugins-base-plugins-ximagesink.html#GstXImageSink--window-height"/>
<keyword type="property" name="The “window-width” property" link="gst-plugins-base-plugins-ximagesink.html#GstXImageSink--window-width"/>
- <keyword type="" name="Element Information" link="gst-plugins-base-plugins-xvimagesink.html#id-1.2.46.8.2.1"/>
- <keyword type="" name="Element Pads" link="gst-plugins-base-plugins-xvimagesink.html#id-1.2.46.8.2.2"/>
+ <keyword type="" name="Element Information" link="gst-plugins-base-plugins-xvimagesink.html#id-1.2.48.8.2.1"/>
+ <keyword type="" name="Element Pads" link="gst-plugins-base-plugins-xvimagesink.html#id-1.2.48.8.2.2"/>
<keyword type="struct" name="struct GstXvImageSink" link="gst-plugins-base-plugins-xvimagesink.html#GstXvImageSink-struct"/>
<keyword type="property" name="The “autopaint-colorkey” property" link="gst-plugins-base-plugins-xvimagesink.html#GstXvImageSink--autopaint-colorkey"/>
<keyword type="property" name="The “brightness” property" link="gst-plugins-base-plugins-xvimagesink.html#GstXvImageSink--brightness"/>
diff --git a/docs/plugins/html/gst-plugins-base-plugins-playbin.html b/docs/plugins/html/gst-plugins-base-plugins-playbin.html
index 5135436..eab7c16 100644
--- a/docs/plugins/html/gst-plugins-base-plugins-playbin.html
+++ b/docs/plugins/html/gst-plugins-base-plugins-playbin.html
@@ -7,7 +7,7 @@
<link rel="home" href="index.html" title="GStreamer Base Plugins 1.0 Plugins Reference Manual">
<link rel="up" href="ch01.html" title="gst-plugins-base Elements">
<link rel="prev" href="gst-plugins-base-plugins-oggmux.html" title="oggmux">
-<link rel="next" href="gst-plugins-base-plugins-subtitleoverlay.html" title="subtitleoverlay">
+<link rel="next" href="gst-plugins-base-plugins-playsink.html" title="playsink">
<meta name="generator" content="GTK-Doc V1.20 (XML mode)">
<link rel="stylesheet" href="style.css" type="text/css">
</head>
@@ -24,7 +24,7 @@
<td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
<td><a accesskey="u" href="ch01.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
<td><a accesskey="p" href="gst-plugins-base-plugins-oggmux.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
-<td><a accesskey="n" href="gst-plugins-base-plugins-subtitleoverlay.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
+<td><a accesskey="n" href="gst-plugins-base-plugins-playsink.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
</tr></table>
<div class="refentry">
<a name="gst-plugins-base-plugins-playbin"></a><div class="titlepage"></div>
diff --git a/docs/plugins/html/gst-plugins-base-plugins-playsink.html b/docs/plugins/html/gst-plugins-base-plugins-playsink.html
new file mode 100644
index 0000000..2b0db3c
--- /dev/null
+++ b/docs/plugins/html/gst-plugins-base-plugins-playsink.html
@@ -0,0 +1,575 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<title>GStreamer Base Plugins 1.0 Plugins Reference Manual: playsink</title>
+<meta name="generator" content="DocBook XSL Stylesheets V1.78.1">
+<link rel="home" href="index.html" title="GStreamer Base Plugins 1.0 Plugins Reference Manual">
+<link rel="up" href="ch01.html" title="gst-plugins-base Elements">
+<link rel="prev" href="gst-plugins-base-plugins-playbin.html" title="playbin">
+<link rel="next" href="gst-plugins-base-plugins-streamsynchronizer.html" title="streamsynchronizer">
+<meta name="generator" content="GTK-Doc V1.20 (XML mode)">
+<link rel="stylesheet" href="style.css" type="text/css">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="10"><tr valign="middle">
+<td width="100%" align="left" class="shortcuts">
+<a href="#" class="shortcut">Top</a><span id="nav_description"> <span class="dim">|</span> 
+ <a href="#gst-plugins-base-plugins-playsink.description" class="shortcut">Description</a></span><span id="nav_hierarchy"> <span class="dim">|</span> 
+ <a href="#gst-plugins-base-plugins-playsink.object-hierarchy" class="shortcut">Object Hierarchy</a></span><span id="nav_interfaces"> <span class="dim">|</span> 
+ <a href="#gst-plugins-base-plugins-playsink.implemented-interfaces" class="shortcut">Implemented Interfaces</a></span><span id="nav_properties"> <span class="dim">|</span> 
+ <a href="#gst-plugins-base-plugins-playsink.properties" class="shortcut">Properties</a></span><span id="nav_signals"> <span class="dim">|</span> 
+ <a href="#gst-plugins-base-plugins-playsink.signals" class="shortcut">Signals</a></span>
+</td>
+<td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
+<td><a accesskey="u" href="ch01.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
+<td><a accesskey="p" href="gst-plugins-base-plugins-playbin.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
+<td><a accesskey="n" href="gst-plugins-base-plugins-streamsynchronizer.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
+</tr></table>
+<div class="refentry">
+<a name="gst-plugins-base-plugins-playsink"></a><div class="titlepage"></div>
+<div class="refnamediv"><table width="100%"><tr>
+<td valign="top">
+<h2><span class="refentrytitle"><a name="gst-plugins-base-plugins-playsink.top_of_page"></a>playsink</span></h2>
+<p>playsink — Convenience sink for multiple streams</p>
+</td>
+<td class="gallery_image" valign="top" align="right"></td>
+</tr></table></div>
+<div class="refsect1">
+<a name="gst-plugins-base-plugins-playsink.properties"></a><h2>Properties</h2>
+<div class="informaltable"><table border="0">
+<colgroup>
+<col width="150px" class="properties_type">
+<col width="300px" class="properties_name">
+<col width="200px" class="properties_flags">
+</colgroup>
+<tbody>
+<tr>
+<td class="property_type">
+<a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstElement.html"><span class="type">GstElement</span></a> *</td>
+<td class="property_name"><a class="link" href="gst-plugins-base-plugins-playsink.html#GstPlaySink--audio-sink" title="The “audio-sink” property">audio-sink</a></td>
+<td class="property_flags">Read / Write</td>
+</tr>
+<tr>
+<td class="property_type"><span class="type">gint64</span></td>
+<td class="property_name"><a class="link" href="gst-plugins-base-plugins-playsink.html#GstPlaySink--av-offset" title="The “av-offset” property">av-offset</a></td>
+<td class="property_flags">Read / Write</td>
+</tr>
+<tr>
+<td class="property_type"><a class="link" href="gst-plugins-base-plugins-playbin.html#GstPlayFlags" title="enum GstPlayFlags"><span class="type">GstPlayFlags</span></a></td>
+<td class="property_name"><a class="link" href="gst-plugins-base-plugins-playsink.html#GstPlaySink--flags" title="The “flags” property">flags</a></td>
+<td class="property_flags">Read / Write</td>
+</tr>
+<tr>
+<td class="property_type"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a></td>
+<td class="property_name"><a class="link" href="gst-plugins-base-plugins-playsink.html#GstPlaySink--force-aspect-ratio" title="The “force-aspect-ratio” property">force-aspect-ratio</a></td>
+<td class="property_flags">Read / Write</td>
+</tr>
+<tr>
+<td class="property_type"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a></td>
+<td class="property_name"><a class="link" href="gst-plugins-base-plugins-playsink.html#GstPlaySink--mute" title="The “mute” property">mute</a></td>
+<td class="property_flags">Read / Write</td>
+</tr>
+<tr>
+<td class="property_type">
+<a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstSample.html"><span class="type">GstSample</span></a> *</td>
+<td class="property_name"><a class="link" href="gst-plugins-base-plugins-playsink.html#GstPlaySink--sample" title="The “sample” property">sample</a></td>
+<td class="property_flags">Read</td>
+</tr>
+<tr>
+<td class="property_type"><span class="type">GstPlaySinkSendEventMode</span></td>
+<td class="property_name"><a class="link" href="gst-plugins-base-plugins-playsink.html#GstPlaySink--send-event-mode" title="The “send-event-mode” property">send-event-mode</a></td>
+<td class="property_flags">Read / Write</td>
+</tr>
+<tr>
+<td class="property_type">
+<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *</td>
+<td class="property_name"><a class="link" href="gst-plugins-base-plugins-playsink.html#GstPlaySink--subtitle-encoding" title="The “subtitle-encoding” property">subtitle-encoding</a></td>
+<td class="property_flags">Read / Write</td>
+</tr>
+<tr>
+<td class="property_type">
+<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *</td>
+<td class="property_name"><a class="link" href="gst-plugins-base-plugins-playsink.html#GstPlaySink--subtitle-font-desc" title="The “subtitle-font-desc” property">subtitle-font-desc</a></td>
+<td class="property_flags">Write</td>
+</tr>
+<tr>
+<td class="property_type">
+<a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstElement.html"><span class="type">GstElement</span></a> *</td>
+<td class="property_name"><a class="link" href="gst-plugins-base-plugins-playsink.html#GstPlaySink--text-sink" title="The “text-sink” property">text-sink</a></td>
+<td class="property_flags">Read / Write</td>
+</tr>
+<tr>
+<td class="property_type">
+<a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstElement.html"><span class="type">GstElement</span></a> *</td>
+<td class="property_name"><a class="link" href="gst-plugins-base-plugins-playsink.html#GstPlaySink--video-sink" title="The “video-sink” property">video-sink</a></td>
+<td class="property_flags">Read / Write</td>
+</tr>
+<tr>
+<td class="property_type">
+<a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstElement.html"><span class="type">GstElement</span></a> *</td>
+<td class="property_name"><a class="link" href="gst-plugins-base-plugins-playsink.html#GstPlaySink--vis-plugin" title="The “vis-plugin” property">vis-plugin</a></td>
+<td class="property_flags">Read / Write</td>
+</tr>
+<tr>
+<td class="property_type"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gdouble"><span class="type">gdouble</span></a></td>
+<td class="property_name"><a class="link" href="gst-plugins-base-plugins-playsink.html#GstPlaySink--volume" title="The “volume” property">volume</a></td>
+<td class="property_flags">Read / Write</td>
+</tr>
+<tr>
+<td class="property_type">
+<a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstElement.html"><span class="type">GstElement</span></a> *</td>
+<td class="property_name"><a class="link" href="gst-plugins-base-plugins-playsink.html#GstPlaySink--audio-filter" title="The “audio-filter” property">audio-filter</a></td>
+<td class="property_flags">Read / Write</td>
+</tr>
+<tr>
+<td class="property_type">
+<a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstElement.html"><span class="type">GstElement</span></a> *</td>
+<td class="property_name"><a class="link" href="gst-plugins-base-plugins-playsink.html#GstPlaySink--video-filter" title="The “video-filter” property">video-filter</a></td>
+<td class="property_flags">Read / Write</td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<div class="refsect1">
+<a name="gst-plugins-base-plugins-playsink.signals"></a><h2>Signals</h2>
+<div class="informaltable"><table border="0">
+<colgroup>
+<col width="150px" class="signals_return">
+<col width="300px" class="signals_name">
+<col width="200px" class="signals_flags">
+</colgroup>
+<tbody>
+<tr>
+<td class="signal_type">
+<a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstSample.html"><span class="returnvalue">GstSample</span></a>*</td>
+<td class="signal_name"><a class="link" href="gst-plugins-base-plugins-playsink.html#GstPlaySink-convert-sample" title="The “convert-sample” signal">convert-sample</a></td>
+<td class="signal_flags">Action</td>
+</tr>
+<tr>
+<td class="signal_type"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a></td>
+<td class="signal_name"><a class="link" href="gst-plugins-base-plugins-playsink.html#GstPlaySink-reconfigure" title="The “reconfigure” signal">reconfigure</a></td>
+<td class="signal_flags">Action</td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<a name="GstPlaySink"></a><div class="refsect1">
+<a name="gst-plugins-base-plugins-playsink.other"></a><h2>Types and Values</h2>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="150px" class="name">
+<col class="description">
+</colgroup>
+<tbody><tr>
+<td class="datatype_keyword"> </td>
+<td class="function_name"><a class="link" href="gst-plugins-base-plugins-playsink.html#GstPlaySink-struct" title="GstPlaySink">GstPlaySink</a></td>
+</tr></tbody>
+</table></div>
+</div>
+<div class="refsect1">
+<a name="gst-plugins-base-plugins-playsink.object-hierarchy"></a><h2>Object Hierarchy</h2>
+<pre class="screen"> <a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#GObject">GObject</a>
+ <span class="lineart">╰──</span> <a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#GInitiallyUnowned">GInitiallyUnowned</a>
+ <span class="lineart">╰──</span> <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstObject.html">GstObject</a>
+ <span class="lineart">╰──</span> <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstElement.html">GstElement</a>
+ <span class="lineart">╰──</span> <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstBin.html">GstBin</a>
+ <span class="lineart">╰──</span> GstPlaySink
+</pre>
+</div>
+<div class="refsect1">
+<a name="gst-plugins-base-plugins-playsink.implemented-interfaces"></a><h2>Implemented Interfaces</h2>
+<p>
+GstPlaySink implements
+ <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstChildProxy.html">GstChildProxy</a>, <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gst-plugins-base-libs/html/gst-plugins-base-libs-gststreamvolume.html#GstStreamVolume">GstStreamVolume</a>, <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gst-plugins-base-libs/html/gst-plugins-base-libs-gstvideooverlay.html#GstVideoOverlay">GstVideoOverlay</a>, <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gst-plugins-base-libs/html/gst-plugins-base-libs-gstnavigation.html#GstNavigation">GstNavigation</a> and <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gst-plugins-base-libs/html/gst-plugins-base-libs-gstcolorbalance.html#GstColorBalance">GstColorBalance</a>.</p>
+</div>
+<div class="refsect1">
+<a name="gst-plugins-base-plugins-playsink.description"></a><h2>Description</h2>
+<div class="refsynopsisdiv">
+<h2>Synopsis</h2>
+<div class="refsect2">
+<a name="id-1.2.25.9.2.1"></a><h3>Element Information</h3>
+<div class="variablelist"><table border="0" class="variablelist">
+<colgroup>
+<col align="left" valign="top">
+<col>
+</colgroup>
+<tbody>
+<tr>
+<td><p><span class="term">plugin</span></p></td>
+<td>
+ <a class="link" href="gst-plugins-base-plugins-plugin-playback.html#plugin-playback">playback</a>
+ </td>
+</tr>
+<tr>
+<td><p><span class="term">author</span></p></td>
+<td>Wim Taymans &lt;wim.taymans@gmail.com&gt;</td>
+</tr>
+<tr>
+<td><p><span class="term">class</span></p></td>
+<td>Generic/Bin/Sink</td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<hr>
+<div class="refsect2">
+<a name="id-1.2.25.9.2.2"></a><h3>Element Pads</h3>
+<div class="variablelist"><table border="0" class="variablelist">
+<colgroup>
+<col align="left" valign="top">
+<col>
+</colgroup>
+<tbody>
+<tr>
+<td><p><span class="term">name</span></p></td>
+<td>audio_raw_sink</td>
+</tr>
+<tr>
+<td><p><span class="term">direction</span></p></td>
+<td>sink</td>
+</tr>
+<tr>
+<td><p><span class="term">presence</span></p></td>
+<td>request</td>
+</tr>
+<tr>
+<td><p><span class="term">details</span></p></td>
+<td>ANY</td>
+</tr>
+</tbody>
+</table></div>
+<div class="variablelist"><table border="0" class="variablelist">
+<colgroup>
+<col align="left" valign="top">
+<col>
+</colgroup>
+<tbody>
+<tr>
+<td><p><span class="term">name</span></p></td>
+<td>audio_sink</td>
+</tr>
+<tr>
+<td><p><span class="term">direction</span></p></td>
+<td>sink</td>
+</tr>
+<tr>
+<td><p><span class="term">presence</span></p></td>
+<td>request</td>
+</tr>
+<tr>
+<td><p><span class="term">details</span></p></td>
+<td>ANY</td>
+</tr>
+</tbody>
+</table></div>
+<div class="variablelist"><table border="0" class="variablelist">
+<colgroup>
+<col align="left" valign="top">
+<col>
+</colgroup>
+<tbody>
+<tr>
+<td><p><span class="term">name</span></p></td>
+<td>text_sink</td>
+</tr>
+<tr>
+<td><p><span class="term">direction</span></p></td>
+<td>sink</td>
+</tr>
+<tr>
+<td><p><span class="term">presence</span></p></td>
+<td>request</td>
+</tr>
+<tr>
+<td><p><span class="term">details</span></p></td>
+<td>ANY</td>
+</tr>
+</tbody>
+</table></div>
+<div class="variablelist"><table border="0" class="variablelist">
+<colgroup>
+<col align="left" valign="top">
+<col>
+</colgroup>
+<tbody>
+<tr>
+<td><p><span class="term">name</span></p></td>
+<td>video_raw_sink</td>
+</tr>
+<tr>
+<td><p><span class="term">direction</span></p></td>
+<td>sink</td>
+</tr>
+<tr>
+<td><p><span class="term">presence</span></p></td>
+<td>request</td>
+</tr>
+<tr>
+<td><p><span class="term">details</span></p></td>
+<td>ANY</td>
+</tr>
+</tbody>
+</table></div>
+<div class="variablelist"><table border="0" class="variablelist">
+<colgroup>
+<col align="left" valign="top">
+<col>
+</colgroup>
+<tbody>
+<tr>
+<td><p><span class="term">name</span></p></td>
+<td>video_sink</td>
+</tr>
+<tr>
+<td><p><span class="term">direction</span></p></td>
+<td>sink</td>
+</tr>
+<tr>
+<td><p><span class="term">presence</span></p></td>
+<td>request</td>
+</tr>
+<tr>
+<td><p><span class="term">details</span></p></td>
+<td>ANY</td>
+</tr>
+</tbody>
+</table></div>
+</div>
+</div>
+<p>
+</p>
+</div>
+<div class="refsect1">
+<a name="gst-plugins-base-plugins-playsink.functions_details"></a><h2>Functions</h2>
+</div>
+<div class="refsect1">
+<a name="gst-plugins-base-plugins-playsink.other_details"></a><h2>Types and Values</h2>
+<div class="refsect2">
+<a name="GstPlaySink-struct"></a><h3>GstPlaySink</h3>
+<pre class="programlisting">typedef struct _GstPlaySink GstPlaySink;</pre>
+<p>
+</p>
+</div>
+</div>
+<div class="refsect1">
+<a name="gst-plugins-base-plugins-playsink.property-details"></a><h2>Property Details</h2>
+<div class="refsect2">
+<a name="GstPlaySink--audio-sink"></a><h3>The <code class="literal">“audio-sink”</code> property</h3>
+<pre class="programlisting"> “audio-sink” <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstElement.html"><span class="type">GstElement</span></a> *</pre>
+<p>Set the used audio sink element. NULL will use the default sink. playsink
+must be in <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstElement.html#GST-STATE-NULL:CAPS"><code class="literal">GST_STATE_NULL</code></a></p>
+<p>Flags: Read / Write</p>
+</div>
+<hr>
+<div class="refsect2">
+<a name="GstPlaySink--av-offset"></a><h3>The <code class="literal">“av-offset”</code> property</h3>
+<pre class="programlisting"> “av-offset” <span class="type">gint64</span></pre>
+<p>Control the synchronisation offset between the audio and video streams.
+Positive values make the audio ahead of the video and negative values make
+the audio go behind the video.</p>
+<p>Flags: Read / Write</p>
+<p>Default value: 0</p>
+</div>
+<hr>
+<div class="refsect2">
+<a name="GstPlaySink--flags"></a><h3>The <code class="literal">“flags”</code> property</h3>
+<pre class="programlisting"> “flags” <a class="link" href="gst-plugins-base-plugins-playbin.html#GstPlayFlags" title="enum GstPlayFlags"><span class="type">GstPlayFlags</span></a></pre>
+<p>Control the behaviour of playsink.</p>
+<p>Flags: Read / Write</p>
+<p>Default value: Render the video stream|Render the audio stream|Render subtitles|Use software volume|Use software color balance</p>
+</div>
+<hr>
+<div class="refsect2">
+<a name="GstPlaySink--force-aspect-ratio"></a><h3>The <code class="literal">“force-aspect-ratio”</code> property</h3>
+<pre class="programlisting"> “force-aspect-ratio” <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a></pre>
+<p>When enabled, scaling will respect original aspect ratio.</p>
+<p>Flags: Read / Write</p>
+<p>Default value: TRUE</p>
+</div>
+<hr>
+<div class="refsect2">
+<a name="GstPlaySink--mute"></a><h3>The <code class="literal">“mute”</code> property</h3>
+<pre class="programlisting"> “mute” <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a></pre>
+<p>Mute the audio channel without changing the volume.</p>
+<p>Flags: Read / Write</p>
+<p>Default value: FALSE</p>
+</div>
+<hr>
+<div class="refsect2">
+<a name="GstPlaySink--sample"></a><h3>The <code class="literal">“sample”</code> property</h3>
+<pre class="programlisting"> “sample” <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstSample.html"><span class="type">GstSample</span></a> *</pre>
+<p>Get the currently rendered or prerolled sample in the video sink.
+The <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/gstreamer-GstCaps.html#GstCaps"><span class="type">GstCaps</span></a> in the sample will describe the format of the buffer.</p>
+<p>Flags: Read</p>
+</div>
+<hr>
+<div class="refsect2">
+<a name="GstPlaySink--send-event-mode"></a><h3>The <code class="literal">“send-event-mode”</code> property</h3>
+<pre class="programlisting"> “send-event-mode” <span class="type">GstPlaySinkSendEventMode</span></pre>
+<p>How to send events received in send_event function.</p>
+<p>Flags: Read / Write</p>
+<p>Default value: Default GstBin's send_event handling (default)</p>
+</div>
+<hr>
+<div class="refsect2">
+<a name="GstPlaySink--subtitle-encoding"></a><h3>The <code class="literal">“subtitle-encoding”</code> property</h3>
+<pre class="programlisting"> “subtitle-encoding” <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *</pre>
+<p>Encoding to assume if input subtitles are not in UTF-8 encoding. If not set, the GST_SUBTITLE_ENCODING environment variable will be checked for an encoding to use. If that is not set either, ISO-8859-15 will be assumed.</p>
+<p>Flags: Read / Write</p>
+<p>Default value: NULL</p>
+</div>
+<hr>
+<div class="refsect2">
+<a name="GstPlaySink--subtitle-font-desc"></a><h3>The <code class="literal">“subtitle-font-desc”</code> property</h3>
+<pre class="programlisting"> “subtitle-font-desc” <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *</pre>
+<p>Pango font description of font to be used for subtitle rendering.</p>
+<p>Flags: Write</p>
+<p>Default value: NULL</p>
+</div>
+<hr>
+<div class="refsect2">
+<a name="GstPlaySink--text-sink"></a><h3>The <code class="literal">“text-sink”</code> property</h3>
+<pre class="programlisting"> “text-sink” <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstElement.html"><span class="type">GstElement</span></a> *</pre>
+<p>Set the used text sink element. NULL will use the default sink. playsink
+must be in <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstElement.html#GST-STATE-NULL:CAPS"><code class="literal">GST_STATE_NULL</code></a></p>
+<p>Flags: Read / Write</p>
+</div>
+<hr>
+<div class="refsect2">
+<a name="GstPlaySink--video-sink"></a><h3>The <code class="literal">“video-sink”</code> property</h3>
+<pre class="programlisting"> “video-sink” <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstElement.html"><span class="type">GstElement</span></a> *</pre>
+<p>Set the used video sink element. NULL will use the default sink. playsink
+must be in <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstElement.html#GST-STATE-NULL:CAPS"><code class="literal">GST_STATE_NULL</code></a></p>
+<p>Flags: Read / Write</p>
+</div>
+<hr>
+<div class="refsect2">
+<a name="GstPlaySink--vis-plugin"></a><h3>The <code class="literal">“vis-plugin”</code> property</h3>
+<pre class="programlisting"> “vis-plugin” <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstElement.html"><span class="type">GstElement</span></a> *</pre>
+<p>the visualization element to use (NULL = default).</p>
+<p>Flags: Read / Write</p>
+</div>
+<hr>
+<div class="refsect2">
+<a name="GstPlaySink--volume"></a><h3>The <code class="literal">“volume”</code> property</h3>
+<pre class="programlisting"> “volume” <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gdouble"><span class="type">gdouble</span></a></pre>
+<p>Get or set the current audio stream volume. 1.0 means 100%,
+0.0 means mute. This uses a linear volume scale.</p>
+<p>Flags: Read / Write</p>
+<p>Allowed values: [0,10]</p>
+<p>Default value: 1</p>
+</div>
+<hr>
+<div class="refsect2">
+<a name="GstPlaySink--audio-filter"></a><h3>The <code class="literal">“audio-filter”</code> property</h3>
+<pre class="programlisting"> “audio-filter” <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstElement.html"><span class="type">GstElement</span></a> *</pre>
+<p>Set the audio filter element/bin to use. Will apply on a best-effort basis
+unless GST_PLAY_FLAG_FORCE_FILTERS is set. playsink must be in
+<a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstElement.html#GST-STATE-NULL:CAPS"><code class="literal">GST_STATE_NULL</code></a></p>
+<p>Flags: Read / Write</p>
+</div>
+<hr>
+<div class="refsect2">
+<a name="GstPlaySink--video-filter"></a><h3>The <code class="literal">“video-filter”</code> property</h3>
+<pre class="programlisting"> “video-filter” <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstElement.html"><span class="type">GstElement</span></a> *</pre>
+<p>Set the video filter element/bin to use. Will apply on a best-effort basis
+unless GST_PLAY_FLAG_FORCE_FILTERS is set. playsink must be in
+<a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstElement.html#GST-STATE-NULL:CAPS"><code class="literal">GST_STATE_NULL</code></a></p>
+<p>Flags: Read / Write</p>
+</div>
+</div>
+<div class="refsect1">
+<a name="gst-plugins-base-plugins-playsink.signal-details"></a><h2>Signal Details</h2>
+<div class="refsect2">
+<a name="GstPlaySink-convert-sample"></a><h3>The <code class="literal">“convert-sample”</code> signal</h3>
+<pre class="programlisting"><a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstSample.html"><span class="returnvalue">GstSample</span></a>*
+user_function (<a class="link" href="gst-plugins-base-plugins-playsink.html#GstPlaySink"><span class="type">GstPlaySink</span></a> *playsink,
+ <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/gstreamer-GstCaps.html#GstCaps"><span class="type">GstCaps</span></a> *caps,
+ <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data)</pre>
+<p>Action signal to retrieve the currently playing video sample in the format
+specified by <em class="parameter"><code>caps</code></em>
+.
+If <em class="parameter"><code>caps</code></em>
+ is <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>, no conversion will be performed and this function is
+equivalent to the <span class="type">“sample”</span> property.</p>
+<div class="refsect3">
+<a name="id-1.2.25.13.2.5"></a><h4>Parameters</h4>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
+<tbody>
+<tr>
+<td class="parameter_name"><p>playsink</p></td>
+<td class="parameter_description"><p>a <a class="link" href="gst-plugins-base-plugins-playsink.html#GstPlaySink"><span class="type">GstPlaySink</span></a></p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+<tr>
+<td class="parameter_name"><p>caps</p></td>
+<td class="parameter_description"><p>the target format of the sample</p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+<tr>
+<td class="parameter_name"><p>user_data</p></td>
+<td class="parameter_description"><p>user data set when the signal handler was connected.</p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<div class="refsect3">
+<a name="id-1.2.25.13.2.6"></a><h4>Returns</h4>
+<p> a <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstSample.html"><span class="type">GstSample</span></a> of the current video sample converted to <span class="type">caps</span>.
+The caps in the sample will describe the final layout of the buffer data.
+<a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> is returned when no current sample can be retrieved or when the
+conversion failed.</p>
+<p></p>
+</div>
+<p>Flags: Action</p>
+</div>
+<hr>
+<div class="refsect2">
+<a name="GstPlaySink-reconfigure"></a><h3>The <code class="literal">“reconfigure”</code> signal</h3>
+<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+user_function (<a class="link" href="gst-plugins-base-plugins-playsink.html#GstPlaySink"><span class="type">GstPlaySink</span></a> *gstplaysink,
+ <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data)</pre>
+<p>
+</p>
+<div class="refsect3">
+<a name="id-1.2.25.13.3.5"></a><h4>Parameters</h4>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
+<tbody>
+<tr>
+<td class="parameter_name"><p>gstplaysink</p></td>
+<td class="parameter_description"><p>the object which received the signal.</p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+<tr>
+<td class="parameter_name"><p>user_data</p></td>
+<td class="parameter_description"><p>user data set when the signal handler was connected.</p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<div class="refsect3">
+<a name="id-1.2.25.13.3.6"></a><h4>Returns</h4>
+<p></p>
+</div>
+<p>Flags: Action</p>
+</div>
+</div>
+</div>
+<div class="footer">
+<hr>
+ Generated by GTK-Doc V1.20</div>
+</body>
+</html> \ No newline at end of file
diff --git a/docs/plugins/html/gst-plugins-base-plugins-plugin-adder.html b/docs/plugins/html/gst-plugins-base-plugins-plugin-adder.html
index b6b7ce4..799cc1f 100644
--- a/docs/plugins/html/gst-plugins-base-plugins-plugin-adder.html
+++ b/docs/plugins/html/gst-plugins-base-plugins-plugin-adder.html
@@ -42,7 +42,7 @@
</tr>
<tr>
<td><p><span class="term">version</span></p></td>
-<td>1.3.2</td>
+<td>1.3.3</td>
</tr>
<tr>
<td><p><span class="term">run-time license</span></p></td>
diff --git a/docs/plugins/html/gst-plugins-base-plugins-plugin-alsa.html b/docs/plugins/html/gst-plugins-base-plugins-plugin-alsa.html
index e290c19..48f3223 100644
--- a/docs/plugins/html/gst-plugins-base-plugins-plugin-alsa.html
+++ b/docs/plugins/html/gst-plugins-base-plugins-plugin-alsa.html
@@ -42,7 +42,7 @@
</tr>
<tr>
<td><p><span class="term">version</span></p></td>
-<td>1.3.2</td>
+<td>1.3.3</td>
</tr>
<tr>
<td><p><span class="term">run-time license</span></p></td>
diff --git a/docs/plugins/html/gst-plugins-base-plugins-plugin-app.html b/docs/plugins/html/gst-plugins-base-plugins-plugin-app.html
index 21bc7e8..a7e189f 100644
--- a/docs/plugins/html/gst-plugins-base-plugins-plugin-app.html
+++ b/docs/plugins/html/gst-plugins-base-plugins-plugin-app.html
@@ -42,7 +42,7 @@
</tr>
<tr>
<td><p><span class="term">version</span></p></td>
-<td>1.3.2</td>
+<td>1.3.3</td>
</tr>
<tr>
<td><p><span class="term">run-time license</span></p></td>
diff --git a/docs/plugins/html/gst-plugins-base-plugins-plugin-audioconvert.html b/docs/plugins/html/gst-plugins-base-plugins-plugin-audioconvert.html
index 50d3451..23091c6 100644
--- a/docs/plugins/html/gst-plugins-base-plugins-plugin-audioconvert.html
+++ b/docs/plugins/html/gst-plugins-base-plugins-plugin-audioconvert.html
@@ -42,7 +42,7 @@
</tr>
<tr>
<td><p><span class="term">version</span></p></td>
-<td>1.3.2</td>
+<td>1.3.3</td>
</tr>
<tr>
<td><p><span class="term">run-time license</span></p></td>
diff --git a/docs/plugins/html/gst-plugins-base-plugins-plugin-audiorate.html b/docs/plugins/html/gst-plugins-base-plugins-plugin-audiorate.html
index b6e614f..5b0d68f 100644
--- a/docs/plugins/html/gst-plugins-base-plugins-plugin-audiorate.html
+++ b/docs/plugins/html/gst-plugins-base-plugins-plugin-audiorate.html
@@ -42,7 +42,7 @@
</tr>
<tr>
<td><p><span class="term">version</span></p></td>
-<td>1.3.2</td>
+<td>1.3.3</td>
</tr>
<tr>
<td><p><span class="term">run-time license</span></p></td>
diff --git a/docs/plugins/html/gst-plugins-base-plugins-plugin-audioresample.html b/docs/plugins/html/gst-plugins-base-plugins-plugin-audioresample.html
index 986df9e..bdf8a84 100644
--- a/docs/plugins/html/gst-plugins-base-plugins-plugin-audioresample.html
+++ b/docs/plugins/html/gst-plugins-base-plugins-plugin-audioresample.html
@@ -42,7 +42,7 @@
</tr>
<tr>
<td><p><span class="term">version</span></p></td>
-<td>1.3.2</td>
+<td>1.3.3</td>
</tr>
<tr>
<td><p><span class="term">run-time license</span></p></td>
diff --git a/docs/plugins/html/gst-plugins-base-plugins-plugin-audiotestsrc.html b/docs/plugins/html/gst-plugins-base-plugins-plugin-audiotestsrc.html
index df91809..13c1e16 100644
--- a/docs/plugins/html/gst-plugins-base-plugins-plugin-audiotestsrc.html
+++ b/docs/plugins/html/gst-plugins-base-plugins-plugin-audiotestsrc.html
@@ -42,7 +42,7 @@
</tr>
<tr>
<td><p><span class="term">version</span></p></td>
-<td>1.3.2</td>
+<td>1.3.3</td>
</tr>
<tr>
<td><p><span class="term">run-time license</span></p></td>
diff --git a/docs/plugins/html/gst-plugins-base-plugins-plugin-cdparanoia.html b/docs/plugins/html/gst-plugins-base-plugins-plugin-cdparanoia.html
index 701f34a..4c01cdf 100644
--- a/docs/plugins/html/gst-plugins-base-plugins-plugin-cdparanoia.html
+++ b/docs/plugins/html/gst-plugins-base-plugins-plugin-cdparanoia.html
@@ -42,7 +42,7 @@
</tr>
<tr>
<td><p><span class="term">version</span></p></td>
-<td>1.3.2</td>
+<td>1.3.3</td>
</tr>
<tr>
<td><p><span class="term">run-time license</span></p></td>
diff --git a/docs/plugins/html/gst-plugins-base-plugins-plugin-encoding.html b/docs/plugins/html/gst-plugins-base-plugins-plugin-encoding.html
index 1e472db..ff0ceb7 100644
--- a/docs/plugins/html/gst-plugins-base-plugins-plugin-encoding.html
+++ b/docs/plugins/html/gst-plugins-base-plugins-plugin-encoding.html
@@ -42,7 +42,7 @@
</tr>
<tr>
<td><p><span class="term">version</span></p></td>
-<td>1.3.2</td>
+<td>1.3.3</td>
</tr>
<tr>
<td><p><span class="term">run-time license</span></p></td>
diff --git a/docs/plugins/html/gst-plugins-base-plugins-plugin-gio.html b/docs/plugins/html/gst-plugins-base-plugins-plugin-gio.html
index 86a0b1d..82b19df 100644
--- a/docs/plugins/html/gst-plugins-base-plugins-plugin-gio.html
+++ b/docs/plugins/html/gst-plugins-base-plugins-plugin-gio.html
@@ -42,7 +42,7 @@
</tr>
<tr>
<td><p><span class="term">version</span></p></td>
-<td>1.3.2</td>
+<td>1.3.3</td>
</tr>
<tr>
<td><p><span class="term">run-time license</span></p></td>
diff --git a/docs/plugins/html/gst-plugins-base-plugins-plugin-libvisual.html b/docs/plugins/html/gst-plugins-base-plugins-plugin-libvisual.html
index 80bb030..d98e26e 100644
--- a/docs/plugins/html/gst-plugins-base-plugins-plugin-libvisual.html
+++ b/docs/plugins/html/gst-plugins-base-plugins-plugin-libvisual.html
@@ -42,7 +42,7 @@
</tr>
<tr>
<td><p><span class="term">version</span></p></td>
-<td>1.3.2</td>
+<td>1.3.3</td>
</tr>
<tr>
<td><p><span class="term">run-time license</span></p></td>
diff --git a/docs/plugins/html/gst-plugins-base-plugins-plugin-ogg.html b/docs/plugins/html/gst-plugins-base-plugins-plugin-ogg.html
index 307dea2..d1d2433 100644
--- a/docs/plugins/html/gst-plugins-base-plugins-plugin-ogg.html
+++ b/docs/plugins/html/gst-plugins-base-plugins-plugin-ogg.html
@@ -42,7 +42,7 @@
</tr>
<tr>
<td><p><span class="term">version</span></p></td>
-<td>1.3.2</td>
+<td>1.3.3</td>
</tr>
<tr>
<td><p><span class="term">run-time license</span></p></td>
diff --git a/docs/plugins/html/gst-plugins-base-plugins-plugin-pango.html b/docs/plugins/html/gst-plugins-base-plugins-plugin-pango.html
index 532ae16..e1d1ac3 100644
--- a/docs/plugins/html/gst-plugins-base-plugins-plugin-pango.html
+++ b/docs/plugins/html/gst-plugins-base-plugins-plugin-pango.html
@@ -42,7 +42,7 @@
</tr>
<tr>
<td><p><span class="term">version</span></p></td>
-<td>1.3.2</td>
+<td>1.3.3</td>
</tr>
<tr>
<td><p><span class="term">run-time license</span></p></td>
diff --git a/docs/plugins/html/gst-plugins-base-plugins-plugin-playback.html b/docs/plugins/html/gst-plugins-base-plugins-plugin-playback.html
index 15d574a..1c72d82 100644
--- a/docs/plugins/html/gst-plugins-base-plugins-plugin-playback.html
+++ b/docs/plugins/html/gst-plugins-base-plugins-plugin-playback.html
@@ -42,7 +42,7 @@
</tr>
<tr>
<td><p><span class="term">version</span></p></td>
-<td>1.3.2</td>
+<td>1.3.3</td>
</tr>
<tr>
<td><p><span class="term">run-time license</span></p></td>
@@ -76,11 +76,11 @@
<td>Autoplug and play media from an uri</td>
</tr>
<tr>
-<td><p><span class="term">playsink</span></p></td>
+<td><p><span class="term"><a class="link" href="gst-plugins-base-plugins-playsink.html" title="playsink">playsink</a></span></p></td>
<td>Convenience sink for multiple streams</td>
</tr>
<tr>
-<td><p><span class="term">streamsynchronizer</span></p></td>
+<td><p><span class="term"><a class="link" href="gst-plugins-base-plugins-streamsynchronizer.html" title="streamsynchronizer">streamsynchronizer</a></span></p></td>
<td>Synchronizes a group of streams to have equal durations and starting points</td>
</tr>
<tr>
diff --git a/docs/plugins/html/gst-plugins-base-plugins-plugin-subparse.html b/docs/plugins/html/gst-plugins-base-plugins-plugin-subparse.html
index 4c324b9..539d0cd 100644
--- a/docs/plugins/html/gst-plugins-base-plugins-plugin-subparse.html
+++ b/docs/plugins/html/gst-plugins-base-plugins-plugin-subparse.html
@@ -42,7 +42,7 @@
</tr>
<tr>
<td><p><span class="term">version</span></p></td>
-<td>1.3.2</td>
+<td>1.3.3</td>
</tr>
<tr>
<td><p><span class="term">run-time license</span></p></td>
diff --git a/docs/plugins/html/gst-plugins-base-plugins-plugin-tcp.html b/docs/plugins/html/gst-plugins-base-plugins-plugin-tcp.html
index 554d199..bf69064 100644
--- a/docs/plugins/html/gst-plugins-base-plugins-plugin-tcp.html
+++ b/docs/plugins/html/gst-plugins-base-plugins-plugin-tcp.html
@@ -42,7 +42,7 @@
</tr>
<tr>
<td><p><span class="term">version</span></p></td>
-<td>1.3.2</td>
+<td>1.3.3</td>
</tr>
<tr>
<td><p><span class="term">run-time license</span></p></td>
diff --git a/docs/plugins/html/gst-plugins-base-plugins-plugin-theora.html b/docs/plugins/html/gst-plugins-base-plugins-plugin-theora.html
index d64b083..3b3d714 100644
--- a/docs/plugins/html/gst-plugins-base-plugins-plugin-theora.html
+++ b/docs/plugins/html/gst-plugins-base-plugins-plugin-theora.html
@@ -42,7 +42,7 @@
</tr>
<tr>
<td><p><span class="term">version</span></p></td>
-<td>1.3.2</td>
+<td>1.3.3</td>
</tr>
<tr>
<td><p><span class="term">run-time license</span></p></td>
diff --git a/docs/plugins/html/gst-plugins-base-plugins-plugin-typefindfunctions.html b/docs/plugins/html/gst-plugins-base-plugins-plugin-typefindfunctions.html
index 1778711..4717f18 100644
--- a/docs/plugins/html/gst-plugins-base-plugins-plugin-typefindfunctions.html
+++ b/docs/plugins/html/gst-plugins-base-plugins-plugin-typefindfunctions.html
@@ -42,7 +42,7 @@
</tr>
<tr>
<td><p><span class="term">version</span></p></td>
-<td>1.3.2</td>
+<td>1.3.3</td>
</tr>
<tr>
<td><p><span class="term">run-time license</span></p></td>
diff --git a/docs/plugins/html/gst-plugins-base-plugins-plugin-videoconvert.html b/docs/plugins/html/gst-plugins-base-plugins-plugin-videoconvert.html
index a98d073..ed75a0d 100644
--- a/docs/plugins/html/gst-plugins-base-plugins-plugin-videoconvert.html
+++ b/docs/plugins/html/gst-plugins-base-plugins-plugin-videoconvert.html
@@ -42,7 +42,7 @@
</tr>
<tr>
<td><p><span class="term">version</span></p></td>
-<td>1.3.2</td>
+<td>1.3.3</td>
</tr>
<tr>
<td><p><span class="term">run-time license</span></p></td>
diff --git a/docs/plugins/html/gst-plugins-base-plugins-plugin-videorate.html b/docs/plugins/html/gst-plugins-base-plugins-plugin-videorate.html
index 98fb4a4..36379d8 100644
--- a/docs/plugins/html/gst-plugins-base-plugins-plugin-videorate.html
+++ b/docs/plugins/html/gst-plugins-base-plugins-plugin-videorate.html
@@ -42,7 +42,7 @@
</tr>
<tr>
<td><p><span class="term">version</span></p></td>
-<td>1.3.2</td>
+<td>1.3.3</td>
</tr>
<tr>
<td><p><span class="term">run-time license</span></p></td>
diff --git a/docs/plugins/html/gst-plugins-base-plugins-plugin-videoscale.html b/docs/plugins/html/gst-plugins-base-plugins-plugin-videoscale.html
index 8ad6a3e..9b9fb2d 100644
--- a/docs/plugins/html/gst-plugins-base-plugins-plugin-videoscale.html
+++ b/docs/plugins/html/gst-plugins-base-plugins-plugin-videoscale.html
@@ -42,7 +42,7 @@
</tr>
<tr>
<td><p><span class="term">version</span></p></td>
-<td>1.3.2</td>
+<td>1.3.3</td>
</tr>
<tr>
<td><p><span class="term">run-time license</span></p></td>
diff --git a/docs/plugins/html/gst-plugins-base-plugins-plugin-videotestsrc.html b/docs/plugins/html/gst-plugins-base-plugins-plugin-videotestsrc.html
index 277f3a6..d86cbb8 100644
--- a/docs/plugins/html/gst-plugins-base-plugins-plugin-videotestsrc.html
+++ b/docs/plugins/html/gst-plugins-base-plugins-plugin-videotestsrc.html
@@ -42,7 +42,7 @@
</tr>
<tr>
<td><p><span class="term">version</span></p></td>
-<td>1.3.2</td>
+<td>1.3.3</td>
</tr>
<tr>
<td><p><span class="term">run-time license</span></p></td>
diff --git a/docs/plugins/html/gst-plugins-base-plugins-plugin-volume.html b/docs/plugins/html/gst-plugins-base-plugins-plugin-volume.html
index 298948a..e3df4e4 100644
--- a/docs/plugins/html/gst-plugins-base-plugins-plugin-volume.html
+++ b/docs/plugins/html/gst-plugins-base-plugins-plugin-volume.html
@@ -42,7 +42,7 @@
</tr>
<tr>
<td><p><span class="term">version</span></p></td>
-<td>1.3.2</td>
+<td>1.3.3</td>
</tr>
<tr>
<td><p><span class="term">run-time license</span></p></td>
diff --git a/docs/plugins/html/gst-plugins-base-plugins-plugin-vorbis.html b/docs/plugins/html/gst-plugins-base-plugins-plugin-vorbis.html
index 8177b94..38dd9c9 100644
--- a/docs/plugins/html/gst-plugins-base-plugins-plugin-vorbis.html
+++ b/docs/plugins/html/gst-plugins-base-plugins-plugin-vorbis.html
@@ -42,7 +42,7 @@
</tr>
<tr>
<td><p><span class="term">version</span></p></td>
-<td>1.3.2</td>
+<td>1.3.3</td>
</tr>
<tr>
<td><p><span class="term">run-time license</span></p></td>
diff --git a/docs/plugins/html/gst-plugins-base-plugins-plugin-ximagesink.html b/docs/plugins/html/gst-plugins-base-plugins-plugin-ximagesink.html
index f9a7968..8bad689 100644
--- a/docs/plugins/html/gst-plugins-base-plugins-plugin-ximagesink.html
+++ b/docs/plugins/html/gst-plugins-base-plugins-plugin-ximagesink.html
@@ -42,7 +42,7 @@
</tr>
<tr>
<td><p><span class="term">version</span></p></td>
-<td>1.3.2</td>
+<td>1.3.3</td>
</tr>
<tr>
<td><p><span class="term">run-time license</span></p></td>
diff --git a/docs/plugins/html/gst-plugins-base-plugins-plugin-xvimagesink.html b/docs/plugins/html/gst-plugins-base-plugins-plugin-xvimagesink.html
index aaf8986..0008f07 100644
--- a/docs/plugins/html/gst-plugins-base-plugins-plugin-xvimagesink.html
+++ b/docs/plugins/html/gst-plugins-base-plugins-plugin-xvimagesink.html
@@ -41,7 +41,7 @@
</tr>
<tr>
<td><p><span class="term">version</span></p></td>
-<td>1.3.2</td>
+<td>1.3.3</td>
</tr>
<tr>
<td><p><span class="term">run-time license</span></p></td>
diff --git a/docs/plugins/html/gst-plugins-base-plugins-streamsynchronizer.html b/docs/plugins/html/gst-plugins-base-plugins-streamsynchronizer.html
new file mode 100644
index 0000000..8a59441
--- /dev/null
+++ b/docs/plugins/html/gst-plugins-base-plugins-streamsynchronizer.html
@@ -0,0 +1,159 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<title>GStreamer Base Plugins 1.0 Plugins Reference Manual: streamsynchronizer</title>
+<meta name="generator" content="DocBook XSL Stylesheets V1.78.1">
+<link rel="home" href="index.html" title="GStreamer Base Plugins 1.0 Plugins Reference Manual">
+<link rel="up" href="ch01.html" title="gst-plugins-base Elements">
+<link rel="prev" href="gst-plugins-base-plugins-playsink.html" title="playsink">
+<link rel="next" href="gst-plugins-base-plugins-subtitleoverlay.html" title="subtitleoverlay">
+<meta name="generator" content="GTK-Doc V1.20 (XML mode)">
+<link rel="stylesheet" href="style.css" type="text/css">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="10"><tr valign="middle">
+<td width="100%" align="left" class="shortcuts">
+<a href="#" class="shortcut">Top</a><span id="nav_description"> <span class="dim">|</span> 
+ <a href="#gst-plugins-base-plugins-streamsynchronizer.description" class="shortcut">Description</a></span><span id="nav_hierarchy"> <span class="dim">|</span> 
+ <a href="#gst-plugins-base-plugins-streamsynchronizer.object-hierarchy" class="shortcut">Object Hierarchy</a></span>
+</td>
+<td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
+<td><a accesskey="u" href="ch01.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
+<td><a accesskey="p" href="gst-plugins-base-plugins-playsink.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
+<td><a accesskey="n" href="gst-plugins-base-plugins-subtitleoverlay.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
+</tr></table>
+<div class="refentry">
+<a name="gst-plugins-base-plugins-streamsynchronizer"></a><div class="titlepage"></div>
+<div class="refnamediv"><table width="100%"><tr>
+<td valign="top">
+<h2><span class="refentrytitle"><a name="gst-plugins-base-plugins-streamsynchronizer.top_of_page"></a>streamsynchronizer</span></h2>
+<p>streamsynchronizer — Synchronizes a group of streams to have equal durations and starting points</p>
+</td>
+<td class="gallery_image" valign="top" align="right"></td>
+</tr></table></div>
+<a name="GstStreamSynchronizer"></a><div class="refsect1">
+<a name="gst-plugins-base-plugins-streamsynchronizer.other"></a><h2>Types and Values</h2>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="150px" class="name">
+<col class="description">
+</colgroup>
+<tbody><tr>
+<td class="datatype_keyword">struct</td>
+<td class="function_name"><a class="link" href="gst-plugins-base-plugins-streamsynchronizer.html#GstStreamSynchronizer-struct" title="struct GstStreamSynchronizer">GstStreamSynchronizer</a></td>
+</tr></tbody>
+</table></div>
+</div>
+<div class="refsect1">
+<a name="gst-plugins-base-plugins-streamsynchronizer.object-hierarchy"></a><h2>Object Hierarchy</h2>
+<pre class="screen"> <a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#GObject">GObject</a>
+ <span class="lineart">╰──</span> <a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#GInitiallyUnowned">GInitiallyUnowned</a>
+ <span class="lineart">╰──</span> <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstObject.html">GstObject</a>
+ <span class="lineart">╰──</span> <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstElement.html">GstElement</a>
+ <span class="lineart">╰──</span> GstStreamSynchronizer
+</pre>
+</div>
+<div class="refsect1">
+<a name="gst-plugins-base-plugins-streamsynchronizer.description"></a><h2>Description</h2>
+<div class="refsynopsisdiv">
+<h2>Synopsis</h2>
+<div class="refsect2">
+<a name="id-1.2.26.6.2.1"></a><h3>Element Information</h3>
+<div class="variablelist"><table border="0" class="variablelist">
+<colgroup>
+<col align="left" valign="top">
+<col>
+</colgroup>
+<tbody>
+<tr>
+<td><p><span class="term">plugin</span></p></td>
+<td>
+ <a class="link" href="gst-plugins-base-plugins-plugin-playback.html#plugin-playback">playback</a>
+ </td>
+</tr>
+<tr>
+<td><p><span class="term">author</span></p></td>
+<td>Sebastian Dröge &lt;sebastian.droege@collabora.co.uk&gt;</td>
+</tr>
+<tr>
+<td><p><span class="term">class</span></p></td>
+<td>Generic</td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<hr>
+<div class="refsect2">
+<a name="id-1.2.26.6.2.2"></a><h3>Element Pads</h3>
+<div class="variablelist"><table border="0" class="variablelist">
+<colgroup>
+<col align="left" valign="top">
+<col>
+</colgroup>
+<tbody>
+<tr>
+<td><p><span class="term">name</span></p></td>
+<td>sink_%u</td>
+</tr>
+<tr>
+<td><p><span class="term">direction</span></p></td>
+<td>sink</td>
+</tr>
+<tr>
+<td><p><span class="term">presence</span></p></td>
+<td>request</td>
+</tr>
+<tr>
+<td><p><span class="term">details</span></p></td>
+<td>ANY</td>
+</tr>
+</tbody>
+</table></div>
+<div class="variablelist"><table border="0" class="variablelist">
+<colgroup>
+<col align="left" valign="top">
+<col>
+</colgroup>
+<tbody>
+<tr>
+<td><p><span class="term">name</span></p></td>
+<td>src_%u</td>
+</tr>
+<tr>
+<td><p><span class="term">direction</span></p></td>
+<td>source</td>
+</tr>
+<tr>
+<td><p><span class="term">presence</span></p></td>
+<td>sometimes</td>
+</tr>
+<tr>
+<td><p><span class="term">details</span></p></td>
+<td>ANY</td>
+</tr>
+</tbody>
+</table></div>
+</div>
+</div>
+<p>
+</p>
+</div>
+<div class="refsect1">
+<a name="gst-plugins-base-plugins-streamsynchronizer.functions_details"></a><h2>Functions</h2>
+</div>
+<div class="refsect1">
+<a name="gst-plugins-base-plugins-streamsynchronizer.other_details"></a><h2>Types and Values</h2>
+<div class="refsect2">
+<a name="GstStreamSynchronizer-struct"></a><h3>struct GstStreamSynchronizer</h3>
+<pre class="programlisting">struct GstStreamSynchronizer;</pre>
+<p>
+</p>
+</div>
+</div>
+</div>
+<div class="footer">
+<hr>
+ Generated by GTK-Doc V1.20</div>
+</body>
+</html> \ No newline at end of file
diff --git a/docs/plugins/html/gst-plugins-base-plugins-subtitleoverlay.html b/docs/plugins/html/gst-plugins-base-plugins-subtitleoverlay.html
index 818fbba..28ac093 100644
--- a/docs/plugins/html/gst-plugins-base-plugins-subtitleoverlay.html
+++ b/docs/plugins/html/gst-plugins-base-plugins-subtitleoverlay.html
@@ -6,7 +6,7 @@
<meta name="generator" content="DocBook XSL Stylesheets V1.78.1">
<link rel="home" href="index.html" title="GStreamer Base Plugins 1.0 Plugins Reference Manual">
<link rel="up" href="ch01.html" title="gst-plugins-base Elements">
-<link rel="prev" href="gst-plugins-base-plugins-playbin.html" title="playbin">
+<link rel="prev" href="gst-plugins-base-plugins-streamsynchronizer.html" title="streamsynchronizer">
<link rel="next" href="gst-plugins-base-plugins-tcpclientsrc.html" title="tcpclientsrc">
<meta name="generator" content="GTK-Doc V1.20 (XML mode)">
<link rel="stylesheet" href="style.css" type="text/css">
@@ -22,7 +22,7 @@
</td>
<td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
<td><a accesskey="u" href="ch01.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
-<td><a accesskey="p" href="gst-plugins-base-plugins-playbin.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
+<td><a accesskey="p" href="gst-plugins-base-plugins-streamsynchronizer.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
<td><a accesskey="n" href="gst-plugins-base-plugins-tcpclientsrc.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
</tr></table>
<div class="refentry">
@@ -99,7 +99,7 @@ autoplugging the required elements.</p>
<p>It supports raw, timestamped text, different textual subtitle formats and
DVD subpicture subtitles.</p>
<div class="refsect2">
-<a name="id-1.2.25.8.4"></a><h3>Examples</h3>
+<a name="id-1.2.27.8.4"></a><h3>Examples</h3>
<div class="informalexample">
<table class="listing_frame" border="0" cellpadding="0" cellspacing="0">
<tbody>
@@ -115,7 +115,7 @@ DVD subpicture subtitles.</p>
<div class="refsynopsisdiv">
<h2>Synopsis</h2>
<div class="refsect2">
-<a name="id-1.2.25.8.5.1"></a><h3>Element Information</h3>
+<a name="id-1.2.27.8.5.1"></a><h3>Element Information</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
@@ -141,7 +141,7 @@ DVD subpicture subtitles.</p>
</div>
<hr>
<div class="refsect2">
-<a name="id-1.2.25.8.5.2"></a><h3>Element Pads</h3>
+<a name="id-1.2.27.8.5.2"></a><h3>Element Pads</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
diff --git a/docs/plugins/html/gst-plugins-base-plugins-tcpclientsink.html b/docs/plugins/html/gst-plugins-base-plugins-tcpclientsink.html
index 1b6a7a3..5d22d1c 100644
--- a/docs/plugins/html/gst-plugins-base-plugins-tcpclientsink.html
+++ b/docs/plugins/html/gst-plugins-base-plugins-tcpclientsink.html
@@ -82,7 +82,7 @@
<div class="refsect1">
<a name="gst-plugins-base-plugins-tcpclientsink.description"></a><h2>Description</h2>
<div class="refsect2">
-<a name="id-1.2.27.7.2"></a><h3>Example launch line</h3>
+<a name="id-1.2.29.7.2"></a><h3>Example launch line</h3>
<div class="informalexample">
<table class="listing_frame" border="0" cellpadding="0" cellspacing="0">
<tbody>
@@ -104,7 +104,7 @@ gst<span class="gtkdoc opt">-</span>launch fdsink fd<span class="gtkdoc opt">=</
<div class="refsynopsisdiv">
<h2>Synopsis</h2>
<div class="refsect2">
-<a name="id-1.2.27.7.3.1"></a><h3>Element Information</h3>
+<a name="id-1.2.29.7.3.1"></a><h3>Element Information</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
@@ -130,7 +130,7 @@ gst<span class="gtkdoc opt">-</span>launch fdsink fd<span class="gtkdoc opt">=</
</div>
<hr>
<div class="refsect2">
-<a name="id-1.2.27.7.3.2"></a><h3>Element Pads</h3>
+<a name="id-1.2.29.7.3.2"></a><h3>Element Pads</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
diff --git a/docs/plugins/html/gst-plugins-base-plugins-tcpclientsrc.html b/docs/plugins/html/gst-plugins-base-plugins-tcpclientsrc.html
index ddf9e87..d78e6ad 100644
--- a/docs/plugins/html/gst-plugins-base-plugins-tcpclientsrc.html
+++ b/docs/plugins/html/gst-plugins-base-plugins-tcpclientsrc.html
@@ -83,7 +83,7 @@
<div class="refsect1">
<a name="gst-plugins-base-plugins-tcpclientsrc.description"></a><h2>Description</h2>
<div class="refsect2">
-<a name="id-1.2.26.7.2"></a><h3>Example launch line</h3>
+<a name="id-1.2.28.7.2"></a><h3>Example launch line</h3>
<div class="informalexample">
<table class="listing_frame" border="0" cellpadding="0" cellspacing="0">
<tbody>
@@ -105,7 +105,7 @@ gst<span class="gtkdoc opt">-</span>launch tcpclientsrc port<span class="gtkdoc
<div class="refsynopsisdiv">
<h2>Synopsis</h2>
<div class="refsect2">
-<a name="id-1.2.26.7.3.1"></a><h3>Element Information</h3>
+<a name="id-1.2.28.7.3.1"></a><h3>Element Information</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
@@ -131,7 +131,7 @@ gst<span class="gtkdoc opt">-</span>launch tcpclientsrc port<span class="gtkdoc
</div>
<hr>
<div class="refsect2">
-<a name="id-1.2.26.7.3.2"></a><h3>Element Pads</h3>
+<a name="id-1.2.28.7.3.2"></a><h3>Element Pads</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
diff --git a/docs/plugins/html/gst-plugins-base-plugins-tcpserversink.html b/docs/plugins/html/gst-plugins-base-plugins-tcpserversink.html
index 3ba3c89..80aac6a 100644
--- a/docs/plugins/html/gst-plugins-base-plugins-tcpserversink.html
+++ b/docs/plugins/html/gst-plugins-base-plugins-tcpserversink.html
@@ -89,7 +89,7 @@
<div class="refsect1">
<a name="gst-plugins-base-plugins-tcpserversink.description"></a><h2>Description</h2>
<div class="refsect2">
-<a name="id-1.2.29.7.2"></a><h3>Example launch line</h3>
+<a name="id-1.2.31.7.2"></a><h3>Example launch line</h3>
<div class="informalexample">
<table class="listing_frame" border="0" cellpadding="0" cellspacing="0">
<tbody>
@@ -111,7 +111,7 @@ gst<span class="gtkdoc opt">-</span>launch tcpclientsrc port<span class="gtkdoc
<div class="refsynopsisdiv">
<h2>Synopsis</h2>
<div class="refsect2">
-<a name="id-1.2.29.7.3.1"></a><h3>Element Information</h3>
+<a name="id-1.2.31.7.3.1"></a><h3>Element Information</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
@@ -137,7 +137,7 @@ gst<span class="gtkdoc opt">-</span>launch tcpclientsrc port<span class="gtkdoc
</div>
<hr>
<div class="refsect2">
-<a name="id-1.2.29.7.3.2"></a><h3>Element Pads</h3>
+<a name="id-1.2.31.7.3.2"></a><h3>Element Pads</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
diff --git a/docs/plugins/html/gst-plugins-base-plugins-tcpserversrc.html b/docs/plugins/html/gst-plugins-base-plugins-tcpserversrc.html
index a49df5d..dea34f1 100644
--- a/docs/plugins/html/gst-plugins-base-plugins-tcpserversrc.html
+++ b/docs/plugins/html/gst-plugins-base-plugins-tcpserversrc.html
@@ -88,7 +88,7 @@
<div class="refsect1">
<a name="gst-plugins-base-plugins-tcpserversrc.description"></a><h2>Description</h2>
<div class="refsect2">
-<a name="id-1.2.28.7.2"></a><h3>Example launch line</h3>
+<a name="id-1.2.30.7.2"></a><h3>Example launch line</h3>
<div class="informalexample">
<table class="listing_frame" border="0" cellpadding="0" cellspacing="0">
<tbody>
@@ -110,7 +110,7 @@ gst<span class="gtkdoc opt">-</span>launch fdsrc fd<span class="gtkdoc opt">=</s
<div class="refsynopsisdiv">
<h2>Synopsis</h2>
<div class="refsect2">
-<a name="id-1.2.28.7.3.1"></a><h3>Element Information</h3>
+<a name="id-1.2.30.7.3.1"></a><h3>Element Information</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
@@ -136,7 +136,7 @@ gst<span class="gtkdoc opt">-</span>launch fdsrc fd<span class="gtkdoc opt">=</s
</div>
<hr>
<div class="refsect2">
-<a name="id-1.2.28.7.3.2"></a><h3>Element Pads</h3>
+<a name="id-1.2.30.7.3.2"></a><h3>Element Pads</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
diff --git a/docs/plugins/html/gst-plugins-base-plugins-textoverlay.html b/docs/plugins/html/gst-plugins-base-plugins-textoverlay.html
index 0dcd7ed..cd5fc28 100644
--- a/docs/plugins/html/gst-plugins-base-plugins-textoverlay.html
+++ b/docs/plugins/html/gst-plugins-base-plugins-textoverlay.html
@@ -60,7 +60,7 @@
<div class="refsynopsisdiv">
<h2>Synopsis</h2>
<div class="refsect2">
-<a name="id-1.2.30.6.2.1"></a><h3>Element Information</h3>
+<a name="id-1.2.32.6.2.1"></a><h3>Element Information</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
@@ -86,7 +86,7 @@
</div>
<hr>
<div class="refsect2">
-<a name="id-1.2.30.6.2.2"></a><h3>Element Pads</h3>
+<a name="id-1.2.32.6.2.2"></a><h3>Element Pads</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
diff --git a/docs/plugins/html/gst-plugins-base-plugins-textrender.html b/docs/plugins/html/gst-plugins-base-plugins-textrender.html
index 639a775..01e0aa1 100644
--- a/docs/plugins/html/gst-plugins-base-plugins-textrender.html
+++ b/docs/plugins/html/gst-plugins-base-plugins-textrender.html
@@ -103,7 +103,7 @@
<div class="refsynopsisdiv">
<h2>Synopsis</h2>
<div class="refsect2">
-<a name="id-1.2.31.7.2.1"></a><h3>Element Information</h3>
+<a name="id-1.2.33.7.2.1"></a><h3>Element Information</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
@@ -129,7 +129,7 @@
</div>
<hr>
<div class="refsect2">
-<a name="id-1.2.31.7.2.2"></a><h3>Element Pads</h3>
+<a name="id-1.2.33.7.2.2"></a><h3>Element Pads</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
diff --git a/docs/plugins/html/gst-plugins-base-plugins-theoradec.html b/docs/plugins/html/gst-plugins-base-plugins-theoradec.html
index 865d68c..f42d1c8 100644
--- a/docs/plugins/html/gst-plugins-base-plugins-theoradec.html
+++ b/docs/plugins/html/gst-plugins-base-plugins-theoradec.html
@@ -60,7 +60,7 @@
<div class="refsynopsisdiv">
<h2>Synopsis</h2>
<div class="refsect2">
-<a name="id-1.2.32.6.2.1"></a><h3>Element Information</h3>
+<a name="id-1.2.34.6.2.1"></a><h3>Element Information</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
@@ -86,7 +86,7 @@
</div>
<hr>
<div class="refsect2">
-<a name="id-1.2.32.6.2.2"></a><h3>Element Pads</h3>
+<a name="id-1.2.34.6.2.2"></a><h3>Element Pads</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
diff --git a/docs/plugins/html/gst-plugins-base-plugins-theoraenc.html b/docs/plugins/html/gst-plugins-base-plugins-theoraenc.html
index a59ccf4..522b855 100644
--- a/docs/plugins/html/gst-plugins-base-plugins-theoraenc.html
+++ b/docs/plugins/html/gst-plugins-base-plugins-theoraenc.html
@@ -146,7 +146,7 @@ GstTheoraEnc implements
<div class="refsynopsisdiv">
<h2>Synopsis</h2>
<div class="refsect2">
-<a name="id-1.2.33.8.2.1"></a><h3>Element Information</h3>
+<a name="id-1.2.35.8.2.1"></a><h3>Element Information</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
@@ -172,7 +172,7 @@ GstTheoraEnc implements
</div>
<hr>
<div class="refsect2">
-<a name="id-1.2.33.8.2.2"></a><h3>Element Pads</h3>
+<a name="id-1.2.35.8.2.2"></a><h3>Element Pads</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
diff --git a/docs/plugins/html/gst-plugins-base-plugins-theoraparse.html b/docs/plugins/html/gst-plugins-base-plugins-theoraparse.html
index b86399c..066c24f 100644
--- a/docs/plugins/html/gst-plugins-base-plugins-theoraparse.html
+++ b/docs/plugins/html/gst-plugins-base-plugins-theoraparse.html
@@ -59,7 +59,7 @@
<div class="refsynopsisdiv">
<h2>Synopsis</h2>
<div class="refsect2">
-<a name="id-1.2.34.6.2.1"></a><h3>Element Information</h3>
+<a name="id-1.2.36.6.2.1"></a><h3>Element Information</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
@@ -85,7 +85,7 @@
</div>
<hr>
<div class="refsect2">
-<a name="id-1.2.34.6.2.2"></a><h3>Element Pads</h3>
+<a name="id-1.2.36.6.2.2"></a><h3>Element Pads</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
diff --git a/docs/plugins/html/gst-plugins-base-plugins-timeoverlay.html b/docs/plugins/html/gst-plugins-base-plugins-timeoverlay.html
index 266e28f..656d45f 100644
--- a/docs/plugins/html/gst-plugins-base-plugins-timeoverlay.html
+++ b/docs/plugins/html/gst-plugins-base-plugins-timeoverlay.html
@@ -60,7 +60,7 @@
<div class="refsynopsisdiv">
<h2>Synopsis</h2>
<div class="refsect2">
-<a name="id-1.2.35.6.2.1"></a><h3>Element Information</h3>
+<a name="id-1.2.37.6.2.1"></a><h3>Element Information</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
@@ -86,7 +86,7 @@
</div>
<hr>
<div class="refsect2">
-<a name="id-1.2.35.6.2.2"></a><h3>Element Pads</h3>
+<a name="id-1.2.37.6.2.2"></a><h3>Element Pads</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
diff --git a/docs/plugins/html/gst-plugins-base-plugins-uridecodebin.html b/docs/plugins/html/gst-plugins-base-plugins-uridecodebin.html
index 2c10e38..445798a 100644
--- a/docs/plugins/html/gst-plugins-base-plugins-uridecodebin.html
+++ b/docs/plugins/html/gst-plugins-base-plugins-uridecodebin.html
@@ -202,7 +202,7 @@ handle the given <a class="link" href="gst-plugins-base-plugins-uridecodebin.htm
<div class="refsynopsisdiv">
<h2>Synopsis</h2>
<div class="refsect2">
-<a name="id-1.2.36.9.2.2.1"></a><h3>Element Information</h3>
+<a name="id-1.2.38.9.2.2.1"></a><h3>Element Information</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
@@ -228,7 +228,7 @@ handle the given <a class="link" href="gst-plugins-base-plugins-uridecodebin.htm
</div>
<hr>
<div class="refsect2">
-<a name="id-1.2.36.9.2.2.2"></a><h3>Element Pads</h3>
+<a name="id-1.2.38.9.2.2.2"></a><h3>Element Pads</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
@@ -273,7 +273,7 @@ handle the given <a class="link" href="gst-plugins-base-plugins-uridecodebin.htm
<a name="GstAutoplugSelectResult"></a><h3>enum GstAutoplugSelectResult</h3>
<p>return values for the autoplug-select signal.</p>
<div class="refsect3">
-<a name="id-1.2.36.11.3.4"></a><h4>Members</h4>
+<a name="id-1.2.38.11.3.4"></a><h4>Members</h4>
<div class="informaltable"><table width="100%" border="0">
<colgroup>
<col width="300px" class="enum_members_name">
@@ -416,7 +416,7 @@ returns <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macr
connected in.
</div>
<div class="refsect3">
-<a name="id-1.2.36.13.2.6"></a><h4>Parameters</h4>
+<a name="id-1.2.38.13.2.6"></a><h4>Parameters</h4>
<div class="informaltable"><table width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
@@ -448,7 +448,7 @@ returns <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macr
</table></div>
</div>
<div class="refsect3">
-<a name="id-1.2.36.13.2.7"></a><h4>Returns</h4>
+<a name="id-1.2.38.13.2.7"></a><h4>Returns</h4>
<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><span class="type">TRUE</span></a> if you wish uridecodebin to look for elements that can
handle the given <em class="parameter"><code>caps</code></em>
. If <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><span class="type">FALSE</span></a>, those caps will be considered as
@@ -481,7 +481,7 @@ having an unhandled type media type.</p>
signal, they will never be invoked!
</div>
<div class="refsect3">
-<a name="id-1.2.36.13.3.8"></a><h4>Parameters</h4>
+<a name="id-1.2.38.13.3.8"></a><h4>Parameters</h4>
<div class="informaltable"><table width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
@@ -513,7 +513,7 @@ having an unhandled type media type.</p>
</table></div>
</div>
<div class="refsect3">
-<a name="id-1.2.36.13.3.9"></a><h4>Returns</h4>
+<a name="id-1.2.38.13.3.9"></a><h4>Returns</h4>
<p> a <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Value-arrays.html#GValueArray"><span class="type">GValueArray</span></a>* with a list of factories to try. The factories are
by default tried in the returned order or based on the index returned by
"autoplug-select".</p>
@@ -533,7 +533,7 @@ user_function (<a class="link" href="gst-plugins-base-plugins-uridecodebin.html#
<p>
</p>
<div class="refsect3">
-<a name="id-1.2.36.13.4.5"></a><h4>Parameters</h4>
+<a name="id-1.2.38.13.4.5"></a><h4>Parameters</h4>
<div class="informaltable"><table width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
@@ -555,7 +555,7 @@ user_function (<a class="link" href="gst-plugins-base-plugins-uridecodebin.html#
</table></div>
</div>
<div class="refsect3">
-<a name="id-1.2.36.13.4.6"></a><h4>Returns</h4>
+<a name="id-1.2.38.13.4.6"></a><h4>Returns</h4>
<p></p>
</div>
<p>Flags: Run Last</p>
@@ -592,7 +592,7 @@ next factory.</p>
registered next (again, if any) can override that decision.
</div>
<div class="refsect3">
-<a name="id-1.2.36.13.5.10"></a><h4>Parameters</h4>
+<a name="id-1.2.38.13.5.10"></a><h4>Parameters</h4>
<div class="informaltable"><table width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
@@ -629,7 +629,7 @@ next factory.</p>
</table></div>
</div>
<div class="refsect3">
-<a name="id-1.2.36.13.5.11"></a><h4>Returns</h4>
+<a name="id-1.2.38.13.5.11"></a><h4>Returns</h4>
<p> a <span class="type">GST_TYPE_AUTOPLUG_SELECT_RESULT</span> that indicates the required
operation. The default handler will always return
<a class="link" href="gst-plugins-base-plugins-uridecodebin.html#GST-AUTOPLUG-SELECT-TRY:CAPS"><span class="type">GST_AUTOPLUG_SELECT_TRY</span></a>.</p>
@@ -663,7 +663,7 @@ order should not change.</p>
signal, they will never be invoked!
</div>
<div class="refsect3">
-<a name="id-1.2.36.13.6.7"></a><h4>Parameters</h4>
+<a name="id-1.2.38.13.6.7"></a><h4>Parameters</h4>
<div class="informaltable"><table width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
@@ -700,7 +700,7 @@ order should not change.</p>
</table></div>
</div>
<div class="refsect3">
-<a name="id-1.2.36.13.6.8"></a><h4>Returns</h4>
+<a name="id-1.2.38.13.6.8"></a><h4>Returns</h4>
<p> A new sorted array of <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstElementFactory.html"><span class="type">GstElementFactory</span></a> objects.</p>
<p></p>
</div>
@@ -715,7 +715,7 @@ user_function (<a class="link" href="gst-plugins-base-plugins-uridecodebin.html#
<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data)</pre>
<p>This signal is emitted when the data for the current uri is played.</p>
<div class="refsect3">
-<a name="id-1.2.36.13.7.5"></a><h4>Parameters</h4>
+<a name="id-1.2.38.13.7.5"></a><h4>Parameters</h4>
<div class="informaltable"><table width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
@@ -744,7 +744,7 @@ proxy server for an http source, or set the device and read speed for
an audio cd source). This is functionally equivalent to connecting to
the notify::source signal, but more convenient.</p>
<div class="refsect3">
-<a name="id-1.2.36.13.8.5"></a><h4>Parameters</h4>
+<a name="id-1.2.38.13.8.5"></a><h4>Parameters</h4>
<div class="informaltable"><table width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
@@ -784,7 +784,7 @@ user_function (<a class="link" href="gst-plugins-base-plugins-uridecodebin.html#
<p>This signal is emitted when a pad for which there is no further possible
decoding is added to the uridecodebin.</p>
<div class="refsect3">
-<a name="id-1.2.36.13.9.5"></a><h4>Parameters</h4>
+<a name="id-1.2.38.13.9.5"></a><h4>Parameters</h4>
<div class="informaltable"><table width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
diff --git a/docs/plugins/html/gst-plugins-base-plugins-videorate.html b/docs/plugins/html/gst-plugins-base-plugins-videorate.html
index cf53eca..2a927ee 100644
--- a/docs/plugins/html/gst-plugins-base-plugins-videorate.html
+++ b/docs/plugins/html/gst-plugins-base-plugins-videorate.html
@@ -145,7 +145,7 @@ This can potentially cause performance degradation.
Note that property notification will happen from the streaming thread, so
applications should be prepared for this.</p>
<div class="refsect2">
-<a name="id-1.2.37.7.10"></a><h3>Example pipelines</h3>
+<a name="id-1.2.39.7.10"></a><h3>Example pipelines</h3>
<div class="informalexample">
<table class="listing_frame" border="0" cellpadding="0" cellspacing="0">
<tbody>
@@ -174,7 +174,7 @@ encoding to Ogg/Theora.
<div class="refsynopsisdiv">
<h2>Synopsis</h2>
<div class="refsect2">
-<a name="id-1.2.37.7.11.1"></a><h3>Element Information</h3>
+<a name="id-1.2.39.7.11.1"></a><h3>Element Information</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
@@ -200,7 +200,7 @@ encoding to Ogg/Theora.
</div>
<hr>
<div class="refsect2">
-<a name="id-1.2.37.7.11.2"></a><h3>Element Pads</h3>
+<a name="id-1.2.39.7.11.2"></a><h3>Element Pads</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
diff --git a/docs/plugins/html/gst-plugins-base-plugins-videoscale.html b/docs/plugins/html/gst-plugins-base-plugins-videoscale.html
index 858dfe4..476a587 100644
--- a/docs/plugins/html/gst-plugins-base-plugins-videoscale.html
+++ b/docs/plugins/html/gst-plugins-base-plugins-videoscale.html
@@ -115,7 +115,7 @@ get more robust behaviour without any cost if no scaling is needed.</p>
RGB formats and is therefore generally able to operate anywhere in a
pipeline.</p>
<div class="refsect2">
-<a name="id-1.2.38.7.4"></a><h3>Example pipelines</h3>
+<a name="id-1.2.40.7.4"></a><h3>Example pipelines</h3>
<div class="informalexample">
<table class="listing_frame" border="0" cellpadding="0" cellspacing="0">
<tbody>
@@ -146,7 +146,7 @@ of 50.
<div class="refsynopsisdiv">
<h2>Synopsis</h2>
<div class="refsect2">
-<a name="id-1.2.38.7.5.1"></a><h3>Element Information</h3>
+<a name="id-1.2.40.7.5.1"></a><h3>Element Information</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
@@ -172,7 +172,7 @@ of 50.
</div>
<hr>
<div class="refsect2">
-<a name="id-1.2.38.7.5.2"></a><h3>Element Pads</h3>
+<a name="id-1.2.40.7.5.2"></a><h3>Element Pads</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
@@ -249,7 +249,7 @@ of 50.
<a name="GstVideoScaleMethod"></a><h3>enum GstVideoScaleMethod</h3>
<p>The videoscale method to use.</p>
<div class="refsect3">
-<a name="id-1.2.38.9.3.4"></a><h4>Members</h4>
+<a name="id-1.2.40.9.3.4"></a><h4>Members</h4>
<div class="informaltable"><table width="100%" border="0">
<colgroup>
<col width="300px" class="enum_members_name">
diff --git a/docs/plugins/html/gst-plugins-base-plugins-videotestsrc.html b/docs/plugins/html/gst-plugins-base-plugins-videotestsrc.html
index 2e799ea..9992e1b 100644
--- a/docs/plugins/html/gst-plugins-base-plugins-videotestsrc.html
+++ b/docs/plugins/html/gst-plugins-base-plugins-videotestsrc.html
@@ -171,7 +171,7 @@
of formats. The video test data produced can be controlled with the "pattern"
property.</p>
<div class="refsect2">
-<a name="id-1.2.39.7.3"></a><h3>Example launch line</h3>
+<a name="id-1.2.41.7.3"></a><h3>Example launch line</h3>
<div class="informalexample">
<table class="listing_frame" border="0" cellpadding="0" cellspacing="0">
<tbody>
@@ -187,7 +187,7 @@ property.</p>
<div class="refsynopsisdiv">
<h2>Synopsis</h2>
<div class="refsect2">
-<a name="id-1.2.39.7.4.1"></a><h3>Element Information</h3>
+<a name="id-1.2.41.7.4.1"></a><h3>Element Information</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
@@ -213,7 +213,7 @@ property.</p>
</div>
<hr>
<div class="refsect2">
-<a name="id-1.2.39.7.4.2"></a><h3>Element Pads</h3>
+<a name="id-1.2.41.7.4.2"></a><h3>Element Pads</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
@@ -277,7 +277,7 @@ parameters produce a grey pattern. Try 'videotestsrc
pattern=zone-plate kx2=20 ky2=20 kt=1' to produce something
interesting.</p>
<div class="refsect3">
-<a name="id-1.2.39.9.3.6"></a><h4>Members</h4>
+<a name="id-1.2.41.9.3.6"></a><h4>Members</h4>
<div class="informaltable"><table width="100%" border="0">
<colgroup>
<col width="300px" class="enum_members_name">
diff --git a/docs/plugins/html/gst-plugins-base-plugins-volume.html b/docs/plugins/html/gst-plugins-base-plugins-volume.html
index d2d0937..3d51b99 100644
--- a/docs/plugins/html/gst-plugins-base-plugins-volume.html
+++ b/docs/plugins/html/gst-plugins-base-plugins-volume.html
@@ -90,7 +90,7 @@ GstVolume implements
<a name="gst-plugins-base-plugins-volume.description"></a><h2>Description</h2>
<p>The volume element changes the volume of the audio data.</p>
<div class="refsect2">
-<a name="id-1.2.40.8.3"></a><h3>Example launch line</h3>
+<a name="id-1.2.42.8.3"></a><h3>Example launch line</h3>
<div class="informalexample">
<table class="listing_frame" border="0" cellpadding="0" cellspacing="0">
<tbody>
@@ -108,7 +108,7 @@ the same pipeline without the volume element.
<div class="refsynopsisdiv">
<h2>Synopsis</h2>
<div class="refsect2">
-<a name="id-1.2.40.8.4.1"></a><h3>Element Information</h3>
+<a name="id-1.2.42.8.4.1"></a><h3>Element Information</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
@@ -134,7 +134,7 @@ the same pipeline without the volume element.
</div>
<hr>
<div class="refsect2">
-<a name="id-1.2.40.8.4.2"></a><h3>Element Pads</h3>
+<a name="id-1.2.42.8.4.2"></a><h3>Element Pads</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
diff --git a/docs/plugins/html/gst-plugins-base-plugins-vorbisdec.html b/docs/plugins/html/gst-plugins-base-plugins-vorbisdec.html
index 4a84dc6..a489e54 100644
--- a/docs/plugins/html/gst-plugins-base-plugins-vorbisdec.html
+++ b/docs/plugins/html/gst-plugins-base-plugins-vorbisdec.html
@@ -60,7 +60,7 @@
<div class="refsynopsisdiv">
<h2>Synopsis</h2>
<div class="refsect2">
-<a name="id-1.2.41.6.2.1"></a><h3>Element Information</h3>
+<a name="id-1.2.43.6.2.1"></a><h3>Element Information</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
@@ -86,7 +86,7 @@
</div>
<hr>
<div class="refsect2">
-<a name="id-1.2.41.6.2.2"></a><h3>Element Pads</h3>
+<a name="id-1.2.43.6.2.2"></a><h3>Element Pads</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
diff --git a/docs/plugins/html/gst-plugins-base-plugins-vorbisenc.html b/docs/plugins/html/gst-plugins-base-plugins-vorbisenc.html
index f0d16e9..fe8e8ec 100644
--- a/docs/plugins/html/gst-plugins-base-plugins-vorbisenc.html
+++ b/docs/plugins/html/gst-plugins-base-plugins-vorbisenc.html
@@ -111,7 +111,7 @@ GstVorbisEnc implements
<div class="refsynopsisdiv">
<h2>Synopsis</h2>
<div class="refsect2">
-<a name="id-1.2.42.8.2.1"></a><h3>Element Information</h3>
+<a name="id-1.2.44.8.2.1"></a><h3>Element Information</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
@@ -137,7 +137,7 @@ GstVorbisEnc implements
</div>
<hr>
<div class="refsect2">
-<a name="id-1.2.42.8.2.2"></a><h3>Element Pads</h3>
+<a name="id-1.2.44.8.2.2"></a><h3>Element Pads</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
diff --git a/docs/plugins/html/gst-plugins-base-plugins-vorbisparse.html b/docs/plugins/html/gst-plugins-base-plugins-vorbisparse.html
index 961bd47..dc009da 100644
--- a/docs/plugins/html/gst-plugins-base-plugins-vorbisparse.html
+++ b/docs/plugins/html/gst-plugins-base-plugins-vorbisparse.html
@@ -60,7 +60,7 @@
<div class="refsynopsisdiv">
<h2>Synopsis</h2>
<div class="refsect2">
-<a name="id-1.2.43.6.2.1"></a><h3>Element Information</h3>
+<a name="id-1.2.45.6.2.1"></a><h3>Element Information</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
@@ -86,7 +86,7 @@
</div>
<hr>
<div class="refsect2">
-<a name="id-1.2.43.6.2.2"></a><h3>Element Pads</h3>
+<a name="id-1.2.45.6.2.2"></a><h3>Element Pads</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
diff --git a/docs/plugins/html/gst-plugins-base-plugins-vorbistag.html b/docs/plugins/html/gst-plugins-base-plugins-vorbistag.html
index d8c7668..5cee899 100644
--- a/docs/plugins/html/gst-plugins-base-plugins-vorbistag.html
+++ b/docs/plugins/html/gst-plugins-base-plugins-vorbistag.html
@@ -67,7 +67,7 @@ GstVorbisTag implements
<div class="refsynopsisdiv">
<h2>Synopsis</h2>
<div class="refsect2">
-<a name="id-1.2.44.7.2.1"></a><h3>Element Information</h3>
+<a name="id-1.2.46.7.2.1"></a><h3>Element Information</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
@@ -93,7 +93,7 @@ GstVorbisTag implements
</div>
<hr>
<div class="refsect2">
-<a name="id-1.2.44.7.2.2"></a><h3>Element Pads</h3>
+<a name="id-1.2.46.7.2.2"></a><h3>Element Pads</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
diff --git a/docs/plugins/html/gst-plugins-base-plugins-ximagesink.html b/docs/plugins/html/gst-plugins-base-plugins-ximagesink.html
index 729807e..1e2d14d 100644
--- a/docs/plugins/html/gst-plugins-base-plugins-ximagesink.html
+++ b/docs/plugins/html/gst-plugins-base-plugins-ximagesink.html
@@ -123,7 +123,7 @@ GstXImageSink implements
<div class="refsynopsisdiv">
<h2>Synopsis</h2>
<div class="refsect2">
-<a name="id-1.2.45.8.2.1"></a><h3>Element Information</h3>
+<a name="id-1.2.47.8.2.1"></a><h3>Element Information</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
@@ -149,7 +149,7 @@ GstXImageSink implements
</div>
<hr>
<div class="refsect2">
-<a name="id-1.2.45.8.2.2"></a><h3>Element Pads</h3>
+<a name="id-1.2.47.8.2.2"></a><h3>Element Pads</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
diff --git a/docs/plugins/html/gst-plugins-base-plugins-xvimagesink.html b/docs/plugins/html/gst-plugins-base-plugins-xvimagesink.html
index 0bde808..1213abe 100644
--- a/docs/plugins/html/gst-plugins-base-plugins-xvimagesink.html
+++ b/docs/plugins/html/gst-plugins-base-plugins-xvimagesink.html
@@ -175,7 +175,7 @@ GstXvImageSink implements
<div class="refsynopsisdiv">
<h2>Synopsis</h2>
<div class="refsect2">
-<a name="id-1.2.46.8.2.1"></a><h3>Element Information</h3>
+<a name="id-1.2.48.8.2.1"></a><h3>Element Information</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
@@ -201,7 +201,7 @@ GstXvImageSink implements
</div>
<hr>
<div class="refsect2">
-<a name="id-1.2.46.8.2.2"></a><h3>Element Pads</h3>
+<a name="id-1.2.48.8.2.2"></a><h3>Element Pads</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
diff --git a/docs/plugins/html/index.html b/docs/plugins/html/index.html
index 82df2c5..51193b4 100644
--- a/docs/plugins/html/index.html
+++ b/docs/plugins/html/index.html
@@ -15,7 +15,7 @@
<div>
<div><table class="navigation" id="top" width="100%" cellpadding="2" cellspacing="0"><tr><th valign="middle"><p class="title">GStreamer Base Plugins 1.0 Plugins Reference Manual</p></th></tr></table></div>
<div><p class="releaseinfo">
- for GStreamer Base Plugins 1.0 (1.3.2)
+ for GStreamer Base Plugins 1.0 (1.3.3)
The latest version of this documentation can be found on-line at
<a class="ulink" href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gst-plugins-base/html/" target="_top">http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gst-plugins-base/html/</a>.
</p></div>
@@ -95,6 +95,12 @@
<span class="refentrytitle"><a href="gst-plugins-base-plugins-playbin.html">playbin</a></span><span class="refpurpose"> — Autoplug and play media from an uri</span>
</dt>
<dt>
+<span class="refentrytitle"><a href="gst-plugins-base-plugins-playsink.html">playsink</a></span><span class="refpurpose"> — Convenience sink for multiple streams</span>
+</dt>
+<dt>
+<span class="refentrytitle"><a href="gst-plugins-base-plugins-streamsynchronizer.html">streamsynchronizer</a></span><span class="refpurpose"> — Synchronizes a group of streams to have equal durations and starting points</span>
+</dt>
+<dt>
<span class="refentrytitle"><a href="gst-plugins-base-plugins-subtitleoverlay.html">subtitleoverlay</a></span><span class="refpurpose"> — Overlays a video stream with subtitles</span>
</dt>
<dt>
diff --git a/docs/plugins/html/index.sgml b/docs/plugins/html/index.sgml
index 29a372e..dd01807 100644
--- a/docs/plugins/html/index.sgml
+++ b/docs/plugins/html/index.sgml
@@ -431,6 +431,44 @@
<ANCHOR id="GstPlayBin-text-tags-changed" href="gst-plugins-base-plugins-1.0/gst-plugins-base-plugins-playbin.html#GstPlayBin-text-tags-changed">
<ANCHOR id="GstPlayBin-video-changed" href="gst-plugins-base-plugins-1.0/gst-plugins-base-plugins-playbin.html#GstPlayBin-video-changed">
<ANCHOR id="GstPlayBin-video-tags-changed" href="gst-plugins-base-plugins-1.0/gst-plugins-base-plugins-playbin.html#GstPlayBin-video-tags-changed">
+<ANCHOR id="gst-plugins-base-plugins-playsink" href="gst-plugins-base-plugins-1.0/gst-plugins-base-plugins-playsink.html">
+<ANCHOR id="gst-plugins-base-plugins-playsink.properties" href="gst-plugins-base-plugins-1.0/gst-plugins-base-plugins-playsink.html#gst-plugins-base-plugins-playsink.properties">
+<ANCHOR id="gst-plugins-base-plugins-playsink.signals" href="gst-plugins-base-plugins-1.0/gst-plugins-base-plugins-playsink.html#gst-plugins-base-plugins-playsink.signals">
+<ANCHOR id="GstPlaySink" href="gst-plugins-base-plugins-1.0/gst-plugins-base-plugins-playsink.html#GstPlaySink">
+<ANCHOR id="gst-plugins-base-plugins-playsink.other" href="gst-plugins-base-plugins-1.0/gst-plugins-base-plugins-playsink.html#gst-plugins-base-plugins-playsink.other">
+<ANCHOR id="gst-plugins-base-plugins-playsink.object-hierarchy" href="gst-plugins-base-plugins-1.0/gst-plugins-base-plugins-playsink.html#gst-plugins-base-plugins-playsink.object-hierarchy">
+<ANCHOR id="gst-plugins-base-plugins-playsink.implemented-interfaces" href="gst-plugins-base-plugins-1.0/gst-plugins-base-plugins-playsink.html#gst-plugins-base-plugins-playsink.implemented-interfaces">
+<ANCHOR id="gst-plugins-base-plugins-playsink.description" href="gst-plugins-base-plugins-1.0/gst-plugins-base-plugins-playsink.html#gst-plugins-base-plugins-playsink.description">
+<ANCHOR id="gst-plugins-base-plugins-playsink.functions_details" href="gst-plugins-base-plugins-1.0/gst-plugins-base-plugins-playsink.html#gst-plugins-base-plugins-playsink.functions_details">
+<ANCHOR id="gst-plugins-base-plugins-playsink.other_details" href="gst-plugins-base-plugins-1.0/gst-plugins-base-plugins-playsink.html#gst-plugins-base-plugins-playsink.other_details">
+<ANCHOR id="GstPlaySink-struct" href="gst-plugins-base-plugins-1.0/gst-plugins-base-plugins-playsink.html#GstPlaySink-struct">
+<ANCHOR id="gst-plugins-base-plugins-playsink.property-details" href="gst-plugins-base-plugins-1.0/gst-plugins-base-plugins-playsink.html#gst-plugins-base-plugins-playsink.property-details">
+<ANCHOR id="GstPlaySink--audio-sink" href="gst-plugins-base-plugins-1.0/gst-plugins-base-plugins-playsink.html#GstPlaySink--audio-sink">
+<ANCHOR id="GstPlaySink--av-offset" href="gst-plugins-base-plugins-1.0/gst-plugins-base-plugins-playsink.html#GstPlaySink--av-offset">
+<ANCHOR id="GstPlaySink--flags" href="gst-plugins-base-plugins-1.0/gst-plugins-base-plugins-playsink.html#GstPlaySink--flags">
+<ANCHOR id="GstPlaySink--force-aspect-ratio" href="gst-plugins-base-plugins-1.0/gst-plugins-base-plugins-playsink.html#GstPlaySink--force-aspect-ratio">
+<ANCHOR id="GstPlaySink--mute" href="gst-plugins-base-plugins-1.0/gst-plugins-base-plugins-playsink.html#GstPlaySink--mute">
+<ANCHOR id="GstPlaySink--sample" href="gst-plugins-base-plugins-1.0/gst-plugins-base-plugins-playsink.html#GstPlaySink--sample">
+<ANCHOR id="GstPlaySink--send-event-mode" href="gst-plugins-base-plugins-1.0/gst-plugins-base-plugins-playsink.html#GstPlaySink--send-event-mode">
+<ANCHOR id="GstPlaySink--subtitle-encoding" href="gst-plugins-base-plugins-1.0/gst-plugins-base-plugins-playsink.html#GstPlaySink--subtitle-encoding">
+<ANCHOR id="GstPlaySink--subtitle-font-desc" href="gst-plugins-base-plugins-1.0/gst-plugins-base-plugins-playsink.html#GstPlaySink--subtitle-font-desc">
+<ANCHOR id="GstPlaySink--text-sink" href="gst-plugins-base-plugins-1.0/gst-plugins-base-plugins-playsink.html#GstPlaySink--text-sink">
+<ANCHOR id="GstPlaySink--video-sink" href="gst-plugins-base-plugins-1.0/gst-plugins-base-plugins-playsink.html#GstPlaySink--video-sink">
+<ANCHOR id="GstPlaySink--vis-plugin" href="gst-plugins-base-plugins-1.0/gst-plugins-base-plugins-playsink.html#GstPlaySink--vis-plugin">
+<ANCHOR id="GstPlaySink--volume" href="gst-plugins-base-plugins-1.0/gst-plugins-base-plugins-playsink.html#GstPlaySink--volume">
+<ANCHOR id="GstPlaySink--audio-filter" href="gst-plugins-base-plugins-1.0/gst-plugins-base-plugins-playsink.html#GstPlaySink--audio-filter">
+<ANCHOR id="GstPlaySink--video-filter" href="gst-plugins-base-plugins-1.0/gst-plugins-base-plugins-playsink.html#GstPlaySink--video-filter">
+<ANCHOR id="gst-plugins-base-plugins-playsink.signal-details" href="gst-plugins-base-plugins-1.0/gst-plugins-base-plugins-playsink.html#gst-plugins-base-plugins-playsink.signal-details">
+<ANCHOR id="GstPlaySink-convert-sample" href="gst-plugins-base-plugins-1.0/gst-plugins-base-plugins-playsink.html#GstPlaySink-convert-sample">
+<ANCHOR id="GstPlaySink-reconfigure" href="gst-plugins-base-plugins-1.0/gst-plugins-base-plugins-playsink.html#GstPlaySink-reconfigure">
+<ANCHOR id="gst-plugins-base-plugins-streamsynchronizer" href="gst-plugins-base-plugins-1.0/gst-plugins-base-plugins-streamsynchronizer.html">
+<ANCHOR id="GstStreamSynchronizer" href="gst-plugins-base-plugins-1.0/gst-plugins-base-plugins-streamsynchronizer.html#GstStreamSynchronizer">
+<ANCHOR id="gst-plugins-base-plugins-streamsynchronizer.other" href="gst-plugins-base-plugins-1.0/gst-plugins-base-plugins-streamsynchronizer.html#gst-plugins-base-plugins-streamsynchronizer.other">
+<ANCHOR id="gst-plugins-base-plugins-streamsynchronizer.object-hierarchy" href="gst-plugins-base-plugins-1.0/gst-plugins-base-plugins-streamsynchronizer.html#gst-plugins-base-plugins-streamsynchronizer.object-hierarchy">
+<ANCHOR id="gst-plugins-base-plugins-streamsynchronizer.description" href="gst-plugins-base-plugins-1.0/gst-plugins-base-plugins-streamsynchronizer.html#gst-plugins-base-plugins-streamsynchronizer.description">
+<ANCHOR id="gst-plugins-base-plugins-streamsynchronizer.functions_details" href="gst-plugins-base-plugins-1.0/gst-plugins-base-plugins-streamsynchronizer.html#gst-plugins-base-plugins-streamsynchronizer.functions_details">
+<ANCHOR id="gst-plugins-base-plugins-streamsynchronizer.other_details" href="gst-plugins-base-plugins-1.0/gst-plugins-base-plugins-streamsynchronizer.html#gst-plugins-base-plugins-streamsynchronizer.other_details">
+<ANCHOR id="GstStreamSynchronizer-struct" href="gst-plugins-base-plugins-1.0/gst-plugins-base-plugins-streamsynchronizer.html#GstStreamSynchronizer-struct">
<ANCHOR id="gst-plugins-base-plugins-subtitleoverlay" href="gst-plugins-base-plugins-1.0/gst-plugins-base-plugins-subtitleoverlay.html">
<ANCHOR id="gst-plugins-base-plugins-subtitleoverlay.properties" href="gst-plugins-base-plugins-1.0/gst-plugins-base-plugins-subtitleoverlay.html#gst-plugins-base-plugins-subtitleoverlay.properties">
<ANCHOR id="GstSubtitleOverlay" href="gst-plugins-base-plugins-1.0/gst-plugins-base-plugins-subtitleoverlay.html#GstSubtitleOverlay">
diff --git a/docs/plugins/inspect/plugin-adder.xml b/docs/plugins/inspect/plugin-adder.xml
index dd01fcb..bd4dec2 100644
--- a/docs/plugins/inspect/plugin-adder.xml
+++ b/docs/plugins/inspect/plugin-adder.xml
@@ -3,7 +3,7 @@
<description>Adds multiple streams</description>
<filename>../../gst/adder/.libs/libgstadder.so</filename>
<basename>libgstadder.so</basename>
- <version>1.3.2</version>
+ <version>1.3.3</version>
<license>LGPL</license>
<source>gst-plugins-base</source>
<package>GStreamer Base Plug-ins source release</package>
diff --git a/docs/plugins/inspect/plugin-alsa.xml b/docs/plugins/inspect/plugin-alsa.xml
index 6205c5b..ada1e87 100644
--- a/docs/plugins/inspect/plugin-alsa.xml
+++ b/docs/plugins/inspect/plugin-alsa.xml
@@ -3,7 +3,7 @@
<description>ALSA plugin library</description>
<filename>../../ext/alsa/.libs/libgstalsa.so</filename>
<basename>libgstalsa.so</basename>
- <version>1.3.2</version>
+ <version>1.3.3</version>
<license>LGPL</license>
<source>gst-plugins-base</source>
<package>GStreamer Base Plug-ins source release</package>
diff --git a/docs/plugins/inspect/plugin-app.xml b/docs/plugins/inspect/plugin-app.xml
index f34a88b..bee8375 100644
--- a/docs/plugins/inspect/plugin-app.xml
+++ b/docs/plugins/inspect/plugin-app.xml
@@ -3,7 +3,7 @@
<description>Elements used to communicate with applications</description>
<filename>../../gst/app/.libs/libgstapp.so</filename>
<basename>libgstapp.so</basename>
- <version>1.3.2</version>
+ <version>1.3.3</version>
<license>LGPL</license>
<source>gst-plugins-base</source>
<package>GStreamer Base Plug-ins source release</package>
diff --git a/docs/plugins/inspect/plugin-audioconvert.xml b/docs/plugins/inspect/plugin-audioconvert.xml
index 45ac04f..e1c3085 100644
--- a/docs/plugins/inspect/plugin-audioconvert.xml
+++ b/docs/plugins/inspect/plugin-audioconvert.xml
@@ -3,7 +3,7 @@
<description>Convert audio to different formats</description>
<filename>../../gst/audioconvert/.libs/libgstaudioconvert.so</filename>
<basename>libgstaudioconvert.so</basename>
- <version>1.3.2</version>
+ <version>1.3.3</version>
<license>LGPL</license>
<source>gst-plugins-base</source>
<package>GStreamer Base Plug-ins source release</package>
diff --git a/docs/plugins/inspect/plugin-audiorate.xml b/docs/plugins/inspect/plugin-audiorate.xml
index 8876133..e7b7953 100644
--- a/docs/plugins/inspect/plugin-audiorate.xml
+++ b/docs/plugins/inspect/plugin-audiorate.xml
@@ -3,7 +3,7 @@
<description>Adjusts audio frames</description>
<filename>../../gst/audiorate/.libs/libgstaudiorate.so</filename>
<basename>libgstaudiorate.so</basename>
- <version>1.3.2</version>
+ <version>1.3.3</version>
<license>LGPL</license>
<source>gst-plugins-base</source>
<package>GStreamer Base Plug-ins source release</package>
diff --git a/docs/plugins/inspect/plugin-audioresample.xml b/docs/plugins/inspect/plugin-audioresample.xml
index 2c6a29c..ae2dec8 100644
--- a/docs/plugins/inspect/plugin-audioresample.xml
+++ b/docs/plugins/inspect/plugin-audioresample.xml
@@ -3,7 +3,7 @@
<description>Resamples audio</description>
<filename>../../gst/audioresample/.libs/libgstaudioresample.so</filename>
<basename>libgstaudioresample.so</basename>
- <version>1.3.2</version>
+ <version>1.3.3</version>
<license>LGPL</license>
<source>gst-plugins-base</source>
<package>GStreamer Base Plug-ins source release</package>
diff --git a/docs/plugins/inspect/plugin-audiotestsrc.xml b/docs/plugins/inspect/plugin-audiotestsrc.xml
index 372b0e8..625d183 100644
--- a/docs/plugins/inspect/plugin-audiotestsrc.xml
+++ b/docs/plugins/inspect/plugin-audiotestsrc.xml
@@ -3,7 +3,7 @@
<description>Creates audio test signals of given frequency and volume</description>
<filename>../../gst/audiotestsrc/.libs/libgstaudiotestsrc.so</filename>
<basename>libgstaudiotestsrc.so</basename>
- <version>1.3.2</version>
+ <version>1.3.3</version>
<license>LGPL</license>
<source>gst-plugins-base</source>
<package>GStreamer Base Plug-ins source release</package>
diff --git a/docs/plugins/inspect/plugin-cdparanoia.xml b/docs/plugins/inspect/plugin-cdparanoia.xml
index 09074b9..321968f 100644
--- a/docs/plugins/inspect/plugin-cdparanoia.xml
+++ b/docs/plugins/inspect/plugin-cdparanoia.xml
@@ -3,7 +3,7 @@
<description>Read audio from CD in paranoid mode</description>
<filename>../../ext/cdparanoia/.libs/libgstcdparanoia.so</filename>
<basename>libgstcdparanoia.so</basename>
- <version>1.3.2</version>
+ <version>1.3.3</version>
<license>LGPL</license>
<source>gst-plugins-base</source>
<package>GStreamer Base Plug-ins source release</package>
diff --git a/docs/plugins/inspect/plugin-encoding.xml b/docs/plugins/inspect/plugin-encoding.xml
index 2304791..cc947b1 100644
--- a/docs/plugins/inspect/plugin-encoding.xml
+++ b/docs/plugins/inspect/plugin-encoding.xml
@@ -3,7 +3,7 @@
<description>various encoding-related elements</description>
<filename>../../gst/encoding/.libs/libgstencodebin.so</filename>
<basename>libgstencodebin.so</basename>
- <version>1.3.2</version>
+ <version>1.3.3</version>
<license>LGPL</license>
<source>gst-plugins-base</source>
<package>GStreamer Base Plug-ins source release</package>
diff --git a/docs/plugins/inspect/plugin-gio.xml b/docs/plugins/inspect/plugin-gio.xml
index 5259b37..52b6a53 100644
--- a/docs/plugins/inspect/plugin-gio.xml
+++ b/docs/plugins/inspect/plugin-gio.xml
@@ -3,7 +3,7 @@
<description>GIO elements</description>
<filename>../../gst/gio/.libs/libgstgio.so</filename>
<basename>libgstgio.so</basename>
- <version>1.3.2</version>
+ <version>1.3.3</version>
<license>LGPL</license>
<source>gst-plugins-base</source>
<package>GStreamer Base Plug-ins source release</package>
diff --git a/docs/plugins/inspect/plugin-ivorbisdec.xml b/docs/plugins/inspect/plugin-ivorbisdec.xml
index 1580b55..c72a084 100644
--- a/docs/plugins/inspect/plugin-ivorbisdec.xml
+++ b/docs/plugins/inspect/plugin-ivorbisdec.xml
@@ -3,7 +3,7 @@
<description>Vorbis Tremor decoder</description>
<filename>../../ext/vorbis/.libs/libgstivorbisdec.so</filename>
<basename>libgstivorbisdec.so</basename>
- <version>1.3.2</version>
+ <version>1.3.3</version>
<license>LGPL</license>
<source>gst-plugins-base</source>
<package>GStreamer Base Plug-ins source release</package>
diff --git a/docs/plugins/inspect/plugin-libvisual.xml b/docs/plugins/inspect/plugin-libvisual.xml
index b115e54..65124ba 100644
--- a/docs/plugins/inspect/plugin-libvisual.xml
+++ b/docs/plugins/inspect/plugin-libvisual.xml
@@ -3,7 +3,7 @@
<description>libvisual visualization plugins</description>
<filename>../../ext/libvisual/.libs/libgstlibvisual.so</filename>
<basename>libgstlibvisual.so</basename>
- <version>1.3.2</version>
+ <version>1.3.3</version>
<license>LGPL</license>
<source>gst-plugins-base</source>
<package>GStreamer Base Plug-ins source release</package>
diff --git a/docs/plugins/inspect/plugin-ogg.xml b/docs/plugins/inspect/plugin-ogg.xml
index f04c4b5..abbd718 100644
--- a/docs/plugins/inspect/plugin-ogg.xml
+++ b/docs/plugins/inspect/plugin-ogg.xml
@@ -3,7 +3,7 @@
<description>ogg stream manipulation (info about ogg: http://xiph.org)</description>
<filename>../../ext/ogg/.libs/libgstogg.so</filename>
<basename>libgstogg.so</basename>
- <version>1.3.2</version>
+ <version>1.3.3</version>
<license>LGPL</license>
<source>gst-plugins-base</source>
<package>GStreamer Base Plug-ins source release</package>
diff --git a/docs/plugins/inspect/plugin-pango.xml b/docs/plugins/inspect/plugin-pango.xml
index 633a407..bf7c61b 100644
--- a/docs/plugins/inspect/plugin-pango.xml
+++ b/docs/plugins/inspect/plugin-pango.xml
@@ -3,7 +3,7 @@
<description>Pango-based text rendering and overlay</description>
<filename>../../ext/pango/.libs/libgstpango.so</filename>
<basename>libgstpango.so</basename>
- <version>1.3.2</version>
+ <version>1.3.3</version>
<license>LGPL</license>
<source>gst-plugins-base</source>
<package>GStreamer Base Plug-ins source release</package>
diff --git a/docs/plugins/inspect/plugin-playback.xml b/docs/plugins/inspect/plugin-playback.xml
index 7fc78e7..55e1b21 100644
--- a/docs/plugins/inspect/plugin-playback.xml
+++ b/docs/plugins/inspect/plugin-playback.xml
@@ -3,7 +3,7 @@
<description>various playback elements</description>
<filename>../../gst/playback/.libs/libgstplayback.so</filename>
<basename>libgstplayback.so</basename>
- <version>1.3.2</version>
+ <version>1.3.3</version>
<license>LGPL</license>
<source>gst-plugins-base</source>
<package>GStreamer Base Plug-ins source release</package>
diff --git a/docs/plugins/inspect/plugin-subparse.xml b/docs/plugins/inspect/plugin-subparse.xml
index 5caf4c4..547aad9 100644
--- a/docs/plugins/inspect/plugin-subparse.xml
+++ b/docs/plugins/inspect/plugin-subparse.xml
@@ -3,7 +3,7 @@
<description>Subtitle parsing</description>
<filename>../../gst/subparse/.libs/libgstsubparse.so</filename>
<basename>libgstsubparse.so</basename>
- <version>1.3.2</version>
+ <version>1.3.3</version>
<license>LGPL</license>
<source>gst-plugins-base</source>
<package>GStreamer Base Plug-ins source release</package>
diff --git a/docs/plugins/inspect/plugin-tcp.xml b/docs/plugins/inspect/plugin-tcp.xml
index a613db3..a62a667 100644
--- a/docs/plugins/inspect/plugin-tcp.xml
+++ b/docs/plugins/inspect/plugin-tcp.xml
@@ -3,7 +3,7 @@
<description>transfer data over the network via TCP</description>
<filename>../../gst/tcp/.libs/libgsttcp.so</filename>
<basename>libgsttcp.so</basename>
- <version>1.3.2</version>
+ <version>1.3.3</version>
<license>LGPL</license>
<source>gst-plugins-base</source>
<package>GStreamer Base Plug-ins source release</package>
diff --git a/docs/plugins/inspect/plugin-theora.xml b/docs/plugins/inspect/plugin-theora.xml
index 0453e21..d5e7361 100644
--- a/docs/plugins/inspect/plugin-theora.xml
+++ b/docs/plugins/inspect/plugin-theora.xml
@@ -3,7 +3,7 @@
<description>Theora plugin library</description>
<filename>../../ext/theora/.libs/libgsttheora.so</filename>
<basename>libgsttheora.so</basename>
- <version>1.3.2</version>
+ <version>1.3.3</version>
<license>LGPL</license>
<source>gst-plugins-base</source>
<package>GStreamer Base Plug-ins source release</package>
diff --git a/docs/plugins/inspect/plugin-typefindfunctions.xml b/docs/plugins/inspect/plugin-typefindfunctions.xml
index 5ae1041..39561c1 100644
--- a/docs/plugins/inspect/plugin-typefindfunctions.xml
+++ b/docs/plugins/inspect/plugin-typefindfunctions.xml
@@ -3,7 +3,7 @@
<description>default typefind functions</description>
<filename>../../gst/typefind/.libs/libgsttypefindfunctions.so</filename>
<basename>libgsttypefindfunctions.so</basename>
- <version>1.3.2</version>
+ <version>1.3.3</version>
<license>LGPL</license>
<source>gst-plugins-base</source>
<package>GStreamer Base Plug-ins source release</package>
diff --git a/docs/plugins/inspect/plugin-videoconvert.xml b/docs/plugins/inspect/plugin-videoconvert.xml
index 946ea14..0468c2e 100644
--- a/docs/plugins/inspect/plugin-videoconvert.xml
+++ b/docs/plugins/inspect/plugin-videoconvert.xml
@@ -3,7 +3,7 @@
<description>Colorspace conversion</description>
<filename>../../gst/videoconvert/.libs/libgstvideoconvert.so</filename>
<basename>libgstvideoconvert.so</basename>
- <version>1.3.2</version>
+ <version>1.3.3</version>
<license>LGPL</license>
<source>gst-plugins-base</source>
<package>GStreamer Base Plug-ins source release</package>
diff --git a/docs/plugins/inspect/plugin-videorate.xml b/docs/plugins/inspect/plugin-videorate.xml
index 9fdc421..361fe35 100644
--- a/docs/plugins/inspect/plugin-videorate.xml
+++ b/docs/plugins/inspect/plugin-videorate.xml
@@ -3,7 +3,7 @@
<description>Adjusts video frames</description>
<filename>../../gst/videorate/.libs/libgstvideorate.so</filename>
<basename>libgstvideorate.so</basename>
- <version>1.3.2</version>
+ <version>1.3.3</version>
<license>LGPL</license>
<source>gst-plugins-base</source>
<package>GStreamer Base Plug-ins source release</package>
diff --git a/docs/plugins/inspect/plugin-videoscale.xml b/docs/plugins/inspect/plugin-videoscale.xml
index 5141d22..1936599 100644
--- a/docs/plugins/inspect/plugin-videoscale.xml
+++ b/docs/plugins/inspect/plugin-videoscale.xml
@@ -3,7 +3,7 @@
<description>Resizes video</description>
<filename>../../gst/videoscale/.libs/libgstvideoscale.so</filename>
<basename>libgstvideoscale.so</basename>
- <version>1.3.2</version>
+ <version>1.3.3</version>
<license>LGPL</license>
<source>gst-plugins-base</source>
<package>GStreamer Base Plug-ins source release</package>
diff --git a/docs/plugins/inspect/plugin-videotestsrc.xml b/docs/plugins/inspect/plugin-videotestsrc.xml
index 63ab6a2..e52b664 100644
--- a/docs/plugins/inspect/plugin-videotestsrc.xml
+++ b/docs/plugins/inspect/plugin-videotestsrc.xml
@@ -3,7 +3,7 @@
<description>Creates a test video stream</description>
<filename>../../gst/videotestsrc/.libs/libgstvideotestsrc.so</filename>
<basename>libgstvideotestsrc.so</basename>
- <version>1.3.2</version>
+ <version>1.3.3</version>
<license>LGPL</license>
<source>gst-plugins-base</source>
<package>GStreamer Base Plug-ins source release</package>
diff --git a/docs/plugins/inspect/plugin-volume.xml b/docs/plugins/inspect/plugin-volume.xml
index 4076330..fb60313 100644
--- a/docs/plugins/inspect/plugin-volume.xml
+++ b/docs/plugins/inspect/plugin-volume.xml
@@ -3,7 +3,7 @@
<description>plugin for controlling audio volume</description>
<filename>../../gst/volume/.libs/libgstvolume.so</filename>
<basename>libgstvolume.so</basename>
- <version>1.3.2</version>
+ <version>1.3.3</version>
<license>LGPL</license>
<source>gst-plugins-base</source>
<package>GStreamer Base Plug-ins source release</package>
diff --git a/docs/plugins/inspect/plugin-vorbis.xml b/docs/plugins/inspect/plugin-vorbis.xml
index 28c9810..2b3cc34 100644
--- a/docs/plugins/inspect/plugin-vorbis.xml
+++ b/docs/plugins/inspect/plugin-vorbis.xml
@@ -3,7 +3,7 @@
<description>Vorbis plugin library</description>
<filename>../../ext/vorbis/.libs/libgstvorbis.so</filename>
<basename>libgstvorbis.so</basename>
- <version>1.3.2</version>
+ <version>1.3.3</version>
<license>LGPL</license>
<source>gst-plugins-base</source>
<package>GStreamer Base Plug-ins source release</package>
diff --git a/docs/plugins/inspect/plugin-ximagesink.xml b/docs/plugins/inspect/plugin-ximagesink.xml
index 5499439..e6b6d89 100644
--- a/docs/plugins/inspect/plugin-ximagesink.xml
+++ b/docs/plugins/inspect/plugin-ximagesink.xml
@@ -3,7 +3,7 @@
<description>X11 video output element based on standard Xlib calls</description>
<filename>../../sys/ximage/.libs/libgstximagesink.so</filename>
<basename>libgstximagesink.so</basename>
- <version>1.3.2</version>
+ <version>1.3.3</version>
<license>LGPL</license>
<source>gst-plugins-base</source>
<package>GStreamer Base Plug-ins source release</package>
diff --git a/docs/plugins/inspect/plugin-xvimagesink.xml b/docs/plugins/inspect/plugin-xvimagesink.xml
index b30fc82..d67c29d 100644
--- a/docs/plugins/inspect/plugin-xvimagesink.xml
+++ b/docs/plugins/inspect/plugin-xvimagesink.xml
@@ -3,7 +3,7 @@
<description>XFree86 video output plugin using Xv extension</description>
<filename>../../sys/xvimage/.libs/libgstxvimagesink.so</filename>
<basename>libgstxvimagesink.so</basename>
- <version>1.3.2</version>
+ <version>1.3.3</version>
<license>LGPL</license>
<source>gst-plugins-base</source>
<package>GStreamer Base Plug-ins source release</package>
diff --git a/ext/alsa/gstalsasink.c b/ext/alsa/gstalsasink.c
index e5c1010..7d7b443 100644
--- a/ext/alsa/gstalsasink.c
+++ b/ext/alsa/gstalsasink.c
@@ -280,7 +280,9 @@ gst_alsasink_getcaps (GstBaseSink * bsink, GstCaps * filter)
GstAlsaSink *sink = GST_ALSA_SINK (bsink);
GstCaps *caps, *templ_caps;
+ GST_OBJECT_LOCK (sink);
if (sink->handle == NULL) {
+ GST_OBJECT_UNLOCK (sink);
GST_DEBUG_OBJECT (sink, "device not open, using template caps");
return NULL; /* base class will get template caps for us */
}
@@ -289,20 +291,26 @@ gst_alsasink_getcaps (GstBaseSink * bsink, GstCaps * filter)
if (filter) {
caps = gst_caps_intersect_full (filter, sink->cached_caps,
GST_CAPS_INTERSECT_FIRST);
+ GST_OBJECT_UNLOCK (sink);
GST_LOG_OBJECT (sink, "Returning cached caps %" GST_PTR_FORMAT " with "
"filter %" GST_PTR_FORMAT " applied: %" GST_PTR_FORMAT,
sink->cached_caps, filter, caps);
return caps;
} else {
- GST_LOG_OBJECT (sink, "Returning cached caps %" GST_PTR_FORMAT,
- sink->cached_caps);
- return gst_caps_ref (sink->cached_caps);
+ caps = gst_caps_ref (sink->cached_caps);
+ GST_OBJECT_UNLOCK (sink);
+ GST_LOG_OBJECT (sink, "Returning cached caps %" GST_PTR_FORMAT, caps);
+ return caps;
}
}
element_class = GST_ELEMENT_GET_CLASS (sink);
pad_template = gst_element_class_get_pad_template (element_class, "sink");
- g_return_val_if_fail (pad_template != NULL, NULL);
+ if (pad_template == NULL) {
+ GST_OBJECT_UNLOCK (sink);
+ g_assert_not_reached ();
+ return NULL;
+ }
templ_caps = gst_pad_template_get_caps (pad_template);
caps = gst_alsa_probe_supported_formats (GST_OBJECT (sink), sink->device,
@@ -313,6 +321,8 @@ gst_alsasink_getcaps (GstBaseSink * bsink, GstCaps * filter)
sink->cached_caps = gst_caps_ref (caps);
}
+ GST_OBJECT_UNLOCK (sink);
+
GST_INFO_OBJECT (sink, "returning caps %" GST_PTR_FORMAT, caps);
if (filter) {
@@ -900,7 +910,8 @@ gst_alsasink_prepare (GstAudioSink * asink, GstAudioRingBufferSpec * spec)
if (chmap && chmap->channels == alsa->channels) {
GstAudioChannelPosition pos[8];
if (alsa_chmap_to_channel_positions (chmap, pos))
- gst_audio_ring_buffer_set_channel_positions (GST_AUDIO_BASE_SINK (alsa)->ringbuffer, pos);
+ gst_audio_ring_buffer_set_channel_positions (GST_AUDIO_BASE_SINK
+ (alsa)->ringbuffer, pos);
}
free (chmap);
}
@@ -953,11 +964,13 @@ gst_alsasink_close (GstAudioSink * asink)
{
GstAlsaSink *alsa = GST_ALSA_SINK (asink);
+ GST_OBJECT_LOCK (asink);
if (alsa->handle) {
snd_pcm_close (alsa->handle);
alsa->handle = NULL;
}
gst_caps_replace (&alsa->cached_caps, NULL);
+ GST_OBJECT_UNLOCK (asink);
return TRUE;
}
diff --git a/ext/ogg/gstoggdemux.c b/ext/ogg/gstoggdemux.c
index 902410b..1ea27a1 100644
--- a/ext/ogg/gstoggdemux.c
+++ b/ext/ogg/gstoggdemux.c
@@ -144,7 +144,6 @@ static GstOggPad *gst_ogg_chain_get_stream (GstOggChain * chain,
static GstFlowReturn gst_ogg_demux_combine_flows (GstOggDemux * ogg,
GstOggPad * pad, GstFlowReturn ret);
static void gst_ogg_demux_sync_streams (GstOggDemux * ogg);
-static gboolean gst_ogg_demux_check_eos (GstOggDemux * ogg);
static GstCaps *gst_ogg_demux_set_header_on_caps (GstOggDemux * ogg,
GstCaps * caps, GList * headers);
@@ -498,11 +497,17 @@ gst_ogg_demux_chain_peer (GstOggPad * pad, ogg_packet * packet,
gboolean delta_unit = FALSE;
gboolean is_header;
- cret = GST_FLOW_OK;
-
+ ret = cret = GST_FLOW_OK;
GST_DEBUG_OBJECT (pad, "Chaining %d %d %" GST_TIME_FORMAT " %d %p",
ogg->pullmode, ogg->push_state, GST_TIME_ARGS (ogg->push_time_length),
ogg->push_disable_seeking, ogg->building_chain);
+
+ if (G_UNLIKELY (pad->is_eos)) {
+ GST_DEBUG_OBJECT (pad, "Skipping packet on pad that is eos");
+ ret = GST_FLOW_EOS;
+ goto combine;
+ }
+
GST_PUSH_LOCK (ogg);
if (!ogg->pullmode && ogg->push_state == PUSH_PLAYING
&& ogg->push_time_length == GST_CLOCK_TIME_NONE
@@ -697,21 +702,18 @@ gst_ogg_demux_chain_peer (GstOggPad * pad, ogg_packet * packet,
gst_buffer_unref (buf);
}
buf = NULL;
-
- /* combine flows */
- cret = gst_ogg_demux_combine_flows (ogg, pad, ret);
}
/* we're done with skeleton stuff */
if (pad->map.is_skeleton)
- goto done;
+ goto combine;
/* check if valid granulepos, then we can calculate the current
* position. We know the granule for each packet but we only want to update
* the position when we have a valid granulepos on the packet because else
* our time jumps around for the different streams. */
if (packet->granulepos < 0)
- goto done;
+ goto combine;
/* convert to time */
current_time = gst_ogg_stream_get_end_time_for_granulepos (&pad->map,
@@ -734,7 +736,7 @@ gst_ogg_demux_chain_peer (GstOggPad * pad, ogg_packet * packet,
GST_TIME_ARGS (current_time));
/* check stream eos */
- if (!delta_unit &&
+ if (!pad->is_eos && !delta_unit &&
((ogg->segment.rate > 0.0 &&
ogg->segment.stop != GST_CLOCK_TIME_NONE &&
current_time >= ogg->segment.stop) ||
@@ -742,11 +744,15 @@ gst_ogg_demux_chain_peer (GstOggPad * pad, ogg_packet * packet,
GST_DEBUG_OBJECT (ogg, "marking pad %p EOS", pad);
pad->is_eos = TRUE;
- if (cret == GST_FLOW_OK && gst_ogg_demux_check_eos (ogg)) {
- cret = GST_FLOW_EOS;
+ if (ret == GST_FLOW_OK) {
+ ret = GST_FLOW_EOS;
}
}
+combine:
+ /* combine flows */
+ cret = gst_ogg_demux_combine_flows (ogg, pad, ret);
+
done:
if (buf)
gst_buffer_unref (buf);
@@ -2072,6 +2078,7 @@ gst_ogg_demux_init (GstOggDemux * ogg)
ogg->newsegment = NULL;
ogg->chunk_size = CHUNKSIZE;
+ ogg->flowcombiner = gst_flow_combiner_new ();
}
static void
@@ -2089,6 +2096,8 @@ gst_ogg_demux_finalize (GObject * object)
if (ogg->newsegment)
gst_event_unref (ogg->newsegment);
+ gst_flow_combiner_free (ogg->flowcombiner);
+
G_OBJECT_CLASS (parent_class)->finalize (object);
}
@@ -2152,11 +2161,15 @@ gst_ogg_demux_sink_event (GstPad * pad, GstObject * parent, GstEvent * event)
ogg->push_byte_offset = segment.start;
ogg->push_last_seek_offset = segment.start;
- if (gst_event_get_seqnum (event) == ogg->push_seek_seqnum)
+ if (gst_event_get_seqnum (event) == ogg->push_seek_seqnum) {
+ GstSeekType stop_type = GST_SEEK_TYPE_NONE;
+ if (ogg->push_seek_time_original_stop != -1)
+ stop_type = GST_SEEK_TYPE_SET;
gst_segment_do_seek (&ogg->segment, ogg->push_seek_rate,
GST_FORMAT_TIME, ogg->push_seek_flags, GST_SEEK_TYPE_SET,
- ogg->push_seek_time_original_target, GST_SEEK_TYPE_SET,
+ ogg->push_seek_time_original_target, stop_type,
ogg->push_seek_time_original_stop, &update);
+ }
GST_PUSH_UNLOCK (ogg);
} else {
@@ -2540,6 +2553,8 @@ gst_ogg_demux_deactivate_current_chain (GstOggDemux * ogg)
/* deactivate first */
gst_pad_set_active (GST_PAD_CAST (pad), FALSE);
+ gst_flow_combiner_remove_pad (ogg->flowcombiner, GST_PAD_CAST (pad));
+
gst_element_remove_pad (GST_ELEMENT (ogg), GST_PAD_CAST (pad));
pad->added = FALSE;
@@ -2692,6 +2707,7 @@ gst_ogg_demux_activate_chain (GstOggDemux * ogg, GstOggChain * chain,
gst_element_add_pad (GST_ELEMENT (ogg), GST_PAD_CAST (pad));
pad->added = TRUE;
+ gst_flow_combiner_add_pad (ogg->flowcombiner, GST_PAD_CAST (pad));
}
/* prefer the index bitrate over the ones encoded in the streams */
ogg->bitrate = (idx_bitrate ? idx_bitrate : bitrate);
@@ -3473,11 +3489,16 @@ gst_ogg_demux_perform_seek_push (GstOggDemux * ogg, GstEvent * event)
goto error;
}
- if (start_type != GST_SEEK_TYPE_SET || stop_type != GST_SEEK_TYPE_SET) {
+ if (start_type != GST_SEEK_TYPE_SET) {
GST_DEBUG_OBJECT (ogg, "can only seek to a SET target");
goto error;
}
+ /* If stop is unset, make sure it is -1, as this value will be tested
+ later to check whether stop is set or not */
+ if (stop_type == GST_SEEK_TYPE_NONE)
+ stop = -1;
+
if (!(flags & GST_SEEK_FLAG_FLUSH)) {
GST_DEBUG_OBJECT (ogg, "can only do flushing seeks");
goto error;
@@ -4322,58 +4343,11 @@ static GstFlowReturn
gst_ogg_demux_combine_flows (GstOggDemux * ogg, GstOggPad * pad,
GstFlowReturn ret)
{
- GstOggChain *chain;
-
/* store the value */
pad->last_ret = ret;
+ pad->is_eos = (ret == GST_FLOW_EOS);
- /* any other error that is not-linked can be returned right
- * away */
- if (ret != GST_FLOW_NOT_LINKED)
- goto done;
-
- /* only return NOT_LINKED if all other pads returned NOT_LINKED */
- chain = ogg->current_chain;
- if (chain) {
- gint i;
-
- for (i = 0; i < chain->streams->len; i++) {
- GstOggPad *opad = g_array_index (chain->streams, GstOggPad *, i);
-
- ret = opad->last_ret;
- /* some other return value (must be SUCCESS but we can return
- * other values as well) */
- if (ret != GST_FLOW_NOT_LINKED)
- goto done;
- }
- /* if we get here, all other pads were unlinked and we return
- * NOT_LINKED then */
- }
-done:
- return ret;
-}
-
-/* returns TRUE if all streams in current chain reached EOS, FALSE otherwise */
-static gboolean
-gst_ogg_demux_check_eos (GstOggDemux * ogg)
-{
- GstOggChain *chain;
- gboolean eos = TRUE;
-
- chain = ogg->current_chain;
- if (G_LIKELY (chain)) {
- gint i;
-
- for (i = 0; i < chain->streams->len; i++) {
- GstOggPad *opad = g_array_index (chain->streams, GstOggPad *, i);
-
- eos = eos && opad->is_eos;
- }
- } else {
- eos = FALSE;
- }
-
- return eos;
+ return gst_flow_combiner_update_flow (ogg->flowcombiner, ret);
}
static GstFlowReturn
@@ -4405,17 +4379,10 @@ gst_ogg_demux_loop_forward (GstOggDemux * ogg)
}
ret = gst_ogg_demux_chain (ogg->sinkpad, GST_OBJECT_CAST (ogg), buffer);
- if (ret != GST_FLOW_OK) {
+ if (ret != GST_FLOW_OK && ret != GST_FLOW_EOS) {
GST_LOG_OBJECT (ogg, "Failed demux_chain");
- goto done;
}
- /* check for the end of the segment */
- if (gst_ogg_demux_check_eos (ogg)) {
- GST_LOG_OBJECT (ogg, "got EOS");
- ret = GST_FLOW_EOS;
- goto done;
- }
done:
return ret;
}
@@ -4455,15 +4422,7 @@ gst_ogg_demux_loop_reverse (GstOggDemux * ogg)
}
ret = gst_ogg_demux_handle_page (ogg, &page);
- if (ret != GST_FLOW_OK)
- goto done;
- /* check for the end of the segment */
- if (gst_ogg_demux_check_eos (ogg)) {
- GST_LOG_OBJECT (ogg, "got EOS");
- ret = GST_FLOW_EOS;
- goto done;
- }
done:
return ret;
}
diff --git a/ext/ogg/gstoggdemux.h b/ext/ogg/gstoggdemux.h
index 4b9a32c..d679f64 100644
--- a/ext/ogg/gstoggdemux.h
+++ b/ext/ogg/gstoggdemux.h
@@ -25,6 +25,7 @@
#include <ogg/ogg.h>
#include <gst/gst.h>
+#include <gst/base/gstflowcombiner.h>
#include "gstoggstream.h"
@@ -127,6 +128,8 @@ struct _GstOggDemux
GstPad *sinkpad;
+ GstFlowCombiner *flowcombiner;
+
gint64 length;
gint64 read_offset;
gint64 offset;
diff --git a/ext/ogg/gstoggstream.c b/ext/ogg/gstoggstream.c
index a199ffe..d0d50d9 100644
--- a/ext/ogg/gstoggstream.c
+++ b/ext/ogg/gstoggstream.c
@@ -2467,7 +2467,7 @@ const GstOggMap mappers[] = {
granulepos_to_granule_opus,
granule_to_granulepos_default,
NULL,
- NULL,
+ is_packet_keyframe_true,
is_header_opus,
packet_duration_opus,
NULL,
diff --git a/ext/theora/gsttheoraenc.c b/ext/theora/gsttheoraenc.c
index 48b3533..126c5e3 100644
--- a/ext/theora/gsttheoraenc.c
+++ b/ext/theora/gsttheoraenc.c
@@ -886,8 +886,6 @@ theora_enc_handle_frame (GstVideoEncoder * benc, GstVideoCodecFrame * frame)
running_time =
gst_segment_to_running_time (&GST_VIDEO_ENCODER_INPUT_SEGMENT (enc),
GST_FORMAT_TIME, timestamp);
- g_return_val_if_fail (running_time >= 0 || timestamp == GST_CLOCK_TIME_NONE,
- GST_FLOW_ERROR);
GST_OBJECT_LOCK (enc);
if (enc->bitrate_changed) {
diff --git a/ext/vorbis/gstvorbisenc.c b/ext/vorbis/gstvorbisenc.c
index 6579321..824390e 100644
--- a/ext/vorbis/gstvorbisenc.c
+++ b/ext/vorbis/gstvorbisenc.c
@@ -655,6 +655,7 @@ _gst_caps_set_buffer_array (GstCaps * caps, const gchar * field,
buf = va_arg (va, GstBuffer *);
}
+ va_end (va);
gst_structure_take_value (structure, field, &array);
diff --git a/gst-libs/gst/allocators/gstdmabuf.c b/gst-libs/gst/allocators/gstdmabuf.c
index 046b38b..9cf05cb 100644
--- a/gst-libs/gst/allocators/gstdmabuf.c
+++ b/gst-libs/gst/allocators/gstdmabuf.c
@@ -97,7 +97,7 @@ gst_dmabuf_mem_map (GstMemory * gmem, gsize maxsize, GstMapFlags flags)
if (mem->data) {
/* only return address if mapping flags are a subset
* of the previous flags */
- if (mem->mmapping_flags & prot) {
+ if ((mem->mmapping_flags & prot) == prot) {
ret = mem->data;
mem->mmap_count++;
}
diff --git a/gst-libs/gst/app/gstappsrc.c b/gst-libs/gst/app/gstappsrc.c
index a3be774..d529bfd 100644
--- a/gst-libs/gst/app/gstappsrc.c
+++ b/gst-libs/gst/app/gstappsrc.c
@@ -214,6 +214,8 @@ static void gst_app_src_set_property (GObject * object, guint prop_id,
static void gst_app_src_get_property (GObject * object, guint prop_id,
GValue * value, GParamSpec * pspec);
+static gboolean gst_app_src_send_event (GstElement * element, GstEvent * event);
+
static void gst_app_src_set_latencies (GstAppSrc * appsrc,
gboolean do_min, guint64 min, gboolean do_max, guint64 max);
@@ -479,6 +481,8 @@ gst_app_src_class_init (GstAppSrcClass * klass)
gst_element_class_add_pad_template (element_class,
gst_static_pad_template_get (&gst_app_src_template));
+ element_class->send_event = gst_app_src_send_event;
+
basesrc_class->negotiate = gst_app_src_negotiate;
basesrc_class->get_caps = gst_app_src_internal_get_caps;
basesrc_class->create = gst_app_src_create;
@@ -701,6 +705,23 @@ gst_app_src_get_property (GObject * object, guint prop_id, GValue * value,
}
static gboolean
+gst_app_src_send_event (GstElement * element, GstEvent * event)
+{
+ GstAppSrc *appsrc = GST_APP_SRC_CAST (element);
+
+ switch (GST_EVENT_TYPE (event)) {
+ case GST_EVENT_FLUSH_STOP:
+ gst_app_src_flush_queued (appsrc);
+ break;
+ default:
+ break;
+ }
+
+ return GST_CALL_PARENT_WITH_DEFAULT (GST_ELEMENT_CLASS, send_event, (element,
+ event), FALSE);
+}
+
+static gboolean
gst_app_src_unlock (GstBaseSrc * bsrc)
{
GstAppSrc *appsrc = GST_APP_SRC_CAST (bsrc);
diff --git a/gst-libs/gst/audio/audio-format.c b/gst-libs/gst/audio/audio-format.c
index c7f5d46..5a06850 100644
--- a/gst-libs/gst/audio/audio-format.c
+++ b/gst-libs/gst/audio/audio-format.c
@@ -404,6 +404,8 @@ gst_audio_format_from_string (const gchar * format)
{
guint i;
+ g_return_val_if_fail (format != NULL, GST_AUDIO_FORMAT_UNKNOWN);
+
for (i = 0; i < G_N_ELEMENTS (formats); i++) {
if (strcmp (GST_AUDIO_FORMAT_INFO_NAME (&formats[i]), format) == 0)
return GST_AUDIO_FORMAT_INFO_FORMAT (&formats[i]);
diff --git a/gst-libs/gst/audio/gstaudiodecoder.c b/gst-libs/gst/audio/gstaudiodecoder.c
index c3acb2e..314ce93 100644
--- a/gst-libs/gst/audio/gstaudiodecoder.c
+++ b/gst-libs/gst/audio/gstaudiodecoder.c
@@ -901,6 +901,7 @@ gst_audio_decoder_push_forward (GstAudioDecoder * dec, GstBuffer * buf)
GstAudioDecoderPrivate *priv;
GstAudioDecoderContext *ctx;
GstFlowReturn ret = GST_FLOW_OK;
+ GstClockTime ts;
klass = GST_AUDIO_DECODER_GET_CLASS (dec);
priv = dec->priv;
@@ -914,6 +915,7 @@ gst_audio_decoder_push_forward (GstAudioDecoder * dec, GstBuffer * buf)
}
ctx->had_output_data = TRUE;
+ ts = GST_BUFFER_TIMESTAMP (buf);
GST_LOG_OBJECT (dec,
"clipping buffer of size %" G_GSIZE_FORMAT " with ts %" GST_TIME_FORMAT
@@ -926,6 +928,12 @@ gst_audio_decoder_push_forward (GstAudioDecoder * dec, GstBuffer * buf)
ctx->info.bpf);
if (G_UNLIKELY (!buf)) {
GST_DEBUG_OBJECT (dec, "no data after clipping to segment");
+ if (dec->output_segment.rate >= 0) {
+ if (ts >= dec->output_segment.stop)
+ ret = GST_FLOW_EOS;
+ } else if (ts < dec->output_segment.start) {
+ ret = GST_FLOW_EOS;
+ }
goto exit;
}
@@ -1165,16 +1173,21 @@ gst_audio_decoder_finish_frame (GstAudioDecoder * dec, GstBuffer * buf,
/* frame and ts book-keeping */
if (G_UNLIKELY (frames < 0)) {
- if (G_UNLIKELY (-frames - 1 > priv->frames.length))
- goto overflow;
- frames = priv->frames.length + frames + 1;
+ if (G_UNLIKELY (-frames - 1 > priv->frames.length)) {
+ GST_ELEMENT_WARNING (dec, STREAM, ENCODE,
+ ("received more decoded frames %d than provided %d", frames,
+ priv->frames.length), (NULL));
+ frames = 0;
+ } else {
+ frames = priv->frames.length + frames + 1;
+ }
} else if (G_UNLIKELY (frames > priv->frames.length)) {
if (G_LIKELY (!priv->force)) {
- /* no way we can let this pass */
- g_assert_not_reached ();
- /* really no way */
- goto overflow;
+ GST_ELEMENT_WARNING (dec, STREAM, ENCODE,
+ ("received more decoded frames %d than provided %d", frames,
+ priv->frames.length), (NULL));
}
+ frames = priv->frames.length;
}
if (G_LIKELY (priv->frames.length))
@@ -1283,16 +1296,6 @@ wrong_buffer:
ret = GST_FLOW_ERROR;
goto exit;
}
-overflow:
- {
- GST_ELEMENT_ERROR (dec, STREAM, ENCODE,
- ("received more decoded frames %d than provided %d", frames,
- priv->frames.length), (NULL));
- if (buf)
- gst_buffer_unref (buf);
- ret = GST_FLOW_ERROR;
- goto exit;
- }
}
static GstFlowReturn
@@ -1992,6 +1995,24 @@ not_negotiated:
}
}
+static GList *
+_flush_events (GstPad * pad, GList * events)
+{
+ GList *tmp;
+
+ for (tmp = events; tmp; tmp = tmp->next) {
+ if (GST_EVENT_TYPE (tmp->data) == GST_EVENT_EOS ||
+ GST_EVENT_TYPE (tmp->data) == GST_EVENT_SEGMENT ||
+ !GST_EVENT_IS_STICKY (tmp->data)) {
+ gst_event_unref (tmp->data);
+ } else {
+ gst_pad_store_sticky_event (pad, GST_EVENT_CAST (tmp->data));
+ }
+ }
+
+ return NULL;
+}
+
static gboolean
gst_audio_decoder_sink_eventfunc (GstAudioDecoder * dec, GstEvent * event)
{
@@ -2087,9 +2108,8 @@ gst_audio_decoder_sink_eventfunc (GstAudioDecoder * dec, GstEvent * event)
/* prepare for fresh start */
gst_audio_decoder_flush (dec, TRUE);
- g_list_foreach (dec->priv->pending_events, (GFunc) gst_event_unref, NULL);
- g_list_free (dec->priv->pending_events);
- dec->priv->pending_events = NULL;
+ dec->priv->pending_events = _flush_events (dec->srcpad,
+ dec->priv->pending_events);
GST_AUDIO_DECODER_STREAM_UNLOCK (dec);
/* Forward FLUSH_STOP, it is expected to be forwarded immediately
diff --git a/gst-libs/gst/audio/gstaudioencoder.c b/gst-libs/gst/audio/gstaudioencoder.c
index 71beafc..a94fd01 100644
--- a/gst-libs/gst/audio/gstaudioencoder.c
+++ b/gst-libs/gst/audio/gstaudioencoder.c
@@ -1435,6 +1435,25 @@ gst_audio_encoder_getcaps_default (GstAudioEncoder * enc, GstCaps * filter)
return caps;
}
+static GList *
+_flush_events (GstPad * pad, GList * events)
+{
+ GList *tmp;
+
+ for (tmp = events; tmp; tmp = tmp->next) {
+ if (GST_EVENT_TYPE (tmp->data) == GST_EVENT_EOS ||
+ GST_EVENT_TYPE (tmp->data) == GST_EVENT_SEGMENT ||
+ !GST_EVENT_IS_STICKY (tmp->data)) {
+ gst_event_unref (tmp->data);
+ } else {
+ gst_pad_store_sticky_event (pad, GST_EVENT_CAST (tmp->data));
+ }
+ }
+ g_list_free (events);
+
+ return NULL;
+}
+
static gboolean
gst_audio_encoder_sink_event_default (GstAudioEncoder * enc, GstEvent * event)
{
@@ -1489,9 +1508,8 @@ gst_audio_encoder_sink_event_default (GstAudioEncoder * enc, GstEvent * event)
/* and get (re)set for the sequel */
gst_audio_encoder_reset (enc, FALSE);
- g_list_foreach (enc->priv->pending_events, (GFunc) gst_event_unref, NULL);
- g_list_free (enc->priv->pending_events);
- enc->priv->pending_events = NULL;
+ enc->priv->pending_events = _flush_events (enc->srcpad,
+ enc->priv->pending_events);
GST_AUDIO_ENCODER_STREAM_UNLOCK (enc);
res = gst_audio_encoder_push_event (enc, event);
diff --git a/gst-libs/gst/sdp/gstmikey.c b/gst-libs/gst/sdp/gstmikey.c
index 19bf608..19093bd 100644
--- a/gst-libs/gst/sdp/gstmikey.c
+++ b/gst-libs/gst/sdp/gstmikey.c
@@ -1271,8 +1271,7 @@ gst_mikey_message_add_t_now_ntp_utc (GstMIKEYMessage * msg)
/* convert clock time to NTP time. upper 32 bits should contain the seconds
* and the lower 32 bits, the fractions of a second. */
- ntptime = gst_util_uint64_scale (now, (G_GINT64_CONSTANT (1) << 32),
- GST_USECOND);
+ ntptime = gst_util_uint64_scale (now, (G_GINT64_CONSTANT (1) << 32), 1000000);
/* conversion from UNIX timestamp (seconds since 1970) to NTP (seconds
* since 1900). */
ntptime += (G_GUINT64_CONSTANT (2208988800) << 32);
@@ -1301,8 +1300,10 @@ gst_mikey_message_add_rand (GstMIKEYMessage * msg, guint8 len,
g_return_val_if_fail (len != 0 && rand != NULL, FALSE);
p = gst_mikey_payload_new (GST_MIKEY_PT_RAND);
- if (!gst_mikey_payload_rand_set (p, len, rand))
+ if (!gst_mikey_payload_rand_set (p, len, rand)) {
+ gst_mikey_payload_free (p);
return FALSE;
+ }
return gst_mikey_message_insert_payload (msg, -1, p);
}
diff --git a/gst-libs/gst/video/gstvideodecoder.c b/gst-libs/gst/video/gstvideodecoder.c
index c278e80..9760619 100644
--- a/gst-libs/gst/video/gstvideodecoder.c
+++ b/gst-libs/gst/video/gstvideodecoder.c
@@ -978,6 +978,25 @@ gst_video_decoder_drain_out (GstVideoDecoder * dec, gboolean at_eos)
return ret;
}
+static GList *
+_flush_events (GstPad * pad, GList * events)
+{
+ GList *tmp;
+
+ for (tmp = events; tmp; tmp = tmp->next) {
+ if (GST_EVENT_TYPE (tmp->data) == GST_EVENT_EOS ||
+ GST_EVENT_TYPE (tmp->data) == GST_EVENT_SEGMENT ||
+ !GST_EVENT_IS_STICKY (tmp->data)) {
+ gst_event_unref (tmp->data);
+ } else {
+ gst_pad_store_sticky_event (pad, GST_EVENT_CAST (tmp->data));
+ }
+ }
+ g_list_free (events);
+
+ return NULL;
+}
+
static gboolean
gst_video_decoder_sink_event_default (GstVideoDecoder * decoder,
GstEvent * event)
@@ -1128,7 +1147,17 @@ gst_video_decoder_sink_event_default (GstVideoDecoder * decoder,
}
case GST_EVENT_FLUSH_STOP:
{
+ GList *l;
+
GST_VIDEO_DECODER_STREAM_LOCK (decoder);
+ for (l = priv->frames; l; l = l->next) {
+ GstVideoCodecFrame *frame = l->data;
+
+ frame->events = _flush_events (decoder->srcpad, frame->events);
+ }
+ priv->current_frame_events = _flush_events (decoder->srcpad,
+ decoder->priv->current_frame_events);
+
/* well, this is kind of worse than a DISCONT */
gst_video_decoder_flush (decoder, TRUE);
GST_VIDEO_DECODER_STREAM_UNLOCK (decoder);
@@ -2051,7 +2080,7 @@ gst_video_decoder_chain_reverse (GstVideoDecoder * dec, GstBuffer * buf)
GST_DEBUG_OBJECT (dec, "received discont");
/* parse and decode stuff in the gather and parse queues */
- gst_video_decoder_flush_parse (dec, FALSE);
+ result = gst_video_decoder_flush_parse (dec, FALSE);
}
if (G_LIKELY (buf)) {
@@ -2721,6 +2750,12 @@ gst_video_decoder_clip_and_push_buf (GstVideoDecoder * decoder, GstBuffer * buf)
GST_TIME_ARGS (start), GST_TIME_ARGS (stop),
GST_TIME_ARGS (segment->start),
GST_TIME_ARGS (segment->stop), GST_TIME_ARGS (segment->time));
+ if (segment->rate >= 0) {
+ if (GST_BUFFER_PTS (buf) >= segment->stop)
+ ret = GST_FLOW_EOS;
+ } else if (GST_BUFFER_PTS (buf) < segment->start) {
+ ret = GST_FLOW_EOS;
+ }
gst_buffer_unref (buf);
goto done;
}
diff --git a/gst-libs/gst/video/gstvideoencoder.c b/gst-libs/gst/video/gstvideoencoder.c
index 09f09eb..e0264d1 100644
--- a/gst-libs/gst/video/gstvideoencoder.c
+++ b/gst-libs/gst/video/gstvideoencoder.c
@@ -305,6 +305,25 @@ gst_video_encoder_class_init (GstVideoEncoderClass * klass)
klass->src_query = gst_video_encoder_src_query_default;
}
+static GList *
+_flush_events (GstPad * pad, GList * events)
+{
+ GList *tmp;
+
+ for (tmp = events; tmp; tmp = tmp->next) {
+ if (GST_EVENT_TYPE (tmp->data) == GST_EVENT_EOS ||
+ GST_EVENT_TYPE (tmp->data) == GST_EVENT_SEGMENT ||
+ !GST_EVENT_IS_STICKY (tmp->data)) {
+ gst_event_unref (tmp->data);
+ } else {
+ gst_pad_store_sticky_event (pad, GST_EVENT_CAST (tmp->data));
+ }
+ }
+ g_list_free (events);
+
+ return NULL;
+}
+
static gboolean
gst_video_encoder_reset (GstVideoEncoder * encoder, gboolean hard)
{
@@ -323,10 +342,6 @@ gst_video_encoder_reset (GstVideoEncoder * encoder, gboolean hard)
priv->drained = TRUE;
- g_list_foreach (priv->current_frame_events, (GFunc) gst_event_unref, NULL);
- g_list_free (priv->current_frame_events);
- priv->current_frame_events = NULL;
-
g_list_foreach (priv->frames, (GFunc) gst_video_codec_frame_unref, NULL);
g_list_free (priv->frames);
priv->frames = NULL;
@@ -362,6 +377,21 @@ gst_video_encoder_reset (GstVideoEncoder * encoder, gboolean hard)
gst_object_unref (priv->allocator);
priv->allocator = NULL;
}
+
+ g_list_foreach (priv->current_frame_events, (GFunc) gst_event_unref, NULL);
+ g_list_free (priv->current_frame_events);
+ priv->current_frame_events = NULL;
+
+ } else {
+ GList *l;
+
+ for (l = priv->frames; l; l = l->next) {
+ GstVideoCodecFrame *frame = l->data;
+
+ frame->events = _flush_events (encoder->srcpad, frame->events);
+ }
+ priv->current_frame_events = _flush_events (encoder->srcpad,
+ encoder->priv->current_frame_events);
}
GST_VIDEO_ENCODER_STREAM_UNLOCK (encoder);
diff --git a/gst-libs/gst/video/video-info.c b/gst-libs/gst/video/video-info.c
index b0e9df7..52c9b12 100644
--- a/gst-libs/gst/video/video-info.c
+++ b/gst-libs/gst/video/video-info.c
@@ -373,10 +373,10 @@ gst_video_info_to_caps (GstVideoInfo * info)
static int
fill_planes (GstVideoInfo * info)
{
- gint width, height;
+ gsize width, height;
- width = info->width;
- height = info->height;
+ width = (gsize) info->width;
+ height = (gsize) info->height;
switch (info->finfo->format) {
case GST_VIDEO_FORMAT_YUY2:
@@ -627,7 +627,8 @@ gst_video_info_convert (GstVideoInfo * info,
GstFormat dest_format, gint64 * dest_value)
{
gboolean ret = FALSE;
- int size, fps_n, fps_d;
+ int fps_n, fps_d;
+ gsize size;
g_return_val_if_fail (info != NULL, 0);
g_return_val_if_fail (info->finfo != NULL, 0);
@@ -657,7 +658,7 @@ gst_video_info_convert (GstVideoInfo * info,
/* bytes to frames */
if (src_format == GST_FORMAT_BYTES && dest_format == GST_FORMAT_DEFAULT) {
if (size != 0) {
- *dest_value = gst_util_uint64_scale_int (src_value, 1, size);
+ *dest_value = gst_util_uint64_scale (src_value, 1, size);
} else {
GST_ERROR ("blocksize is 0");
*dest_value = 0;
@@ -668,7 +669,7 @@ gst_video_info_convert (GstVideoInfo * info,
/* frames to bytes */
if (src_format == GST_FORMAT_DEFAULT && dest_format == GST_FORMAT_BYTES) {
- *dest_value = gst_util_uint64_scale_int (src_value, size, 1);
+ *dest_value = gst_util_uint64_scale (src_value, size, 1);
ret = TRUE;
goto done;
}
diff --git a/gst-plugins-base.doap b/gst-plugins-base.doap
index bbd828a..1b6560c 100644
--- a/gst-plugins-base.doap
+++ b/gst-plugins-base.doap
@@ -32,7 +32,17 @@ A wide range of video and audio decoders, encoders, and filters are included.
<location rdf:resource="git://anongit.freedesktop.org/gstreamer/gst-plugins-base"/>
<browse rdf:resource="http://cgit.freedesktop.org/gstreamer/gst-plugins-base"/>
</GitRepository>
- </repository>
+ </repository>
+
+ <release>
+ <Version>
+ <revision>1.3.3</revision>
+ <branch>1.3</branch>
+ <name></name>
+ <created>2014-06-22</created>
+ <file-release rdf:resource="http://gstreamer.freedesktop.org/src/gst-plugins-base/gst-plugins-base-1.3.3.tar.xz" />
+ </Version>
+ </release>
<release>
<Version>
diff --git a/gst-plugins-base.spec b/gst-plugins-base.spec
index 6082d1b..e4f8eb8 100644
--- a/gst-plugins-base.spec
+++ b/gst-plugins-base.spec
@@ -4,7 +4,7 @@
%define gst_minver 0.11.0
Name: %{gstreamer}-plugins-base
-Version: 1.3.2
+Version: 1.3.3
Release: 1.gst
Summary: GStreamer streaming media framework plug-ins
diff --git a/gst/encoding/gststreamsplitter.c b/gst/encoding/gststreamsplitter.c
index 661f504..3861833 100644
--- a/gst/encoding/gststreamsplitter.c
+++ b/gst/encoding/gststreamsplitter.c
@@ -149,6 +149,25 @@ nopad:
return GST_FLOW_ERROR;
}
+static GList *
+_flush_events (GstPad * pad, GList * events)
+{
+ GList *tmp;
+
+ for (tmp = events; tmp; tmp = tmp->next) {
+ if (GST_EVENT_TYPE (tmp->data) == GST_EVENT_EOS ||
+ GST_EVENT_TYPE (tmp->data) == GST_EVENT_SEGMENT ||
+ !GST_EVENT_IS_STICKY (tmp->data) || pad == NULL) {
+ gst_event_unref (tmp->data);
+ } else {
+ gst_pad_store_sticky_event (pad, GST_EVENT_CAST (tmp->data));
+ }
+ }
+ g_list_free (events);
+
+ return NULL;
+}
+
static gboolean
gst_stream_splitter_sink_event (GstPad * pad, GstObject * parent,
GstEvent * event)
@@ -157,8 +176,6 @@ gst_stream_splitter_sink_event (GstPad * pad, GstObject * parent,
gboolean res = TRUE;
gboolean toall = FALSE;
gboolean store = FALSE;
- gboolean flushpending = FALSE;
-
/* FLUSH_START/STOP : forward to all
* INBAND events : store to send in chain function to selected chain
* OUT_OF_BAND events : send to all
@@ -179,8 +196,11 @@ gst_stream_splitter_sink_event (GstPad * pad, GstObject * parent,
break;
}
case GST_EVENT_FLUSH_STOP:
- flushpending = TRUE;
toall = TRUE;
+ STREAMS_LOCK (stream_splitter);
+ stream_splitter->pending_events = _flush_events (stream_splitter->current,
+ stream_splitter->pending_events);
+ STREAMS_UNLOCK (stream_splitter);
break;
case GST_EVENT_FLUSH_START:
toall = TRUE;
@@ -208,13 +228,6 @@ gst_stream_splitter_sink_event (GstPad * pad, GstObject * parent,
store = TRUE;
}
- if (flushpending) {
- g_list_foreach (stream_splitter->pending_events, (GFunc) gst_event_unref,
- NULL);
- g_list_free (stream_splitter->pending_events);
- stream_splitter->pending_events = NULL;
- }
-
if (store) {
stream_splitter->pending_events =
g_list_append (stream_splitter->pending_events, event);
diff --git a/gst/playback/gstdecodebin2.c b/gst/playback/gstdecodebin2.c
index 2789a14..01984fe 100644
--- a/gst/playback/gstdecodebin2.c
+++ b/gst/playback/gstdecodebin2.c
@@ -183,6 +183,8 @@ struct _GstDecodeBin
gboolean expose_allstreams; /* Whether to expose unknow type streams or not */
GList *filtered; /* elements for which error messages are filtered */
+
+ GList *buffering_status; /* element currently buffering messages */
};
struct _GstDecodeBinClass
@@ -3980,6 +3982,8 @@ gst_decode_bin_expose (GstDecodeBin * dbin)
GST_ELEMENT_ERROR (dbin, STREAM, FAILED, (NULL),
("all streams without buffers"));
}
+
+ do_async_done (dbin);
return FALSE;
}
@@ -4563,6 +4567,9 @@ gst_decode_bin_change_state (GstElement * element, GstStateChange transition)
dbin->decode_chain = NULL;
}
EXPOSE_UNLOCK (dbin);
+ g_list_free_full (dbin->buffering_status,
+ (GDestroyNotify) gst_message_unref);
+ dbin->buffering_status = NULL;
break;
case GST_STATE_CHANGE_READY_TO_NULL:
default:
@@ -4597,6 +4604,80 @@ gst_decode_bin_handle_message (GstBin * bin, GstMessage * msg)
GST_OBJECT_LOCK (dbin);
drop = (g_list_find (dbin->filtered, GST_MESSAGE_SRC (msg)) != NULL);
GST_OBJECT_UNLOCK (dbin);
+ } else if (GST_MESSAGE_TYPE (msg) == GST_MESSAGE_BUFFERING) {
+ gint perc, msg_perc;
+ gint smaller_perc = 100;
+ GstMessage *smaller = NULL;
+ GList *found = NULL;
+ GList *iter;
+
+ /* buffering messages must be aggregated as there might be multiple
+ * multiqueue in the pipeline and their independent buffering messages
+ * will confuse the application
+ *
+ * decodebin keeps a list of messages received from elements that are
+ * buffering.
+ * Rules are:
+ * 1) Always post the smaller buffering %
+ * 2) If an element posts a 100% buffering message, remove it from the list
+ * 3) When there are no more messages on the list, post 100% message
+ * 4) When an element posts a new buffering message, update the one
+ * on the list to this new value
+ */
+
+ gst_message_parse_buffering (msg, &msg_perc);
+
+ /*
+ * Single loop for 2 things:
+ * 1) Look for a message with the same source
+ * 1.1) If the received message is 100%, remove it from the list
+ * 2) Find the minimum buffering from the list
+ */
+ for (iter = dbin->buffering_status; iter;) {
+ GstMessage *bufstats = iter->data;
+ if (GST_MESSAGE_SRC (bufstats) == GST_MESSAGE_SRC (msg)) {
+ found = iter;
+ if (msg_perc < 100) {
+ gst_message_unref (iter->data);
+ bufstats = iter->data = gst_message_ref (msg);
+ } else {
+ GList *current = iter;
+
+ /* remove the element here and avoid confusing the loop */
+ iter = g_list_next (iter);
+
+ gst_message_unref (current->data);
+ dbin->buffering_status =
+ g_list_delete_link (dbin->buffering_status, current);
+
+ continue;
+ }
+ }
+
+ gst_message_parse_buffering (bufstats, &perc);
+ if (perc < smaller_perc) {
+ smaller_perc = perc;
+ smaller = bufstats;
+ }
+ iter = g_list_next (iter);
+ }
+
+ if (found == NULL && msg_perc < 100) {
+ if (msg_perc < smaller_perc) {
+ smaller_perc = msg_perc;
+ smaller = msg;
+ }
+ dbin->buffering_status =
+ g_list_prepend (dbin->buffering_status, gst_message_ref (msg));
+ }
+
+ /* now compute the buffering message that should be posted */
+ if (smaller_perc == 100) {
+ g_assert (dbin->buffering_status == NULL);
+ /* we are posting the original received msg */
+ } else {
+ gst_message_replace (&msg, smaller);
+ }
}
if (drop)
diff --git a/gst/playback/gsturidecodebin.c b/gst/playback/gsturidecodebin.c
index 7e1b7d0..709483e 100644
--- a/gst/playback/gsturidecodebin.c
+++ b/gst/playback/gsturidecodebin.c
@@ -981,8 +981,17 @@ no_more_pads_full (GstElement * element, gboolean subs,
done:
GST_URI_DECODE_BIN_UNLOCK (decoder);
- if (final)
- gst_element_no_more_pads (GST_ELEMENT_CAST (decoder));
+ if (final) {
+ /* If we got not a single stream yet, that means that all
+ * decodebins had missing plugins for all of their streams!
+ */
+ if (!decoder->streams || g_hash_table_size (decoder->streams) == 0) {
+ GST_ELEMENT_ERROR (decoder, CORE, MISSING_PLUGIN, (NULL),
+ ("no suitable plugins found"));
+ } else {
+ gst_element_no_more_pads (GST_ELEMENT_CAST (decoder));
+ }
+ }
return;
}
@@ -2386,15 +2395,42 @@ handle_redirect_message (GstURIDecodeBin * dec, GstMessage * msg)
static void
handle_message (GstBin * bin, GstMessage * msg)
{
- if (GST_MESSAGE_TYPE (msg) == GST_MESSAGE_ELEMENT
- && gst_message_has_name (msg, "redirect")) {
- /* sort redirect messages based on the connection speed. This simplifies
- * the user of this element as it can in most cases just pick the first item
- * of the sorted list as a good redirection candidate. It can of course
- * choose something else from the list if it has a better way. */
- msg = handle_redirect_message (GST_URI_DECODE_BIN (bin), msg);
+ switch (GST_MESSAGE_TYPE (msg)) {
+ case GST_MESSAGE_ELEMENT:{
+ if (gst_message_has_name (msg, "redirect")) {
+ /* sort redirect messages based on the connection speed. This simplifies
+ * the user of this element as it can in most cases just pick the first item
+ * of the sorted list as a good redirection candidate. It can of course
+ * choose something else from the list if it has a better way. */
+ msg = handle_redirect_message (GST_URI_DECODE_BIN (bin), msg);
+ }
+ break;
+ }
+ case GST_MESSAGE_ERROR:{
+ GError *err = NULL;
+
+ /* Filter out missing plugin error messages from the decodebins. Only if
+ * all decodebins exposed no streams we will report a missing plugin
+ * error from no_more_pads_full()
+ */
+ gst_message_parse_error (msg, &err, NULL);
+ if (g_error_matches (err, GST_CORE_ERROR, GST_CORE_ERROR_MISSING_PLUGIN)
+ || g_error_matches (err, GST_STREAM_ERROR,
+ GST_STREAM_ERROR_CODEC_NOT_FOUND)) {
+ no_more_pads_full (GST_ELEMENT (GST_MESSAGE_SRC (msg)), FALSE,
+ GST_URI_DECODE_BIN (bin));
+ gst_message_unref (msg);
+ msg = NULL;
+ }
+ g_clear_error (&err);
+ break;
+ }
+ default:
+ break;
}
- GST_BIN_CLASS (parent_class)->handle_message (bin, msg);
+
+ if (msg)
+ GST_BIN_CLASS (parent_class)->handle_message (bin, msg);
}
/* generic struct passed to all query fold methods
diff --git a/gst/tcp/gsttcpclientsrc.c b/gst/tcp/gsttcpclientsrc.c
index d3668b9..633665b 100644
--- a/gst/tcp/gsttcpclientsrc.c
+++ b/gst/tcp/gsttcpclientsrc.c
@@ -276,10 +276,16 @@ done:
select_error:
{
- GST_ELEMENT_ERROR (src, RESOURCE, READ, (NULL),
- ("Select failed: %s", err->message));
+ if (g_error_matches (err, G_IO_ERROR, G_IO_ERROR_CANCELLED)) {
+ GST_DEBUG_OBJECT (src, "Cancelled");
+ ret = GST_FLOW_FLUSHING;
+ } else {
+ GST_ELEMENT_ERROR (src, RESOURCE, READ, (NULL),
+ ("Select failed: %s", err->message));
+ ret = GST_FLOW_ERROR;
+ }
g_clear_error (&err);
- return GST_FLOW_ERROR;
+ return ret;
}
get_available_error:
{
diff --git a/gst/tcp/gsttcpserversrc.c b/gst/tcp/gsttcpserversrc.c
index 141181d..d2a09e9 100644
--- a/gst/tcp/gsttcpserversrc.c
+++ b/gst/tcp/gsttcpserversrc.c
@@ -195,6 +195,12 @@ gst_tcp_server_src_create (GstPushSrc * psrc, GstBuffer ** outbuf)
g_socket_accept (src->server_socket, src->cancellable, &err);
if (!src->client_socket)
goto accept_error;
+ GST_DEBUG_OBJECT (src, "closing server socket");
+
+ if (!g_socket_close (src->server_socket, &err)) {
+ GST_ERROR_OBJECT (src, "Failed to close socket: %s", err->message);
+ g_clear_error (&err);
+ }
/* now read from the socket. */
}
@@ -295,19 +301,27 @@ accept_error:
{
if (g_error_matches (err, G_IO_ERROR, G_IO_ERROR_CANCELLED)) {
GST_DEBUG_OBJECT (src, "Cancelled accepting of client");
+ ret = GST_FLOW_FLUSHING;
} else {
GST_ELEMENT_ERROR (src, RESOURCE, OPEN_READ, (NULL),
("Failed to accept client: %s", err->message));
+ ret = GST_FLOW_ERROR;
}
g_clear_error (&err);
- return GST_FLOW_ERROR;
+ return ret;
}
select_error:
{
- GST_ELEMENT_ERROR (src, RESOURCE, READ, (NULL),
- ("Select failed: %s", err->message));
+ if (g_error_matches (err, G_IO_ERROR, G_IO_ERROR_CANCELLED)) {
+ GST_DEBUG_OBJECT (src, "Cancelled select");
+ ret = GST_FLOW_FLUSHING;
+ } else {
+ GST_ELEMENT_ERROR (src, RESOURCE, OPEN_READ, (NULL),
+ ("Select failed: %s", err->message));
+ ret = GST_FLOW_ERROR;
+ }
g_clear_error (&err);
- return GST_FLOW_ERROR;
+ return ret;
}
get_available_error:
{
diff --git a/gst/videoscale/vs_fill_borders.c b/gst/videoscale/vs_fill_borders.c
index 2a12d23..37ae78b 100644
--- a/gst/videoscale/vs_fill_borders.c
+++ b/gst/videoscale/vs_fill_borders.c
@@ -51,7 +51,7 @@ vs_fill_borders_RGBA (const VSImage * dest, const uint8_t * val)
int width = dest->width;
int height = dest->height;
int real_width = dest->real_width;
- int stride = dest->stride;
+ gsize stride = dest->stride;
int tmp, tmp2;
uint8_t *data;
uint32_t v = READ_UINT32 (val);
@@ -103,7 +103,7 @@ vs_fill_borders_RGB (const VSImage * dest, const uint8_t * val)
int width = dest->width;
int height = dest->height;
int real_width = dest->real_width;
- int stride = dest->stride;
+ gsize stride = dest->stride;
int tmp, tmp2;
uint8_t *data;
@@ -140,7 +140,7 @@ vs_fill_borders_YUYV (const VSImage * dest, const uint8_t * val)
int width = dest->width;
int height = dest->height;
int real_width = dest->real_width;
- int stride = dest->stride;
+ gsize stride = dest->stride;
int tmp, tmp2;
uint8_t *data;
@@ -189,7 +189,7 @@ vs_fill_borders_UYVY (const VSImage * dest, const uint8_t * val)
int width = dest->width;
int height = dest->height;
int real_width = dest->real_width;
- int stride = dest->stride;
+ gsize stride = dest->stride;
int tmp, tmp2;
uint8_t *data;
@@ -238,7 +238,7 @@ vs_fill_borders_Y (const VSImage * dest, const uint8_t * val)
int width = dest->width;
int height = dest->height;
int real_width = dest->real_width;
- int stride = dest->stride;
+ gsize stride = dest->stride;
int tmp, tmp2;
uint8_t *data;
@@ -275,7 +275,7 @@ vs_fill_borders_Y16 (const VSImage * dest, const uint16_t val)
int width = dest->width;
int height = dest->height;
int real_width = dest->real_width;
- int stride = dest->stride;
+ gsize stride = dest->stride;
int tmp, tmp2;
uint8_t *data;
@@ -312,7 +312,7 @@ vs_fill_borders_RGB565 (const VSImage * dest, const uint8_t * val)
int width = dest->width;
int height = dest->height;
int real_width = dest->real_width;
- int stride = dest->stride;
+ gsize stride = dest->stride;
int tmp, tmp2;
uint8_t *data;
uint16_t v = READ_UINT16 (val);
@@ -350,7 +350,7 @@ vs_fill_borders_RGB555 (const VSImage * dest, const uint8_t * val)
int width = dest->width;
int height = dest->height;
int real_width = dest->real_width;
- int stride = dest->stride;
+ gsize stride = dest->stride;
int tmp, tmp2;
uint8_t *data;
uint16_t v = READ_UINT16 (val);
@@ -388,7 +388,7 @@ vs_fill_borders_AYUV64 (const VSImage * dest, const uint8_t * val)
int width = dest->width;
int height = dest->height;
int real_width = dest->real_width;
- int stride = dest->stride;
+ gsize stride = dest->stride;
int tmp, tmp2;
uint8_t *data;
uint64_t v;
diff --git a/gst/videoscale/vs_image.h b/gst/videoscale/vs_image.h
index a59c6db..d0a30ec 100644
--- a/gst/videoscale/vs_image.h
+++ b/gst/videoscale/vs_image.h
@@ -42,7 +42,7 @@ struct _VSImage {
uint8_t *pixels;
int width;
int height;
- int stride;
+ gsize stride;
};
G_GNUC_INTERNAL void vs_image_scale_nearest_RGBA (const VSImage * dest,
diff --git a/po/af.gmo b/po/af.gmo
index 86af38f..c7133b1 100644
--- a/po/af.gmo
+++ b/po/af.gmo
Binary files differ
diff --git a/po/af.po b/po/af.po
index e397a25..27f3bf0 100644
--- a/po/af.po
+++ b/po/af.po
@@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: gst-plugins 0.7.6\n"
"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2014-05-21 11:55+0200\n"
+"POT-Creation-Date: 2014-06-22 17:22+0200\n"
"PO-Revision-Date: 2004-03-18 14:16+0200\n"
"Last-Translator: Petri Jooste <rkwjpj@puk.ac.za>\n"
"Language-Team: Afrikaans <i18n@af.org.za>\n"
diff --git a/po/az.gmo b/po/az.gmo
index 62ebc0b..50e4e51 100644
--- a/po/az.gmo
+++ b/po/az.gmo
Binary files differ
diff --git a/po/az.po b/po/az.po
index 4657791..681732c 100644
--- a/po/az.po
+++ b/po/az.po
@@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: gst-plugins-0.8.0\n"
"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2014-05-21 11:55+0200\n"
+"POT-Creation-Date: 2014-06-22 17:22+0200\n"
"PO-Revision-Date: 2004-03-19 18:29+0200\n"
"Last-Translator: Metin Amiroff <metin@karegen.com>\n"
"Language-Team: Azerbaijani <translation-team-az@lists.sourceforge.net>\n"
diff --git a/po/bg.gmo b/po/bg.gmo
index 6a4caa7..172a485 100644
--- a/po/bg.gmo
+++ b/po/bg.gmo
Binary files differ
diff --git a/po/bg.po b/po/bg.po
index 77b3ad7..8d15400 100644
--- a/po/bg.po
+++ b/po/bg.po
@@ -8,7 +8,7 @@ msgid ""
msgstr ""
"Project-Id-Version: gst-plugins-base 0.10.32.2\n"
"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2014-05-21 11:55+0200\n"
+"POT-Creation-Date: 2014-06-22 17:22+0200\n"
"PO-Revision-Date: 2011-04-26 22:31+0300\n"
"Last-Translator: Alexander Shopov <ash@kambanaria.org>\n"
"Language-Team: Bulgarian <dict@fsa-bg.org>\n"
diff --git a/po/ca.gmo b/po/ca.gmo
index 94b710f..a7d0fdf 100644
--- a/po/ca.gmo
+++ b/po/ca.gmo
Binary files differ
diff --git a/po/ca.po b/po/ca.po
index 3f36967..2b8e0a6 100644
--- a/po/ca.po
+++ b/po/ca.po
@@ -9,7 +9,7 @@ msgid ""
msgstr ""
"Project-Id-Version: gst-plugins-base 0.10.32.2\n"
"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2014-05-21 11:55+0200\n"
+"POT-Creation-Date: 2014-06-22 17:22+0200\n"
"PO-Revision-Date: 2012-01-01 14:19+0100\n"
"Last-Translator: Gil Forcada <gforcada@gnome.org>\n"
"Language-Team: Catalan <ca@dodds.net>\n"
diff --git a/po/cs.gmo b/po/cs.gmo
index 08fa3c6..9a041a2 100644
--- a/po/cs.gmo
+++ b/po/cs.gmo
Binary files differ
diff --git a/po/cs.po b/po/cs.po
index 23cf5dc..19d61f3 100644
--- a/po/cs.po
+++ b/po/cs.po
@@ -10,7 +10,7 @@ msgid ""
msgstr ""
"Project-Id-Version: gst-plugins-base-1.2.1\n"
"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2014-05-21 11:55+0200\n"
+"POT-Creation-Date: 2014-06-22 17:22+0200\n"
"PO-Revision-Date: 2014-03-09 12:37+0100\n"
"Last-Translator: Marek Černocký <marek@manet.cz>\n"
"Language-Team: Czech <translation-team-cs@lists.sourceforge.net>\n"
diff --git a/po/da.gmo b/po/da.gmo
index cad5dec..32b1d1d 100644
--- a/po/da.gmo
+++ b/po/da.gmo
Binary files differ
diff --git a/po/da.po b/po/da.po
index 42eda4c..09a2200 100644
--- a/po/da.po
+++ b/po/da.po
@@ -1,9 +1,9 @@
# Danish translation of gst-plugins-base.
-# Copyright (C) 2013 gst, Mogens Jaeger, Joe Hansen.
+# Copyright (C) 2014 gst, Mogens Jaeger, Joe Hansen.
# This file is distributed under the same license as the gst-plugins-base package.
#
# Mogens Jaeger <mogens@jaeger.tf>, 2007.
-# Joe Hansen <joedalton2@yahoo.dk>, 2009, 2010, 2011, 2013.
+# Joe Hansen <joedalton2@yahoo.dk>, 2009, 2010, 2011, 2013, 2014.
#
# capture -> optage
# gain -> forstærkning
@@ -31,10 +31,10 @@
#
msgid ""
msgstr ""
-"Project-Id-Version: gst-plugins-base 1.2.1\n"
+"Project-Id-Version: gst-plugins-base 1.3.2\n"
"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2014-05-21 11:55+0200\n"
-"PO-Revision-Date: 2013-12-08 16:38+0100\n"
+"POT-Creation-Date: 2014-06-22 17:22+0200\n"
+"PO-Revision-Date: 2014-05-24 16:38+0100\n"
"Last-Translator: Joe Hansen <joedalton2@yahoo.dk>\n"
"Language-Team: Danish <dansk@dansk-gruppen.dk>\n"
"Language: da\n"
@@ -555,7 +555,7 @@ msgid "Buffering..."
msgstr "Mellemlagrer ..."
msgid "Clock lost, selecting a new one\n"
-msgstr ""
+msgstr "Ur tabt, vælger et nyt ur\n"
msgid "Print version information and exit"
msgstr "Vis versionsinformation og afslut"
@@ -570,16 +570,16 @@ msgid "Enable gapless playback"
msgstr "Aktiver afspilning uden huller"
msgid "Shuffle playlist"
-msgstr ""
+msgstr "Bland afspilningsliste"
msgid "Interactive control via keyboard"
-msgstr ""
+msgstr "Interaktiv kontrol via tastatur"
msgid "Volume"
-msgstr ""
+msgstr "Lydstyrke"
msgid "Playlist file containing input media files"
-msgstr ""
+msgstr "Afspilningsfil der indeholder mediefiler"
#, c-format
msgid "Usage: %s FILE1|URI1 [FILE2|URI2] [FILE3|URI3] ..."
diff --git a/po/de.gmo b/po/de.gmo
index bfe2393..b4e6e6e 100644
--- a/po/de.gmo
+++ b/po/de.gmo
Binary files differ
diff --git a/po/de.po b/po/de.po
index a695a5a..de14823 100644
--- a/po/de.po
+++ b/po/de.po
@@ -1,4 +1,4 @@
-# German messages for gst-plugins-base 1.2.1
+# German messages for gst-plugins-base 1.3.2
# Copyright © 2006 Karl Eichwalder
# This file is distributed under the same license as the gst-plugins-base package.
# Karl Eichwalder <ke@suse.de>, 2006.
@@ -7,10 +7,10 @@
#
msgid ""
msgstr ""
-"Project-Id-Version: gst-plugins-base 1.2.1\n"
+"Project-Id-Version: gst-plugins-base 1.3.2\n"
"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2014-05-21 11:55+0200\n"
-"PO-Revision-Date: 2013-12-16 00:25+0100\n"
+"POT-Creation-Date: 2014-06-22 17:22+0200\n"
+"PO-Revision-Date: 2014-05-22 20:43+0100\n"
"Last-Translator: Christian Kirbach <christian.kirbach@gmail.com>\n"
"Language-Team: German <translation-team-de@lists.sourceforge.net>\n"
"Language: de\n"
@@ -522,7 +522,7 @@ msgid "Buffering..."
msgstr "Zwischenspeichern …"
msgid "Clock lost, selecting a new one\n"
-msgstr ""
+msgstr "Uhrzeit verloren, es wird eine neue gewählt\n"
msgid "Print version information and exit"
msgstr "Versionsinformationen ausgeben und beenden"
@@ -537,16 +537,16 @@ msgid "Enable gapless playback"
msgstr "Lückenlose Wiedergabe einschalten"
msgid "Shuffle playlist"
-msgstr ""
+msgstr "Wiedergabeliste mischen"
msgid "Interactive control via keyboard"
-msgstr ""
+msgstr "Interaktive Steuerung via Tastatur"
msgid "Volume"
-msgstr ""
+msgstr "Lautstärke"
msgid "Playlist file containing input media files"
-msgstr ""
+msgstr "Datei mit Wiedergabeliste enthält Eingabe-Mediendateien"
#, c-format
msgid "Usage: %s FILE1|URI1 [FILE2|URI2] [FILE3|URI3] ..."
diff --git a/po/el.gmo b/po/el.gmo
index 4f368e8..d2a863b 100644
--- a/po/el.gmo
+++ b/po/el.gmo
Binary files differ
diff --git a/po/el.po b/po/el.po
index 529f3cf..399b303 100644
--- a/po/el.po
+++ b/po/el.po
@@ -9,7 +9,7 @@ msgid ""
msgstr ""
"Project-Id-Version: gst-plugins-base 0.10.32.2\n"
"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2014-05-21 11:55+0200\n"
+"POT-Creation-Date: 2014-06-22 17:22+0200\n"
"PO-Revision-Date: 2012-05-05 19:13+0100\n"
"Last-Translator: Savvas Radevic <vicedar@gmail.com>\n"
"Language-Team: Greek <team@lists.gnome.gr>\n"
diff --git a/po/en_GB.gmo b/po/en_GB.gmo
index 07b8bcf..519333e 100644
--- a/po/en_GB.gmo
+++ b/po/en_GB.gmo
Binary files differ
diff --git a/po/en_GB.po b/po/en_GB.po
index d3a3a4e..a8e5251 100644
--- a/po/en_GB.po
+++ b/po/en_GB.po
@@ -6,7 +6,7 @@ msgid ""
msgstr ""
"Project-Id-Version: gst-plugins 0.8.1\n"
"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2014-05-21 11:55+0200\n"
+"POT-Creation-Date: 2014-06-22 17:22+0200\n"
"PO-Revision-Date: 2004-04-26 10:41-0400\n"
"Last-Translator: Gareth Owen <gowen72@yahoo.com>\n"
"Language-Team: English (British) <en_gb@li.org>\n"
diff --git a/po/eo.gmo b/po/eo.gmo
index 3c735df..81eb3cf 100644
--- a/po/eo.gmo
+++ b/po/eo.gmo
Binary files differ
diff --git a/po/eo.po b/po/eo.po
index cec0135..4e2a998 100644
--- a/po/eo.po
+++ b/po/eo.po
@@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: gst-plugins-base 0.10.32.2\n"
"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2014-05-21 11:55+0200\n"
+"POT-Creation-Date: 2014-06-22 17:22+0200\n"
"PO-Revision-Date: 2011-06-04 21:11+0100\n"
"Last-Translator: Kristjan SCHMIDT <kristjan.schmidt@googlemail.com>\n"
"Language-Team: Esperanto <translation-team-eo@lists.sourceforge.net>\n"
diff --git a/po/es.gmo b/po/es.gmo
index e7ac3b0..ee200ff 100644
--- a/po/es.gmo
+++ b/po/es.gmo
Binary files differ
diff --git a/po/es.po b/po/es.po
index f52a9f2..7d159b1 100644
--- a/po/es.po
+++ b/po/es.po
@@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: gst-plugins-base 0.10.32.2\n"
"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2014-05-21 11:55+0200\n"
+"POT-Creation-Date: 2014-06-22 17:22+0200\n"
"PO-Revision-Date: 2011-10-02 15:46+0200\n"
"Last-Translator: Jorge González González <aloriel@gmail.com>\n"
"Language-Team: Spanish <es@li.org>\n"
diff --git a/po/eu.gmo b/po/eu.gmo
index 9f4b2fb..a2f893d 100644
--- a/po/eu.gmo
+++ b/po/eu.gmo
Binary files differ
diff --git a/po/eu.po b/po/eu.po
index 41e410f..ad089ca 100644
--- a/po/eu.po
+++ b/po/eu.po
@@ -8,7 +8,7 @@ msgid ""
msgstr ""
"Project-Id-Version: gst-plugins-base-0.10.26.2\n"
"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2014-05-21 11:55+0200\n"
+"POT-Creation-Date: 2014-06-22 17:22+0200\n"
"PO-Revision-Date: 2010-03-25 12:32+0100\n"
"Last-Translator: Mikel Olasagasti Uranga <hey_neken@mundurat.net>\n"
"Language-Team: Basque <translation-team-eu@lists.sourceforge.net>\n"
diff --git a/po/fi.gmo b/po/fi.gmo
index 9efba9c..a0538eb 100644
--- a/po/fi.gmo
+++ b/po/fi.gmo
Binary files differ
diff --git a/po/fi.po b/po/fi.po
index e44b2c7..a9efe05 100644
--- a/po/fi.po
+++ b/po/fi.po
@@ -12,7 +12,7 @@ msgid ""
msgstr ""
"Project-Id-Version: gst-plugins-base 0.10.30.3\n"
"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2014-05-21 11:55+0200\n"
+"POT-Creation-Date: 2014-06-22 17:22+0200\n"
"PO-Revision-Date: 2010-12-31 23:21+0200\n"
"Last-Translator: Tommi Vainikainen <Tommi.Vainikainen@iki.fi>\n"
"Language-Team: Finnish <translation-team-fi@lists.sourceforge.net>\n"
diff --git a/po/fr.gmo b/po/fr.gmo
index 741d1ad..a89a980 100644
--- a/po/fr.gmo
+++ b/po/fr.gmo
Binary files differ
diff --git a/po/fr.po b/po/fr.po
index bcc52a1..4ed595e 100644
--- a/po/fr.po
+++ b/po/fr.po
@@ -9,7 +9,7 @@ msgid ""
msgstr ""
"Project-Id-Version: gst-plugins-base 0.10.32.2\n"
"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2014-05-21 11:55+0200\n"
+"POT-Creation-Date: 2014-06-22 17:22+0200\n"
"PO-Revision-Date: 2011-04-28 09:19+0200\n"
"Last-Translator: Claude Paroz <claude@2xlibre.net>\n"
"Language-Team: French <traduc@traduc.org>\n"
diff --git a/po/gl.gmo b/po/gl.gmo
index 5ac66e1..2ca550f 100644
--- a/po/gl.gmo
+++ b/po/gl.gmo
Binary files differ
diff --git a/po/gl.po b/po/gl.po
index cfb1944..967185b 100644
--- a/po/gl.po
+++ b/po/gl.po
@@ -8,7 +8,7 @@ msgid ""
msgstr ""
"Project-Id-Version: gst-plugins-base 1.0.3\n"
"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2014-05-21 11:55+0200\n"
+"POT-Creation-Date: 2014-06-22 17:22+0200\n"
"PO-Revision-Date: 2012-12-15 03:40+0200\n"
"Last-Translator: Fran Dieguez <frandieguez@ubuntu.com>\n"
"Language-Team: Galician <proxecto@trasno.net>\n"
diff --git a/po/gst-plugins-base-1.0.pot b/po/gst-plugins-base-1.0.pot
index 00bb3f9..2143e37 100644
--- a/po/gst-plugins-base-1.0.pot
+++ b/po/gst-plugins-base-1.0.pot
@@ -5,9 +5,9 @@
#, fuzzy
msgid ""
msgstr ""
-"Project-Id-Version: gst-plugins-base 1.3.2\n"
+"Project-Id-Version: gst-plugins-base 1.3.3\n"
"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2014-05-21 11:55+0200\n"
+"POT-Creation-Date: 2014-06-22 17:22+0200\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
@@ -16,30 +16,30 @@ msgstr ""
"Content-Type: text/plain; charset=CHARSET\n"
"Content-Transfer-Encoding: 8bit\n"
-#: ext/alsa/gstalsasink.c:563
+#: ext/alsa/gstalsasink.c:573
msgid "Could not open device for playback in mono mode."
msgstr ""
-#: ext/alsa/gstalsasink.c:565
+#: ext/alsa/gstalsasink.c:575
msgid "Could not open device for playback in stereo mode."
msgstr ""
-#: ext/alsa/gstalsasink.c:569
+#: ext/alsa/gstalsasink.c:579
#, c-format
msgid "Could not open device for playback in %d-channel mode."
msgstr ""
-#: ext/alsa/gstalsasink.c:842
+#: ext/alsa/gstalsasink.c:852
msgid ""
"Could not open audio device for playback. Device is being used by another "
"application."
msgstr ""
-#: ext/alsa/gstalsasink.c:847
+#: ext/alsa/gstalsasink.c:857
msgid "Could not open audio device for playback."
msgstr ""
-#: ext/alsa/gstalsasink.c:1061
+#: ext/alsa/gstalsasink.c:1074
msgid "Error outputting to audio device. The device has been disconnected."
msgstr ""
@@ -82,7 +82,7 @@ msgstr ""
msgid "Could not read CD."
msgstr ""
-#: ext/ogg/gstoggdemux.c:4605
+#: ext/ogg/gstoggdemux.c:4564
msgid "Internal data stream error."
msgstr ""
@@ -96,21 +96,21 @@ msgstr ""
#: gst/playback/gstplaysink.c:3109 gst/playback/gstplaysink.c:4315
#: gst/playback/gstplaysinkconvertbin.c:97
#: gst/playback/gstplaysinkconvertbin.c:117
-#: gst/playback/gsturidecodebin.c:1470
+#: gst/playback/gsturidecodebin.c:1479
#, c-format
msgid "Missing element '%s' - check your GStreamer installation."
msgstr ""
-#: gst/playback/gstdecodebin2.c:1808
+#: gst/playback/gstdecodebin2.c:1810
#, c-format
msgid "A %s plugin is required to play this stream, but not installed."
msgstr ""
-#: gst/playback/gstdecodebin2.c:1815
+#: gst/playback/gstdecodebin2.c:1817
msgid "Could not determine type of stream"
msgstr ""
-#: gst/playback/gstdecodebin2.c:2512
+#: gst/playback/gstdecodebin2.c:2514
msgid "This appears to be a text file"
msgstr ""
@@ -181,25 +181,25 @@ msgstr ""
msgid "No decoder available for type '%s'."
msgstr ""
-#: gst/playback/gsturidecodebin.c:1376
+#: gst/playback/gsturidecodebin.c:1385
msgid "No URI specified to play from."
msgstr ""
-#: gst/playback/gsturidecodebin.c:1382
+#: gst/playback/gsturidecodebin.c:1391
#, c-format
msgid "Invalid URI \"%s\"."
msgstr ""
-#: gst/playback/gsturidecodebin.c:1389
+#: gst/playback/gsturidecodebin.c:1398
msgid "This stream type cannot be played yet."
msgstr ""
-#: gst/playback/gsturidecodebin.c:1407
+#: gst/playback/gsturidecodebin.c:1416
#, c-format
msgid "No URI handler implemented for \"%s\"."
msgstr ""
-#: gst/playback/gsturidecodebin.c:2276
+#: gst/playback/gsturidecodebin.c:2285
msgid "Source element is invalid."
msgstr ""
diff --git a/po/hr.gmo b/po/hr.gmo
index a307fd3..4265ffa 100644
--- a/po/hr.gmo
+++ b/po/hr.gmo
Binary files differ
diff --git a/po/hr.po b/po/hr.po
index de2a2b9..893a953 100644
--- a/po/hr.po
+++ b/po/hr.po
@@ -6,7 +6,7 @@ msgid ""
msgstr ""
"Project-Id-Version: gst-plugins-base 0.10.32.2\n"
"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2014-05-21 11:55+0200\n"
+"POT-Creation-Date: 2014-06-22 17:22+0200\n"
"PO-Revision-Date: 2012-04-16 04:19+0200\n"
"Last-Translator: Tomislav Krznar <tomislav.krznar@gmail.com>\n"
"Language-Team: Croatian <lokalizacija@linux.hr>\n"
diff --git a/po/hu.gmo b/po/hu.gmo
index 9885fd7..1a87574 100644
--- a/po/hu.gmo
+++ b/po/hu.gmo
Binary files differ
diff --git a/po/hu.po b/po/hu.po
index 2148b80..3411987 100644
--- a/po/hu.po
+++ b/po/hu.po
@@ -7,10 +7,10 @@
# Balázs Úr <urbalazs@gmail.com>, 2014.
msgid ""
msgstr ""
-"Project-Id-Version: gst-plugins-base 1.2.1\n"
+"Project-Id-Version: gst-plugins-base 1.3.2\n"
"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2014-05-21 11:55+0200\n"
-"PO-Revision-Date: 2014-03-20 18:47+0100\n"
+"POT-Creation-Date: 2014-06-22 17:22+0200\n"
+"PO-Revision-Date: 2014-05-23 20:48+0200\n"
"Last-Translator: Balázs Úr <urbalazs@gmail.com>\n"
"Language-Team: Hungarian <translation-team-hu@lists.sourceforge.net>\n"
"Language: hu\n"
@@ -18,7 +18,7 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Rosetta-Export-Date: 2007-03-10 00:18+0000\n"
-"X-Generator: Lokalize 1.2\n"
+"X-Generator: Lokalize 1.5\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
msgid "Could not open device for playback in mono mode."
@@ -516,7 +516,7 @@ msgid "Buffering..."
msgstr "Pufferelés…"
msgid "Clock lost, selecting a new one\n"
-msgstr ""
+msgstr "Óra elveszítve, egy új kiválasztása\n"
msgid "Print version information and exit"
msgstr "Verzióinformációk kiírása és kilépés"
@@ -531,16 +531,16 @@ msgid "Enable gapless playback"
msgstr "Szünetmentes lejátszás bekapcsolása"
msgid "Shuffle playlist"
-msgstr ""
+msgstr "Lejátszólista keverése"
msgid "Interactive control via keyboard"
-msgstr ""
+msgstr "Interaktív vezérlés billentyűzettel"
msgid "Volume"
-msgstr ""
+msgstr "Hangerő"
msgid "Playlist file containing input media files"
-msgstr ""
+msgstr "Bemeneti médiafájlokat tartalmazó lejátszólista fájl"
#, c-format
msgid "Usage: %s FILE1|URI1 [FILE2|URI2] [FILE3|URI3] ..."
diff --git a/po/id.gmo b/po/id.gmo
index 448d35f..2da1c27 100644
--- a/po/id.gmo
+++ b/po/id.gmo
Binary files differ
diff --git a/po/id.po b/po/id.po
index b182693..a623e96 100644
--- a/po/id.po
+++ b/po/id.po
@@ -5,10 +5,10 @@
#
msgid ""
msgstr ""
-"Project-Id-Version: gst-plugins-base 1.2.1\n"
+"Project-Id-Version: gst-plugins-base 1.3.2\n"
"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2014-05-21 11:55+0200\n"
-"PO-Revision-Date: 2014-01-28 18:53+0700\n"
+"POT-Creation-Date: 2014-06-22 17:22+0200\n"
+"PO-Revision-Date: 2014-06-01 09:55+0700\n"
"Last-Translator: Andhika Padmawan <andhika.padmawan@gmail.com>\n"
"Language-Team: Indonesian <translation-team-id@lists.sourceforge.net>\n"
"Language: id\n"
@@ -511,7 +511,7 @@ msgid "Buffering..."
msgstr "Menyangga..."
msgid "Clock lost, selecting a new one\n"
-msgstr ""
+msgstr "Jam hilang, pilih yang baru\n"
msgid "Print version information and exit"
msgstr "Cetak informasi versi lalu keluar"
@@ -526,16 +526,16 @@ msgid "Enable gapless playback"
msgstr "Aktifkan putar balik tanpa jeda"
msgid "Shuffle playlist"
-msgstr ""
+msgstr "Acak senarai putar"
msgid "Interactive control via keyboard"
-msgstr ""
+msgstr "Kontrol interaktif via papan ketik"
msgid "Volume"
-msgstr ""
+msgstr "Volume"
msgid "Playlist file containing input media files"
-msgstr ""
+msgstr "Berkas senarai putar berisi masukan berkas media"
#, c-format
msgid "Usage: %s FILE1|URI1 [FILE2|URI2] [FILE3|URI3] ..."
diff --git a/po/it.gmo b/po/it.gmo
index d5d5d1e..a3783bd 100644
--- a/po/it.gmo
+++ b/po/it.gmo
Binary files differ
diff --git a/po/it.po b/po/it.po
index 8a1e780..8e9ec7c 100644
--- a/po/it.po
+++ b/po/it.po
@@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: gst-plugins-base 0.10.28.2\n"
"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2014-05-21 11:55+0200\n"
+"POT-Creation-Date: 2014-06-22 17:22+0200\n"
"PO-Revision-Date: 2010-04-28 14:27+0200\n"
"Last-Translator: Luca Ferretti <elle.uca@infinito.it>\n"
"Language-Team: Italian <tp@lists.linux.it>\n"
diff --git a/po/ja.gmo b/po/ja.gmo
index ac46046..58d8da47 100644
--- a/po/ja.gmo
+++ b/po/ja.gmo
Binary files differ
diff --git a/po/ja.po b/po/ja.po
index d1a929d..67fd8b5 100644
--- a/po/ja.po
+++ b/po/ja.po
@@ -6,7 +6,7 @@ msgid ""
msgstr ""
"Project-Id-Version: gst-plugins-base 0.10.30.3\n"
"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2014-05-21 11:55+0200\n"
+"POT-Creation-Date: 2014-06-22 17:22+0200\n"
"PO-Revision-Date: 2010-10-25 10:27+0900\n"
"Last-Translator: Makoto Kato <makoto.kt@gmail.com>\n"
"Language-Team: Japanese <translation-team-ja@lists.sourceforge.net>\n"
diff --git a/po/lt.gmo b/po/lt.gmo
index 26b4c88..9ea62f3 100644
--- a/po/lt.gmo
+++ b/po/lt.gmo
Binary files differ
diff --git a/po/lt.po b/po/lt.po
index 19e4e6e..8141d4b 100644
--- a/po/lt.po
+++ b/po/lt.po
@@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: gst-plugins-base-0.10.15.2\n"
"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2014-05-21 11:55+0200\n"
+"POT-Creation-Date: 2014-06-22 17:22+0200\n"
"PO-Revision-Date: 2008-03-07 23:43+0200\n"
"Last-Translator: Gintautas Miliauskas <gintas@akl.lt>\n"
"Language-Team: Lithuanian <komp_lt@konferencijos.lt>\n"
diff --git a/po/lv.gmo b/po/lv.gmo
index 4fd5f45..217a978 100644
--- a/po/lv.gmo
+++ b/po/lv.gmo
Binary files differ
diff --git a/po/lv.po b/po/lv.po
index 10d8d4d..1255f96 100644
--- a/po/lv.po
+++ b/po/lv.po
@@ -9,7 +9,7 @@ msgid ""
msgstr ""
"Project-Id-Version: gst-plugins-base 1.2.1\n"
"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2014-05-21 11:55+0200\n"
+"POT-Creation-Date: 2014-06-22 17:22+0200\n"
"PO-Revision-Date: 2014-04-20 16:15+0300\n"
"Last-Translator: Rihards Prieditis <rprieditis@gmail.com>\n"
"Language-Team: Latvian <translation-team-lv@lists.sourceforge.net>\n"
diff --git a/po/nb.gmo b/po/nb.gmo
index 8cea5fc..b0d2714 100644
--- a/po/nb.gmo
+++ b/po/nb.gmo
Binary files differ
diff --git a/po/nb.po b/po/nb.po
index 1044e49..74de258 100644
--- a/po/nb.po
+++ b/po/nb.po
@@ -8,7 +8,7 @@ msgid ""
msgstr ""
"Project-Id-Version: gst-plugins-base 1.2.1\n"
"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2014-05-21 11:55+0200\n"
+"POT-Creation-Date: 2014-06-22 17:22+0200\n"
"PO-Revision-Date: 2014-01-22 17:42+0100\n"
"Last-Translator: Johnny A. Solbu <johnny@solbu.net>\n"
"Language-Team: Norwegian Bokmaal <i18n-nb@lister.ping.uio.no>\n"
diff --git a/po/nl.gmo b/po/nl.gmo
index 92f92d3..a6a5596 100644
--- a/po/nl.gmo
+++ b/po/nl.gmo
Binary files differ
diff --git a/po/nl.po b/po/nl.po
index 200de91..3bde54d 100644
--- a/po/nl.po
+++ b/po/nl.po
@@ -1,13 +1,13 @@
-# translation of gst-plugins-base-1.2.1.po to Dutch
+# translation of gst-plugins-base-1.3.2.po to Dutch
# This file is put in the public domain.
#
# Freek de Kruijf <f.de.kruijf@gmail.com>, 2007, 2008, 2009, 2010, 2011, 2012, 2013, 2014.
msgid ""
msgstr ""
-"Project-Id-Version: gst-plugins-base 1.2.1\n"
+"Project-Id-Version: gst-plugins-base 1.3.2\n"
"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2014-05-21 11:55+0200\n"
-"PO-Revision-Date: 2014-01-09 13:01+0100\n"
+"POT-Creation-Date: 2014-06-22 17:22+0200\n"
+"PO-Revision-Date: 2014-05-22 00:34+0200\n"
"Last-Translator: Freek de Kruijf <f.de.kruijf@gmail.com>\n"
"Language-Team: Dutch <vertaling@vrijschrift.org>\n"
"Language: nl\n"
@@ -523,7 +523,7 @@ msgid "Buffering..."
msgstr "In buffer opslaan..."
msgid "Clock lost, selecting a new one\n"
-msgstr ""
+msgstr "Klok verloren, een nieuwe wordt geselecteerd\n"
msgid "Print version information and exit"
msgstr "Versie-informatie afdrukken en sluiten"
@@ -538,16 +538,16 @@ msgid "Enable gapless playback"
msgstr "Afspelen activeren zonder gaten"
msgid "Shuffle playlist"
-msgstr ""
+msgstr "Afspeellijst in willekeurige volgorde"
msgid "Interactive control via keyboard"
-msgstr ""
+msgstr "Interactieve besturing via toetsenbord"
msgid "Volume"
-msgstr ""
+msgstr "Volume"
msgid "Playlist file containing input media files"
-msgstr ""
+msgstr "Afspeellijstbestand met mediabestanden voor invoer"
#, c-format
msgid "Usage: %s FILE1|URI1 [FILE2|URI2] [FILE3|URI3] ..."
diff --git a/po/or.gmo b/po/or.gmo
index 1ea745d..017b457 100644
--- a/po/or.gmo
+++ b/po/or.gmo
Binary files differ
diff --git a/po/or.po b/po/or.po
index b94b04b..b4f6c6e 100644
--- a/po/or.po
+++ b/po/or.po
@@ -8,7 +8,7 @@ msgid ""
msgstr ""
"Project-Id-Version: gst-plugins-0.8.3\n"
"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2014-05-21 11:55+0200\n"
+"POT-Creation-Date: 2014-06-22 17:22+0200\n"
"PO-Revision-Date: 2004-09-27 13:32+0530\n"
"Last-Translator: Gora Mohanty <gora_mohanty@yahoo.co.in>\n"
"Language-Team: Oriya <gora_mohanty@yahoo.co.in>\n"
diff --git a/po/pl.gmo b/po/pl.gmo
index 6f3f16b..5dd815a 100644
--- a/po/pl.gmo
+++ b/po/pl.gmo
Binary files differ
diff --git a/po/pl.po b/po/pl.po
index d646e66..5ca496a 100644
--- a/po/pl.po
+++ b/po/pl.po
@@ -1,13 +1,13 @@
# Polish translation for gst-plugins-base.
# This file is distributed under the same license as the gst-plugins-base package.
-# Jakub Bogusz <qboosh@pld-linux.org>, 2007-2013.
+# Jakub Bogusz <qboosh@pld-linux.org>, 2007-2014.
#
msgid ""
msgstr ""
-"Project-Id-Version: gst-plugins-base 1.2.1\n"
+"Project-Id-Version: gst-plugins-base 1.3.2\n"
"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2014-05-21 11:55+0200\n"
-"PO-Revision-Date: 2013-12-08 08:58+0100\n"
+"POT-Creation-Date: 2014-06-22 17:22+0200\n"
+"PO-Revision-Date: 2014-05-22 18:36+0200\n"
"Last-Translator: Jakub Bogusz <qboosh@pld-linux.org>\n"
"Language-Team: Polish <translation-team-pl@lists.sourceforge.net>\n"
"Language: pl\n"
@@ -521,7 +521,7 @@ msgid "Buffering..."
msgstr "Buforowanie..."
msgid "Clock lost, selecting a new one\n"
-msgstr ""
+msgstr "Utracono zegar, wybieranie nowego\n"
msgid "Print version information and exit"
msgstr "Wypisanie informacji o wersji i zakończenie"
@@ -536,16 +536,16 @@ msgid "Enable gapless playback"
msgstr "Włączenie odtwarzania bez przerw"
msgid "Shuffle playlist"
-msgstr ""
+msgstr "Przetasowanie listy odtwarzania"
msgid "Interactive control via keyboard"
-msgstr ""
+msgstr "Interaktywne sterowanie z klawiatury"
msgid "Volume"
-msgstr ""
+msgstr "Głośność"
msgid "Playlist file containing input media files"
-msgstr ""
+msgstr "Plik listy odtwarzania zawierający wejściowe pliki multimedialne"
#, c-format
msgid "Usage: %s FILE1|URI1 [FILE2|URI2] [FILE3|URI3] ..."
diff --git a/po/pt_BR.gmo b/po/pt_BR.gmo
index 86c193e..91a4ee0 100644
--- a/po/pt_BR.gmo
+++ b/po/pt_BR.gmo
Binary files differ
diff --git a/po/pt_BR.po b/po/pt_BR.po
index 8e4ea94..17e6b7e 100644
--- a/po/pt_BR.po
+++ b/po/pt_BR.po
@@ -11,7 +11,7 @@ msgid ""
msgstr ""
"Project-Id-Version: gst-plugins-base-1.2.1\n"
"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2014-05-21 11:55+0200\n"
+"POT-Creation-Date: 2014-06-22 17:22+0200\n"
"PO-Revision-Date: 2013-12-29 17:33-0300\n"
"Last-Translator: Fabrício Godoy <skarllot@gmail.com>\n"
"Language-Team: Brazilian Portuguese <ldpbr-translation@lists.sourceforge."
diff --git a/po/ro.gmo b/po/ro.gmo
index 8b471c9..abb2fd3 100644
--- a/po/ro.gmo
+++ b/po/ro.gmo
Binary files differ
diff --git a/po/ro.po b/po/ro.po
index 13b2a49..6f1ce6d 100644
--- a/po/ro.po
+++ b/po/ro.po
@@ -5,7 +5,7 @@ msgid ""
msgstr ""
"Project-Id-Version: gst-plugins-base 0.10.29.2\n"
"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2014-05-21 11:55+0200\n"
+"POT-Creation-Date: 2014-06-22 17:22+0200\n"
"PO-Revision-Date: 2010-08-16 01:21+0300\n"
"Last-Translator: Lucian Adrian Grijincu <lucian.grijincu@gmail.com>\n"
"Language-Team: Romanian <translation-team-ro@lists.sourceforge.net>\n"
diff --git a/po/ru.gmo b/po/ru.gmo
index 5594e7a..ba652da 100644
--- a/po/ru.gmo
+++ b/po/ru.gmo
Binary files differ
diff --git a/po/ru.po b/po/ru.po
index a56bc49..26fa6cc 100644
--- a/po/ru.po
+++ b/po/ru.po
@@ -3,20 +3,20 @@
#
# Артём Попов <artfwo@gmail.com>, 2009.
# Pavel Maryanov <acid_jack@ukr.net>, 2009.
-# Yuri Kozlov <yuray@komyakino.ru>, 2010, 2011, 2012, 2013.
+# Yuri Kozlov <yuray@komyakino.ru>, 2010, 2011, 2012, 2013, 2014.
msgid ""
msgstr ""
-"Project-Id-Version: gst-plugins-base 1.2.1\n"
+"Project-Id-Version: gst-plugins-base 1.3.2\n"
"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2014-05-21 11:55+0200\n"
-"PO-Revision-Date: 2013-12-08 12:52+0400\n"
+"POT-Creation-Date: 2014-06-22 17:22+0200\n"
+"PO-Revision-Date: 2014-05-22 20:01+0400\n"
"Last-Translator: Yuri Kozlov <yuray@komyakino.ru>\n"
"Language-Team: Russian <gnu@mx.ru>\n"
"Language: ru\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"X-Generator: Lokalize 1.4\n"
+"X-Generator: Lokalize 1.5\n"
"Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n"
"%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n"
@@ -518,7 +518,7 @@ msgid "Buffering..."
msgstr "Буферизация…"
msgid "Clock lost, selecting a new one\n"
-msgstr ""
+msgstr "Часы потеряны, выбираем новые\n"
msgid "Print version information and exit"
msgstr "Вывод информации о версии и выход из программы"
@@ -533,16 +533,16 @@ msgid "Enable gapless playback"
msgstr "Включить непрерывное воспроизведение"
msgid "Shuffle playlist"
-msgstr ""
+msgstr "Перемешать список воспроизведения"
msgid "Interactive control via keyboard"
-msgstr ""
+msgstr "Интерактивное управление с клавиатуры"
msgid "Volume"
-msgstr ""
+msgstr "Громкость"
msgid "Playlist file containing input media files"
-msgstr ""
+msgstr "Файл списка воспроизведения с входными медиа-файлами"
#, c-format
msgid "Usage: %s FILE1|URI1 [FILE2|URI2] [FILE3|URI3] ..."
diff --git a/po/sk.gmo b/po/sk.gmo
index fc05222..c79e460 100644
--- a/po/sk.gmo
+++ b/po/sk.gmo
Binary files differ
diff --git a/po/sk.po b/po/sk.po
index 3112df1..2640524 100644
--- a/po/sk.po
+++ b/po/sk.po
@@ -6,7 +6,7 @@ msgid ""
msgstr ""
"Project-Id-Version: gst-plugins-base 1.2.1\n"
"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2014-05-21 11:55+0200\n"
+"POT-Creation-Date: 2014-06-22 17:22+0200\n"
"PO-Revision-Date: 2014-01-30 10:57+0100\n"
"Last-Translator: Peter Tuharsky <tuharsky@misbb.sk>\n"
"Language-Team: Slovak <sk-i18n@lists.linux.sk>\n"
diff --git a/po/sl.gmo b/po/sl.gmo
index 83699f4..8b53523 100644
--- a/po/sl.gmo
+++ b/po/sl.gmo
Binary files differ
diff --git a/po/sl.po b/po/sl.po
index b4de86e..2abf617 100644
--- a/po/sl.po
+++ b/po/sl.po
@@ -10,7 +10,7 @@ msgid ""
msgstr ""
"Project-Id-Version: gst-plugins-base-1.0.3\n"
"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2014-05-21 11:55+0200\n"
+"POT-Creation-Date: 2014-06-22 17:22+0200\n"
"PO-Revision-Date: 2013-01-05 10:10+0100\n"
"Last-Translator: Klemen Košir <klemen913@gmail.com>\n"
"Language-Team: Slovenian <translation-team-sl@lists.sourceforge.net>\n"
diff --git a/po/sq.gmo b/po/sq.gmo
index ef55cdf..9092177 100644
--- a/po/sq.gmo
+++ b/po/sq.gmo
Binary files differ
diff --git a/po/sq.po b/po/sq.po
index 8bde236..4ee95c2 100644
--- a/po/sq.po
+++ b/po/sq.po
@@ -6,7 +6,7 @@ msgid ""
msgstr ""
"Project-Id-Version: gst-plugins 0.8.3\n"
"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2014-05-21 11:55+0200\n"
+"POT-Creation-Date: 2014-06-22 17:22+0200\n"
"PO-Revision-Date: 2004-08-07 20:29+0200\n"
"Last-Translator: Laurent Dhima <laurenti@alblinux.net>\n"
"Language-Team: Albanian <begraj@hotmail.com>\n"
diff --git a/po/sr.gmo b/po/sr.gmo
index dd1e915..6958199 100644
--- a/po/sr.gmo
+++ b/po/sr.gmo
Binary files differ
diff --git a/po/sr.po b/po/sr.po
index ab497a8..396cc51 100644
--- a/po/sr.po
+++ b/po/sr.po
@@ -1,14 +1,14 @@
# Serbian translation of gst-plugins
-# Copyright (C) 2004 Free Software Foundation, Inc.
+# Copyright (C) 2014 Free Software Foundation, Inc.
# This file is distributed under the same license as the gst-plugins-base package.
# Danilo Segan <dsegan@gmx.net>, 2004.
-# Мирослав Николић <miroslavnikolic@rocketmail.com>, 2011, 2012, 2013, 2014.
+# Мирослав Николић <miroslavnikolic@rocketmail.com>, 2011-2014.
msgid ""
msgstr ""
-"Project-Id-Version: gst-plugins-base-1.2.1\n"
+"Project-Id-Version: gst-plugins-base-1.3.2\n"
"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2014-05-21 11:55+0200\n"
-"PO-Revision-Date: 2014-01-13 20:16+0200\n"
+"POT-Creation-Date: 2014-06-22 17:22+0200\n"
+"PO-Revision-Date: 2014-06-18 19:35+0200\n"
"Last-Translator: Мирослав Николић <miroslavnikolic@rocketmail.com>\n"
"Language-Team: Serbian <(nothing)>\n"
"Language: sr\n"
@@ -17,7 +17,6 @@ msgstr ""
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n"
"%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n"
-"X-Project-Style: gnome\n"
msgid "Could not open device for playback in mono mode."
msgstr "Не могу да отворим уређај ради пуштања у моно режиму."
@@ -512,7 +511,7 @@ msgid "Buffering..."
msgstr "Смештам у међумеморију..."
msgid "Clock lost, selecting a new one\n"
-msgstr ""
+msgstr "Сат је изгубљен, бирам нови\n"
msgid "Print version information and exit"
msgstr "Исписује податке о издању и излази"
@@ -527,16 +526,16 @@ msgid "Enable gapless playback"
msgstr "Укључује пуштање без застоја"
msgid "Shuffle playlist"
-msgstr ""
+msgstr "Меша списак нумера"
msgid "Interactive control via keyboard"
-msgstr ""
+msgstr "Међудејствено управљање путем тастатуре"
msgid "Volume"
-msgstr ""
+msgstr "Јачина звука"
msgid "Playlist file containing input media files"
-msgstr ""
+msgstr "Датотека списка нумера садржи датотеке улазних медија"
#, c-format
msgid "Usage: %s FILE1|URI1 [FILE2|URI2] [FILE3|URI3] ..."
diff --git a/po/sv.gmo b/po/sv.gmo
index 7d93f3f..f63220c 100644
--- a/po/sv.gmo
+++ b/po/sv.gmo
Binary files differ
diff --git a/po/sv.po b/po/sv.po
index 7e70305..5ece221 100644
--- a/po/sv.po
+++ b/po/sv.po
@@ -8,7 +8,7 @@ msgid ""
msgstr ""
"Project-Id-Version: gst-plugins-base 0.10.28.2\n"
"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2014-05-21 11:55+0200\n"
+"POT-Creation-Date: 2014-06-22 17:22+0200\n"
"PO-Revision-Date: 2010-06-07 18:17+0100\n"
"Last-Translator: Daniel Nylander <po@danielnylander.se>\n"
"Language-Team: Swedish <tp-sv@listor.tp-sv.se>\n"
diff --git a/po/tr.gmo b/po/tr.gmo
index 13737f1..25e29ee 100644
--- a/po/tr.gmo
+++ b/po/tr.gmo
Binary files differ
diff --git a/po/tr.po b/po/tr.po
index 078d081..eebeaef 100644
--- a/po/tr.po
+++ b/po/tr.po
@@ -6,7 +6,7 @@ msgid ""
msgstr ""
"Project-Id-Version: gst-plugins-base 1.0.3\n"
"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2014-05-21 11:55+0200\n"
+"POT-Creation-Date: 2014-06-22 17:22+0200\n"
"PO-Revision-Date: 2013-03-10 12:46+0200\n"
"Last-Translator: Server Acim <serveracim@gmail.com>\n"
"Language-Team: Turkish <gnu-tr-u12a@lists.sourceforge.net>\n"
diff --git a/po/uk.gmo b/po/uk.gmo
index 4b8261d..72ecc51 100644
--- a/po/uk.gmo
+++ b/po/uk.gmo
Binary files differ
diff --git a/po/uk.po b/po/uk.po
index d47cd78..1e0a33b 100644
--- a/po/uk.po
+++ b/po/uk.po
@@ -3,13 +3,13 @@
# This file is distributed under the same license as the gst-plugins-base package.
#
# Maxim V. Dziumanenko <dziumanenko@gmail.com>, 2004-2007.
-# Yuri Chornoivan <yurchor@ukr.net>, 2010, 2011, 2012, 2013.
+# Yuri Chornoivan <yurchor@ukr.net>, 2010, 2011, 2012, 2013, 2014.
msgid ""
msgstr ""
-"Project-Id-Version: gst-plugins-base 1.2.1\n"
+"Project-Id-Version: gst-plugins-base 1.3.2\n"
"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2014-05-21 11:55+0200\n"
-"PO-Revision-Date: 2013-12-07 22:59+0200\n"
+"POT-Creation-Date: 2014-06-22 17:22+0200\n"
+"PO-Revision-Date: 2014-05-22 07:40+0300\n"
"Last-Translator: Yuri Chornoivan <yurchor@ukr.net>\n"
"Language-Team: Ukrainian <translation-team-uk@lists.sourceforge.net>\n"
"Language: uk\n"
@@ -529,7 +529,7 @@ msgid "Buffering..."
msgstr "Буферизація…"
msgid "Clock lost, selecting a new one\n"
-msgstr ""
+msgstr "Доступ до годинника втрачено, вибираємо новий\n"
msgid "Print version information and exit"
msgstr "Показати дані щодо версії і завершити роботу"
@@ -544,16 +544,16 @@ msgid "Enable gapless playback"
msgstr "Увімкнути неперервне відтворення"
msgid "Shuffle playlist"
-msgstr ""
+msgstr "Перемішати список відтворення"
msgid "Interactive control via keyboard"
-msgstr ""
+msgstr "Інтерактивне керування за допомогою клавіатури"
msgid "Volume"
-msgstr ""
+msgstr "Гучність"
msgid "Playlist file containing input media files"
-msgstr ""
+msgstr "Файл списку відтворення, що містить мультимедійні файли вхідних даних"
#, c-format
msgid "Usage: %s FILE1|URI1 [FILE2|URI2] [FILE3|URI3] ..."
diff --git a/po/vi.gmo b/po/vi.gmo
index c9a6f3e..a636df5 100644
--- a/po/vi.gmo
+++ b/po/vi.gmo
Binary files differ
diff --git a/po/vi.po b/po/vi.po
index 906d144..ff9cd6c 100644
--- a/po/vi.po
+++ b/po/vi.po
@@ -9,7 +9,7 @@ msgid ""
msgstr ""
"Project-Id-Version: gst-plugins-base-1.2.1\n"
"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2014-05-21 11:55+0200\n"
+"POT-Creation-Date: 2014-06-22 17:22+0200\n"
"PO-Revision-Date: 2013-12-11 07:50+0700\n"
"Last-Translator: Trần Ngọc Quân <vnwildman@gmail.com>\n"
"Language-Team: Vietnamese <translation-team-vi@lists.sourceforge.net>\n"
diff --git a/po/zh_CN.gmo b/po/zh_CN.gmo
index 16b2bfe..33341ba 100644
--- a/po/zh_CN.gmo
+++ b/po/zh_CN.gmo
Binary files differ
diff --git a/po/zh_CN.po b/po/zh_CN.po
index 97eddef..cf93b9b 100644
--- a/po/zh_CN.po
+++ b/po/zh_CN.po
@@ -6,7 +6,7 @@ msgid ""
msgstr ""
"Project-Id-Version: gst-plugins-base 0.10.21.3\n"
"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2014-05-21 11:55+0200\n"
+"POT-Creation-Date: 2014-06-22 17:22+0200\n"
"PO-Revision-Date: 2009-01-14 12:41+0800\n"
"Last-Translator: Ji ZhengYu <zhengyuji@gmail.com>\n"
"Language-Team: Chinese (simplified) <i18n-zh@googlegroups.com>\n"
diff --git a/tests/check/elements/decodebin.c b/tests/check/elements/decodebin.c
index 049b3a9..fba0b1c 100644
--- a/tests/check/elements/decodebin.c
+++ b/tests/check/elements/decodebin.c
@@ -623,6 +623,99 @@ GST_START_TEST (test_parser_negotiation)
GST_END_TEST;
+GST_START_TEST (test_buffering_aggregation)
+{
+ GstElement *pipe, *decodebin;
+ GstMessage *msg;
+ GstElement *mq0, *mq1, *mq2;
+ gint perc;
+
+ pipe = gst_pipeline_new (NULL);
+ fail_unless (pipe != NULL, "failed to create pipeline");
+
+ decodebin = gst_element_factory_make ("decodebin", "decodebin");
+ fail_unless (decodebin != NULL, "Failed to create decodebin element");
+
+ fail_unless (gst_bin_add (GST_BIN (pipe), decodebin));
+
+ /* to simulate the buffering scenarios we stuff 2 multiqueues inside
+ * decodebin. This is hacky, but sould make decodebin handle its buffering
+ * messages all the same */
+ mq0 = gst_element_factory_make ("multiqueue", NULL);
+ mq1 = gst_element_factory_make ("multiqueue", NULL);
+ mq2 = gst_element_factory_make ("multiqueue", NULL);
+
+ fail_unless (gst_bin_add (GST_BIN (decodebin), mq0));
+ fail_unless (gst_bin_add (GST_BIN (decodebin), mq1));
+ fail_unless (gst_bin_add (GST_BIN (decodebin), mq2));
+
+ fail_unless_equals_int (gst_element_set_state (pipe, GST_STATE_READY),
+ GST_STATE_CHANGE_SUCCESS);
+ fail_unless_equals_int (gst_element_set_state (pipe, GST_STATE_PAUSED),
+ GST_STATE_CHANGE_ASYNC);
+
+ /* currently we shoud have no buffering messages */
+ msg = gst_bus_poll (GST_ELEMENT_BUS (pipe), GST_MESSAGE_BUFFERING, 0);
+ fail_unless (msg == NULL);
+
+ /* only a single element buffering, the buffering percent should be the
+ * same as it */
+ gst_element_post_message (mq0, gst_message_new_buffering (GST_OBJECT (mq0),
+ 50));
+ msg = gst_bus_poll (GST_ELEMENT_BUS (pipe), GST_MESSAGE_BUFFERING, 0);
+ fail_unless (msg != NULL);
+ fail_unless (GST_MESSAGE_SRC (msg) == (GstObject *) mq0);
+ gst_message_parse_buffering (msg, &perc);
+ fail_unless (perc == 50);
+ gst_message_unref (msg);
+
+ /* two elements buffering, the buffering percent should be the
+ * lowest one */
+ gst_element_post_message (mq1, gst_message_new_buffering (GST_OBJECT (mq1),
+ 20));
+ msg = gst_bus_poll (GST_ELEMENT_BUS (pipe), GST_MESSAGE_BUFFERING, 0);
+ fail_unless (msg != NULL);
+ fail_unless (GST_MESSAGE_SRC (msg) == (GstObject *) mq1);
+ gst_message_parse_buffering (msg, &perc);
+ fail_unless (perc == 20);
+ gst_message_unref (msg);
+
+ /* a 100% message should be ignored */
+ gst_element_post_message (mq2, gst_message_new_buffering (GST_OBJECT (mq2),
+ 100));
+ msg = gst_bus_poll (GST_ELEMENT_BUS (pipe), GST_MESSAGE_BUFFERING, 0);
+ fail_unless (msg != NULL);
+ fail_unless (GST_MESSAGE_SRC (msg) == (GstObject *) mq1);
+ gst_message_parse_buffering (msg, &perc);
+ fail_unless (perc == 20);
+ gst_message_unref (msg);
+
+ /* a new buffering message is posted with a higher value, go with the 20 */
+ gst_element_post_message (mq2, gst_message_new_buffering (GST_OBJECT (mq2),
+ 80));
+ msg = gst_bus_poll (GST_ELEMENT_BUS (pipe), GST_MESSAGE_BUFFERING, 0);
+ fail_unless (msg != NULL);
+ fail_unless (GST_MESSAGE_SRC (msg) == (GstObject *) mq1);
+ gst_message_parse_buffering (msg, &perc);
+ fail_unless (perc == 20);
+ gst_message_unref (msg);
+
+ /* The mq1 finishes buffering, new buffering status is now 50% from mq0 */
+ gst_element_post_message (mq1, gst_message_new_buffering (GST_OBJECT (mq1),
+ 100));
+ msg = gst_bus_poll (GST_ELEMENT_BUS (pipe), GST_MESSAGE_BUFFERING, 0);
+ fail_unless (msg != NULL);
+ fail_unless (GST_MESSAGE_SRC (msg) == (GstObject *) mq0);
+ gst_message_parse_buffering (msg, &perc);
+ fail_unless (perc == 50);
+ gst_message_unref (msg);
+
+ gst_element_set_state (pipe, GST_STATE_NULL);
+ gst_object_unref (pipe);
+}
+
+GST_END_TEST;
+
static Suite *
decodebin_suite (void)
{
@@ -634,6 +727,7 @@ decodebin_suite (void)
tcase_add_test (tc_chain, test_reuse_without_decoders);
tcase_add_test (tc_chain, test_mp3_parser_loop);
tcase_add_test (tc_chain, test_parser_negotiation);
+ tcase_add_test (tc_chain, test_buffering_aggregation);
return s;
}
diff --git a/tests/check/libs/audiodecoder.c b/tests/check/libs/audiodecoder.c
index 5d2e182..8f77a18 100644
--- a/tests/check/libs/audiodecoder.c
+++ b/tests/check/libs/audiodecoder.c
@@ -44,6 +44,7 @@ struct _GstAudioDecoderTester
GstAudioDecoder parent;
gboolean setoutputformat_on_decoding;
+ gboolean output_too_many_frames;
};
struct _GstAudioDecoderTesterClass
@@ -129,7 +130,11 @@ gst_audio_decoder_tester_handle_frame (GstAudioDecoder * dec,
gst_buffer_unmap (buffer, &map);
- return gst_audio_decoder_finish_frame (dec, output_buffer, 1);
+ if (tester->output_too_many_frames) {
+ return gst_audio_decoder_finish_frame (dec, output_buffer, 2);
+ } else {
+ return gst_audio_decoder_finish_frame (dec, output_buffer, 1);
+ }
}
static void
@@ -415,6 +420,229 @@ GST_START_TEST (audiodecoder_delayed_negotiation_with_gap_event)
GST_END_TEST;
+GST_START_TEST (audiodecoder_flush_events)
+{
+ GstSegment segment;
+ GstBuffer *buffer;
+ guint64 i;
+ GList *events_iter;
+
+ setup_audiodecodertester ();
+
+ gst_pad_set_active (mysrcpad, TRUE);
+ gst_element_set_state (dec, GST_STATE_PLAYING);
+ gst_pad_set_active (mysinkpad, TRUE);
+
+ send_startup_events ();
+
+ /* push a new segment */
+ gst_segment_init (&segment, GST_FORMAT_TIME);
+ fail_unless (gst_pad_push_event (mysrcpad, gst_event_new_segment (&segment)));
+
+ /* push buffers, the data is actually a number so we can track them */
+ for (i = 0; i < NUM_BUFFERS; i++) {
+ if (i % 10 == 0) {
+ GstTagList *tags;
+
+ tags = gst_tag_list_new (GST_TAG_TRACK_NUMBER, i, NULL);
+ fail_unless (gst_pad_push_event (mysrcpad, gst_event_new_tag (tags)));
+ } else {
+ buffer = create_test_buffer (i);
+
+ fail_unless (gst_pad_push (mysrcpad, buffer) == GST_FLOW_OK);
+ }
+ }
+
+ fail_unless (gst_pad_push_event (mysrcpad, gst_event_new_eos ()));
+
+ events_iter = events;
+ /* make sure the usual events have been received */
+ {
+ GstEvent *sstart = events_iter->data;
+ fail_unless (GST_EVENT_TYPE (sstart) == GST_EVENT_STREAM_START);
+ events_iter = g_list_next (events_iter);
+ }
+ {
+ GstEvent *caps_event = events_iter->data;
+ fail_unless (GST_EVENT_TYPE (caps_event) == GST_EVENT_CAPS);
+ events_iter = g_list_next (events_iter);
+ }
+ {
+ GstEvent *segment_event = events_iter->data;
+ fail_unless (GST_EVENT_TYPE (segment_event) == GST_EVENT_SEGMENT);
+ events_iter = g_list_next (events_iter);
+ }
+
+ /* check that EOS was received */
+ fail_unless (GST_PAD_IS_EOS (mysrcpad));
+ fail_unless (gst_pad_push_event (mysrcpad, gst_event_new_flush_start ()));
+ fail_unless (GST_PAD_IS_EOS (mysrcpad));
+
+ /* Check that we have tags */
+ {
+ GstEvent *tags = gst_pad_get_sticky_event (mysrcpad, GST_EVENT_TAG, 0);
+
+ fail_unless (tags != NULL);
+ gst_event_unref (tags);
+ }
+
+ /* Check that we still have a segment set */
+ {
+ GstEvent *segment =
+ gst_pad_get_sticky_event (mysrcpad, GST_EVENT_SEGMENT, 0);
+
+ fail_unless (segment != NULL);
+ gst_event_unref (segment);
+ }
+
+ fail_unless (gst_pad_push_event (mysrcpad, gst_event_new_flush_stop (TRUE)));
+ fail_if (GST_PAD_IS_EOS (mysrcpad));
+
+ /* Check that the segment was flushed on FLUSH_STOP */
+ {
+ GstEvent *segment =
+ gst_pad_get_sticky_event (mysrcpad, GST_EVENT_SEGMENT, 0);
+
+ fail_unless (segment == NULL);
+ }
+
+ /* Check the tags were not lost on FLUSH_STOP */
+ {
+ GstEvent *tags = gst_pad_get_sticky_event (mysrcpad, GST_EVENT_TAG, 0);
+
+ fail_unless (tags != NULL);
+ gst_event_unref (tags);
+
+ }
+
+ g_list_free_full (buffers, (GDestroyNotify) gst_buffer_unref);
+ buffers = NULL;
+
+ cleanup_audiodecodertest ();
+}
+
+GST_END_TEST;
+
+
+GST_START_TEST (audiodecoder_buffer_after_segment)
+{
+ GstSegment segment;
+ GstBuffer *buffer;
+ guint64 i;
+ GstClockTime pos;
+
+ setup_audiodecodertester ();
+
+ gst_pad_set_active (mysrcpad, TRUE);
+ gst_element_set_state (dec, GST_STATE_PLAYING);
+ gst_pad_set_active (mysinkpad, TRUE);
+
+ send_startup_events ();
+
+ /* push a new segment */
+ gst_segment_init (&segment, GST_FORMAT_TIME);
+ segment.stop = GST_SECOND;
+ fail_unless (gst_pad_push_event (mysrcpad, gst_event_new_segment (&segment)));
+
+ /* push buffers, the data is actually a number so we can track them */
+ i = 0;
+ pos = 0;
+ while (pos < GST_SECOND) {
+ GstMapInfo map;
+ guint64 num;
+
+ buffer = create_test_buffer (i);
+ pos = GST_BUFFER_TIMESTAMP (buffer) + GST_BUFFER_DURATION (buffer);
+
+ fail_unless (gst_pad_push (mysrcpad, buffer) == GST_FLOW_OK);
+
+ /* check that buffer was received by our source pad */
+ buffer = buffers->data;
+
+ gst_buffer_map (buffer, &map, GST_MAP_READ);
+
+ num = *(guint64 *) map.data;
+ fail_unless_equals_uint64 (i, num);
+ fail_unless_equals_uint64 (GST_BUFFER_PTS (buffer),
+ gst_util_uint64_scale_round (i, GST_SECOND, TEST_MSECS_PER_SAMPLE));
+ fail_unless_equals_uint64 (GST_BUFFER_DURATION (buffer),
+ gst_util_uint64_scale_round (1, GST_SECOND, TEST_MSECS_PER_SAMPLE));
+
+ gst_buffer_unmap (buffer, &map);
+
+ gst_buffer_unref (buffer);
+ buffers = g_list_delete_link (buffers, buffers);
+ i++;
+ }
+
+ /* this buffer is after the segment */
+ buffer = create_test_buffer (i++);
+ fail_unless (gst_pad_push (mysrcpad, buffer) == GST_FLOW_EOS);
+
+ fail_unless (gst_pad_push_event (mysrcpad, gst_event_new_eos ()));
+
+ fail_unless (buffers == NULL);
+
+ cleanup_audiodecodertest ();
+}
+
+GST_END_TEST;
+
+GST_START_TEST (audiodecoder_output_too_many_frames)
+{
+ GstSegment segment;
+ GstBuffer *buffer;
+ guint64 i;
+
+ setup_audiodecodertester ();
+
+ ((GstAudioDecoderTester *) dec)->output_too_many_frames = TRUE;
+
+ gst_pad_set_active (mysrcpad, TRUE);
+ gst_element_set_state (dec, GST_STATE_PLAYING);
+ gst_pad_set_active (mysinkpad, TRUE);
+
+ send_startup_events ();
+
+ /* push a new segment */
+ gst_segment_init (&segment, GST_FORMAT_TIME);
+ fail_unless (gst_pad_push_event (mysrcpad, gst_event_new_segment (&segment)));
+
+ /* push buffers, the data is actually a number so we can track them */
+ for (i = 0; i < 3; i++) {
+ GstMapInfo map;
+ guint64 num;
+
+ buffer = create_test_buffer (i);
+
+ fail_unless (gst_pad_push (mysrcpad, buffer) == GST_FLOW_OK);
+
+ /* check that buffer was received by our source pad */
+ buffer = buffers->data;
+
+ gst_buffer_map (buffer, &map, GST_MAP_READ);
+
+ num = *(guint64 *) map.data;
+ fail_unless_equals_uint64 (i, num);
+ fail_unless_equals_uint64 (GST_BUFFER_PTS (buffer),
+ gst_util_uint64_scale_round (i, GST_SECOND, TEST_MSECS_PER_SAMPLE));
+ fail_unless_equals_uint64 (GST_BUFFER_DURATION (buffer),
+ gst_util_uint64_scale_round (1, GST_SECOND, TEST_MSECS_PER_SAMPLE));
+
+ gst_buffer_unmap (buffer, &map);
+
+ gst_buffer_unref (buffer);
+ buffers = g_list_delete_link (buffers, buffers);
+ }
+
+ fail_unless (gst_pad_push_event (mysrcpad, gst_event_new_eos ()));
+
+ fail_unless (buffers == NULL);
+
+ cleanup_audiodecodertest ();
+}
+
+GST_END_TEST;
static Suite *
gst_audiodecoder_suite (void)
@@ -424,9 +652,12 @@ gst_audiodecoder_suite (void)
suite_add_tcase (s, tc);
tcase_add_test (tc, audiodecoder_playback);
+ tcase_add_test (tc, audiodecoder_flush_events);
tcase_add_test (tc, audiodecoder_negotiation_with_buffer);
tcase_add_test (tc, audiodecoder_negotiation_with_gap_event);
tcase_add_test (tc, audiodecoder_delayed_negotiation_with_gap_event);
+ tcase_add_test (tc, audiodecoder_buffer_after_segment);
+ tcase_add_test (tc, audiodecoder_output_too_many_frames);
return s;
}
diff --git a/tests/check/libs/audioencoder.c b/tests/check/libs/audioencoder.c
index a6bfcf0..bd65341 100644
--- a/tests/check/libs/audioencoder.c
+++ b/tests/check/libs/audioencoder.c
@@ -278,6 +278,110 @@ GST_START_TEST (audioencoder_playback)
GST_END_TEST;
+
+GST_START_TEST (audioencoder_flush_events)
+{
+ GstSegment segment;
+ GstBuffer *buffer;
+ guint64 i;
+ GList *events_iter;
+
+ setup_audioencodertester ();
+
+ gst_pad_set_active (mysrcpad, TRUE);
+ gst_element_set_state (enc, GST_STATE_PLAYING);
+ gst_pad_set_active (mysinkpad, TRUE);
+
+ send_startup_events ();
+
+ /* push a new segment */
+ gst_segment_init (&segment, GST_FORMAT_TIME);
+ fail_unless (gst_pad_push_event (mysrcpad, gst_event_new_segment (&segment)));
+
+ /* push buffers, the data is actually a number so we can track them */
+ for (i = 0; i < NUM_BUFFERS; i++) {
+ if (i % 10 == 0) {
+ GstTagList *tags;
+
+ tags = gst_tag_list_new (GST_TAG_TRACK_NUMBER, i, NULL);
+ fail_unless (gst_pad_push_event (mysrcpad, gst_event_new_tag (tags)));
+ } else {
+ buffer = create_test_buffer (i);
+
+ fail_unless (gst_pad_push (mysrcpad, buffer) == GST_FLOW_OK);
+ }
+ }
+
+ fail_unless (gst_pad_push_event (mysrcpad, gst_event_new_eos ()));
+
+ events_iter = events;
+ /* make sure the usual events have been received */
+ {
+ GstEvent *sstart = events_iter->data;
+ fail_unless (GST_EVENT_TYPE (sstart) == GST_EVENT_STREAM_START);
+ events_iter = g_list_next (events_iter);
+ }
+ {
+ GstEvent *caps_event = events_iter->data;
+ fail_unless (GST_EVENT_TYPE (caps_event) == GST_EVENT_CAPS);
+ events_iter = g_list_next (events_iter);
+ }
+ {
+ GstEvent *segment_event = events_iter->data;
+ fail_unless (GST_EVENT_TYPE (segment_event) == GST_EVENT_SEGMENT);
+ events_iter = g_list_next (events_iter);
+ }
+
+ /* check that EOS was received */
+ fail_unless (GST_PAD_IS_EOS (mysrcpad));
+ fail_unless (gst_pad_push_event (mysrcpad, gst_event_new_flush_start ()));
+ fail_unless (GST_PAD_IS_EOS (mysrcpad));
+
+ /* Check that we have tags */
+ {
+ GstEvent *tags = gst_pad_get_sticky_event (mysrcpad, GST_EVENT_TAG, 0);
+
+ fail_unless (tags != NULL);
+ gst_event_unref (tags);
+ }
+
+ /* Check that we still have a segment set */
+ {
+ GstEvent *segment =
+ gst_pad_get_sticky_event (mysrcpad, GST_EVENT_SEGMENT, 0);
+
+ fail_unless (segment != NULL);
+ gst_event_unref (segment);
+ }
+
+ fail_unless (gst_pad_push_event (mysrcpad, gst_event_new_flush_stop (TRUE)));
+ fail_if (GST_PAD_IS_EOS (mysrcpad));
+
+ /* Check that the segment was flushed on FLUSH_STOP */
+ {
+ GstEvent *segment =
+ gst_pad_get_sticky_event (mysrcpad, GST_EVENT_SEGMENT, 0);
+
+ fail_unless (segment == NULL);
+ }
+
+ /* Check the tags were not lost on FLUSH_STOP */
+ {
+ GstEvent *tags = gst_pad_get_sticky_event (mysrcpad, GST_EVENT_TAG, 0);
+
+ fail_unless (tags != NULL);
+ gst_event_unref (tags);
+
+ }
+
+ g_list_free_full (buffers, (GDestroyNotify) gst_buffer_unref);
+ buffers = NULL;
+
+ cleanup_audioencodertest ();
+}
+
+GST_END_TEST;
+
/* make sure tags sent right before eos are pushed */
GST_START_TEST (audioencoder_tags_before_eos)
{
@@ -404,6 +508,7 @@ gst_audioencoder_suite (void)
tcase_add_test (tc, audioencoder_tags_before_eos);
tcase_add_test (tc, audioencoder_events_before_eos);
+ tcase_add_test (tc, audioencoder_flush_events);
return s;
}
diff --git a/tests/check/libs/video.c b/tests/check/libs/video.c
index 3834934..d7cac06 100644
--- a/tests/check/libs/video.c
+++ b/tests/check/libs/video.c
@@ -641,6 +641,43 @@ GST_START_TEST (test_video_formats_rgb)
GST_END_TEST;
+
+GST_START_TEST (test_video_formats_rgba_large_dimension)
+{
+ GstVideoInfo vinfo;
+ gint width, height, framerate_n, framerate_d, par_n, par_d;
+ GstCaps *caps;
+ GstStructure *structure;
+
+ gst_video_info_init (&vinfo);
+ gst_video_info_set_format (&vinfo, GST_VIDEO_FORMAT_RGBA, 29700, 21000);
+ vinfo.par_n = 1;
+ vinfo.par_d = 1;
+ vinfo.fps_n = 0;
+ vinfo.fps_d = 1;
+ caps = gst_video_info_to_caps (&vinfo);
+ structure = gst_caps_get_structure (caps, 0);
+
+ fail_unless (gst_structure_get_int (structure, "width", &width));
+ fail_unless (gst_structure_get_int (structure, "height", &height));
+ fail_unless (gst_structure_get_fraction (structure, "framerate", &framerate_n,
+ &framerate_d));
+ fail_unless (gst_structure_get_fraction (structure, "pixel-aspect-ratio",
+ &par_n, &par_d));
+
+ fail_unless (width == 29700);
+ fail_unless (height == 21000);
+ fail_unless (framerate_n == 0);
+ fail_unless (framerate_d == 1);
+ fail_unless (par_n == 1);
+ fail_unless (par_d == 1);
+ fail_unless (vinfo.size == (gsize) 29700 * 21000 * 4);
+
+ gst_caps_unref (caps);
+}
+
+GST_END_TEST;
+
GST_START_TEST (test_dar_calc)
{
guint display_ratio_n, display_ratio_d;
@@ -1665,6 +1702,7 @@ video_suite (void)
suite_add_tcase (s, tc_chain);
tcase_add_test (tc_chain, test_video_formats);
tcase_add_test (tc_chain, test_video_formats_rgb);
+ tcase_add_test (tc_chain, test_video_formats_rgba_large_dimension);
tcase_add_test (tc_chain, test_video_formats_all);
tcase_add_test (tc_chain, test_video_formats_pack_unpack);
tcase_add_test (tc_chain, test_dar_calc);
diff --git a/tests/check/libs/videodecoder.c b/tests/check/libs/videodecoder.c
index 628a48b..5e9f2c9 100644
--- a/tests/check/libs/videodecoder.c
+++ b/tests/check/libs/videodecoder.c
@@ -422,6 +422,109 @@ GST_START_TEST (videodecoder_playback_with_events)
GST_END_TEST;
+GST_START_TEST (videodecoder_flush_events)
+{
+ GstSegment segment;
+ GstBuffer *buffer;
+ guint64 i;
+ GList *events_iter;
+
+ setup_videodecodertester ();
+
+ gst_pad_set_active (mysrcpad, TRUE);
+ gst_element_set_state (dec, GST_STATE_PLAYING);
+ gst_pad_set_active (mysinkpad, TRUE);
+
+ send_startup_events ();
+
+ /* push a new segment */
+ gst_segment_init (&segment, GST_FORMAT_TIME);
+ fail_unless (gst_pad_push_event (mysrcpad, gst_event_new_segment (&segment)));
+
+ /* push buffers, the data is actually a number so we can track them */
+ for (i = 0; i < NUM_BUFFERS; i++) {
+ if (i % 10 == 0) {
+ GstTagList *tags;
+
+ tags = gst_tag_list_new (GST_TAG_TRACK_NUMBER, i, NULL);
+ fail_unless (gst_pad_push_event (mysrcpad, gst_event_new_tag (tags)));
+ } else {
+ buffer = create_test_buffer (i);
+
+ fail_unless (gst_pad_push (mysrcpad, buffer) == GST_FLOW_OK);
+ }
+ }
+
+ fail_unless (gst_pad_push_event (mysrcpad, gst_event_new_eos ()));
+
+ events_iter = events;
+ /* make sure the usual events have been received */
+ {
+ GstEvent *sstart = events_iter->data;
+ fail_unless (GST_EVENT_TYPE (sstart) == GST_EVENT_STREAM_START);
+ events_iter = g_list_next (events_iter);
+ }
+ {
+ GstEvent *caps_event = events_iter->data;
+ fail_unless (GST_EVENT_TYPE (caps_event) == GST_EVENT_CAPS);
+ events_iter = g_list_next (events_iter);
+ }
+ {
+ GstEvent *segment_event = events_iter->data;
+ fail_unless (GST_EVENT_TYPE (segment_event) == GST_EVENT_SEGMENT);
+ events_iter = g_list_next (events_iter);
+ }
+
+ /* check that EOS was received */
+ fail_unless (GST_PAD_IS_EOS (mysrcpad));
+ fail_unless (gst_pad_push_event (mysrcpad, gst_event_new_flush_start ()));
+ fail_unless (GST_PAD_IS_EOS (mysrcpad));
+
+ /* Check that we have tags */
+ {
+ GstEvent *tags = gst_pad_get_sticky_event (mysrcpad, GST_EVENT_TAG, 0);
+
+ fail_unless (tags != NULL);
+ gst_event_unref (tags);
+ }
+
+ /* Check that we still have a segment set */
+ {
+ GstEvent *segment =
+ gst_pad_get_sticky_event (mysrcpad, GST_EVENT_SEGMENT, 0);
+
+ fail_unless (segment != NULL);
+ gst_event_unref (segment);
+ }
+
+ fail_unless (gst_pad_push_event (mysrcpad, gst_event_new_flush_stop (TRUE)));
+ fail_if (GST_PAD_IS_EOS (mysrcpad));
+
+ /* Check that the segment was flushed on FLUSH_STOP */
+ {
+ GstEvent *segment =
+ gst_pad_get_sticky_event (mysrcpad, GST_EVENT_SEGMENT, 0);
+
+ fail_unless (segment == NULL);
+ }
+
+ /* Check the tags were not lost on FLUSH_STOP */
+ {
+ GstEvent *tags = gst_pad_get_sticky_event (mysrcpad, GST_EVENT_TAG, 0);
+
+ fail_unless (tags != NULL);
+ gst_event_unref (tags);
+
+ }
+
+ g_list_free_full (buffers, (GDestroyNotify) gst_buffer_unref);
+ buffers = NULL;
+
+ cleanup_videodecodertest ();
+}
+
+GST_END_TEST;
+
/* Check https://bugzilla.gnome.org/show_bug.cgi?id=721835 */
GST_START_TEST (videodecoder_playback_first_frames_not_decoded)
@@ -481,6 +584,75 @@ GST_START_TEST (videodecoder_playback_first_frames_not_decoded)
GST_END_TEST;
+GST_START_TEST (videodecoder_buffer_after_segment)
+{
+ GstSegment segment;
+ GstBuffer *buffer;
+ guint64 i;
+ GstClockTime pos;
+ GList *iter;
+
+ setup_videodecodertester ();
+
+ gst_pad_set_active (mysrcpad, TRUE);
+ gst_element_set_state (dec, GST_STATE_PLAYING);
+ gst_pad_set_active (mysinkpad, TRUE);
+
+ send_startup_events ();
+
+ /* push a new segment */
+ gst_segment_init (&segment, GST_FORMAT_TIME);
+ segment.stop = GST_SECOND;
+ fail_unless (gst_pad_push_event (mysrcpad, gst_event_new_segment (&segment)));
+
+ /* push buffers until we fill our segment */
+ i = 0;
+ pos = 0;
+ while (pos < GST_SECOND) {
+ buffer = create_test_buffer (i++);
+
+ pos = GST_BUFFER_TIMESTAMP (buffer) + GST_BUFFER_DURATION (buffer);
+ fail_unless (gst_pad_push (mysrcpad, buffer) == GST_FLOW_OK);
+ }
+
+ /* pushing the next buffer should result in EOS */
+ buffer = create_test_buffer (i);
+ fail_unless (gst_pad_push (mysrcpad, buffer) == GST_FLOW_EOS);
+
+ fail_unless (gst_pad_push_event (mysrcpad, gst_event_new_eos ()));
+
+ /* check that all buffers were received by our source pad */
+ fail_unless (g_list_length (buffers) == i);
+ i = 0;
+ for (iter = buffers; iter; iter = g_list_next (iter)) {
+ GstMapInfo map;
+ guint64 num;
+
+ buffer = iter->data;
+
+ gst_buffer_map (buffer, &map, GST_MAP_READ);
+
+
+ num = *(guint64 *) map.data;
+ fail_unless (i == num);
+ fail_unless (GST_BUFFER_PTS (buffer) == gst_util_uint64_scale_round (i,
+ GST_SECOND * TEST_VIDEO_FPS_D, TEST_VIDEO_FPS_N));
+ fail_unless (GST_BUFFER_DURATION (buffer) ==
+ gst_util_uint64_scale_round (GST_SECOND, TEST_VIDEO_FPS_D,
+ TEST_VIDEO_FPS_N));
+
+ gst_buffer_unmap (buffer, &map);
+ i++;
+ }
+
+ g_list_free_full (buffers, (GDestroyNotify) gst_buffer_unref);
+ buffers = NULL;
+
+ cleanup_videodecodertest ();
+}
+
+GST_END_TEST;
+
GST_START_TEST (videodecoder_backwards_playback)
{
@@ -563,6 +735,88 @@ GST_START_TEST (videodecoder_backwards_playback)
}
GST_END_TEST;
+
+
+GST_START_TEST (videodecoder_backwards_buffer_after_segment)
+{
+ GstSegment segment;
+ GstBuffer *buffer;
+ guint64 i;
+ GstClockTime pos;
+
+ setup_videodecodertester ();
+
+ gst_pad_set_active (mysrcpad, TRUE);
+ gst_element_set_state (dec, GST_STATE_PLAYING);
+ gst_pad_set_active (mysinkpad, TRUE);
+
+ send_startup_events ();
+
+ /* push a new segment with -1 rate */
+ gst_segment_init (&segment, GST_FORMAT_TIME);
+ segment.rate = -1.0;
+ segment.start = GST_SECOND;
+ segment.stop = (NUM_BUFFERS + 1) * gst_util_uint64_scale_round (GST_SECOND,
+ TEST_VIDEO_FPS_D, TEST_VIDEO_FPS_N);
+ fail_unless (gst_pad_push_event (mysrcpad, gst_event_new_segment (&segment)));
+
+ /* push buffers, the data is actually a number so we can track them */
+ i = NUM_BUFFERS;
+ pos = segment.stop;
+ while (pos >= GST_SECOND) {
+ gint target = i;
+ gint j;
+
+ g_assert (i > 0);
+
+ /* push groups of 10 buffers
+ * every number that is divisible by 10 is set as a discont,
+ * if it is divisible by 20 it is also a keyframe
+ *
+ * The logic here is that hte current i is the target, and then
+ * it pushes buffers from 'target - 10' up to target.
+ */
+ for (j = MAX (target - 10, 0); j < target; j++) {
+ buffer = create_test_buffer (j);
+
+ pos = MIN (GST_BUFFER_TIMESTAMP (buffer), pos);
+ if (j % 10 == 0)
+ GST_BUFFER_FLAG_SET (buffer, GST_BUFFER_FLAG_DISCONT);
+ if (j % 20 != 0)
+ GST_BUFFER_FLAG_SET (buffer, GST_BUFFER_FLAG_DELTA_UNIT);
+
+ fail_unless (gst_pad_push (mysrcpad, buffer) == GST_FLOW_OK);
+ i--;
+ }
+ }
+
+ /* push a discont buffer so it flushes the decoding */
+ buffer = create_test_buffer (i - 10);
+ GST_BUFFER_FLAG_SET (buffer, GST_BUFFER_FLAG_DISCONT);
+ GST_BUFFER_FLAG_SET (buffer, GST_BUFFER_FLAG_DELTA_UNIT);
+ fail_unless (gst_pad_push (mysrcpad, buffer) == GST_FLOW_EOS);
+
+ /* check that the last received buffer doesn't contain a
+ * timestamp before the segment */
+ buffer = g_list_last (buffers)->data;
+ fail_unless (GST_BUFFER_TIMESTAMP (buffer) <= segment.start
+ && GST_BUFFER_TIMESTAMP (buffer) + GST_BUFFER_DURATION (buffer) >
+ segment.start);
+
+ /* flush our decoded data queue */
+ g_list_free_full (buffers, (GDestroyNotify) gst_buffer_unref);
+ buffers = NULL;
+
+ fail_unless (gst_pad_push_event (mysrcpad, gst_event_new_eos ()));
+
+ fail_unless (buffers == NULL);
+
+ cleanup_videodecodertest ();
+}
+
+GST_END_TEST;
+
+
static Suite *
gst_videodecoder_suite (void)
{
@@ -573,8 +827,11 @@ gst_videodecoder_suite (void)
tcase_add_test (tc, videodecoder_playback);
tcase_add_test (tc, videodecoder_playback_with_events);
tcase_add_test (tc, videodecoder_playback_first_frames_not_decoded);
+ tcase_add_test (tc, videodecoder_buffer_after_segment);
tcase_add_test (tc, videodecoder_backwards_playback);
+ tcase_add_test (tc, videodecoder_backwards_buffer_after_segment);
+ tcase_add_test (tc, videodecoder_flush_events);
return s;
}
diff --git a/tests/check/libs/videoencoder.c b/tests/check/libs/videoencoder.c
index 925b2bf..e310f82 100644
--- a/tests/check/libs/videoencoder.c
+++ b/tests/check/libs/videoencoder.c
@@ -392,6 +392,109 @@ GST_START_TEST (videoencoder_events_before_eos)
GST_END_TEST;
+GST_START_TEST (videoencoder_flush_events)
+{
+ GstSegment segment;
+ GstBuffer *buffer;
+ guint64 i;
+ GList *events_iter;
+
+ setup_videoencodertester ();
+
+ gst_pad_set_active (mysrcpad, TRUE);
+ gst_element_set_state (dec, GST_STATE_PLAYING);
+ gst_pad_set_active (mysinkpad, TRUE);
+
+ send_startup_events ();
+
+ /* push a new segment */
+ gst_segment_init (&segment, GST_FORMAT_TIME);
+ fail_unless (gst_pad_push_event (mysrcpad, gst_event_new_segment (&segment)));
+
+ /* push buffers, the data is actually a number so we can track them */
+ for (i = 0; i < NUM_BUFFERS; i++) {
+ if (i % 10 == 0) {
+ GstTagList *tags;
+
+ tags = gst_tag_list_new (GST_TAG_TRACK_NUMBER, i, NULL);
+ fail_unless (gst_pad_push_event (mysrcpad, gst_event_new_tag (tags)));
+ } else {
+ buffer = create_test_buffer (i);
+
+ fail_unless (gst_pad_push (mysrcpad, buffer) == GST_FLOW_OK);
+ }
+ }
+
+ fail_unless (gst_pad_push_event (mysrcpad, gst_event_new_eos ()));
+
+ events_iter = events;
+ /* make sure the usual events have been received */
+ {
+ GstEvent *sstart = events_iter->data;
+ fail_unless (GST_EVENT_TYPE (sstart) == GST_EVENT_STREAM_START);
+ events_iter = g_list_next (events_iter);
+ }
+ {
+ GstEvent *caps_event = events_iter->data;
+ fail_unless (GST_EVENT_TYPE (caps_event) == GST_EVENT_CAPS);
+ events_iter = g_list_next (events_iter);
+ }
+ {
+ GstEvent *segment_event = events_iter->data;
+ fail_unless (GST_EVENT_TYPE (segment_event) == GST_EVENT_SEGMENT);
+ events_iter = g_list_next (events_iter);
+ }
+
+ /* check that EOS was received */
+ fail_unless (GST_PAD_IS_EOS (mysrcpad));
+ fail_unless (gst_pad_push_event (mysrcpad, gst_event_new_flush_start ()));
+ fail_unless (GST_PAD_IS_EOS (mysrcpad));
+
+ /* Check that we have tags */
+ {
+ GstEvent *tags = gst_pad_get_sticky_event (mysrcpad, GST_EVENT_TAG, 0);
+
+ fail_unless (tags != NULL);
+ gst_event_unref (tags);
+ }
+
+ /* Check that we still have a segment set */
+ {
+ GstEvent *segment =
+ gst_pad_get_sticky_event (mysrcpad, GST_EVENT_SEGMENT, 0);
+
+ fail_unless (segment != NULL);
+ gst_event_unref (segment);
+ }
+
+ fail_unless (gst_pad_push_event (mysrcpad, gst_event_new_flush_stop (TRUE)));
+ fail_if (GST_PAD_IS_EOS (mysrcpad));
+
+ /* Check that the segment was flushed on FLUSH_STOP */
+ {
+ GstEvent *segment =
+ gst_pad_get_sticky_event (mysrcpad, GST_EVENT_SEGMENT, 0);
+
+ fail_unless (segment == NULL);
+ }
+
+ /* Check the tags were not lost on FLUSH_STOP */
+ {
+ GstEvent *tags = gst_pad_get_sticky_event (mysrcpad, GST_EVENT_TAG, 0);
+
+ fail_unless (tags != NULL);
+ gst_event_unref (tags);
+
+ }
+
+ g_list_free_full (buffers, (GDestroyNotify) gst_buffer_unref);
+ buffers = NULL;
+
+ cleanup_videoencodertest ();
+}
+
+GST_END_TEST;
+
static Suite *
gst_videoencoder_suite (void)
{
@@ -403,6 +506,7 @@ gst_videoencoder_suite (void)
tcase_add_test (tc, videoencoder_tags_before_eos);
tcase_add_test (tc, videoencoder_events_before_eos);
+ tcase_add_test (tc, videoencoder_flush_events);
return s;
}
diff --git a/tools/gst-play.c b/tools/gst-play.c
index ae68eff..c467439 100644
--- a/tools/gst-play.c
+++ b/tools/gst-play.c
@@ -169,13 +169,13 @@ play_set_relative_volume (GstPlay * play, gdouble volume_step)
gdouble volume;
volume = gst_stream_volume_get_volume (GST_STREAM_VOLUME (play->playbin),
- GST_STREAM_VOLUME_FORMAT_LINEAR);
+ GST_STREAM_VOLUME_FORMAT_CUBIC);
volume = round ((volume + volume_step) * VOLUME_STEPS) / VOLUME_STEPS;
volume = CLAMP (volume, 0.0, 10.0);
gst_stream_volume_set_volume (GST_STREAM_VOLUME (play->playbin),
- GST_STREAM_VOLUME_FORMAT_LINEAR, volume);
+ GST_STREAM_VOLUME_FORMAT_CUBIC, volume);
g_print ("Volume: %.0f%% \n", volume * 100);
}
diff --git a/win32/common/_stdint.h b/win32/common/_stdint.h
index 9470177..0d7745c 100644
--- a/win32/common/_stdint.h
+++ b/win32/common/_stdint.h
@@ -1,7 +1,7 @@
#ifndef _GST_PLUGINS_BASE__STDINT_H
#define _GST_PLUGINS_BASE__STDINT_H 1
#ifndef _GENERATED_STDINT_H
-#define _GENERATED_STDINT_H "gst-plugins-base 1.3.2"
+#define _GENERATED_STDINT_H "gst-plugins-base 1.3.3"
/* generated using gnu compiler Debian clang version 3.5.0-2 (trunk) (based on LLVM 3.5.0) */
#define _STDINT_HAVE_STDINT_H 1
#include <stdint.h>
diff --git a/win32/common/config.h b/win32/common/config.h
index 7b98b02..03a480c 100644
--- a/win32/common/config.h
+++ b/win32/common/config.h
@@ -84,7 +84,7 @@
#define GST_PACKAGE_ORIGIN "Unknown package origin"
/* GStreamer package release date/time for plugins as YYYY-MM-DD */
-#define GST_PACKAGE_RELEASE_DATETIME "2014-05-21"
+#define GST_PACKAGE_RELEASE_DATETIME "2014-06-22"
/* Define if static plugins should be built */
#undef GST_PLUGIN_BUILD_STATIC
@@ -325,7 +325,7 @@
#define PACKAGE_NAME "GStreamer Base Plug-ins"
/* Define to the full name and version of this package. */
-#define PACKAGE_STRING "GStreamer Base Plug-ins 1.3.2"
+#define PACKAGE_STRING "GStreamer Base Plug-ins 1.3.3"
/* Define to the one symbol short name of this package. */
#define PACKAGE_TARNAME "gst-plugins-base"
@@ -334,7 +334,7 @@
#undef PACKAGE_URL
/* Define to the version of this package. */
-#define PACKAGE_VERSION "1.3.2"
+#define PACKAGE_VERSION "1.3.3"
/* directory where plugins are located */
#ifdef _DEBUG
@@ -368,7 +368,7 @@
#undef USE_TREMOLO
/* Version number of package */
-#define VERSION "1.3.2"
+#define VERSION "1.3.3"
/* Define WORDS_BIGENDIAN to 1 if your processor stores words with the most
significant byte first (like Motorola and SPARC, unlike Intel). */