docs/plugins/: Updated version.

Original commit message from CVS:
2005-11-26  Julien MOUTTE  <julien@moutte.net>

* docs/plugins/Makefile.am:
* docs/plugins/gst-plugins-base-plugins-docs.sgml:
* docs/plugins/gst-plugins-base-plugins-sections.txt:
* docs/plugins/inspect/plugin-adder.xml:
* docs/plugins/inspect/plugin-alsa.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-decodebin.xml:
* docs/plugins/inspect/plugin-ffmpegcolorspace.xml:
* docs/plugins/inspect/plugin-gnomevfs.xml:
* docs/plugins/inspect/plugin-ogg.xml:
* docs/plugins/inspect/plugin-playbin.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-video4linux.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: Updated version.
* sys/ximage/ximagesink.c: Adding documentation for ximagesink.
This commit is contained in:
Julien Moutte 2005-11-26 14:44:08 +00:00
parent b8206860b0
commit f663c82d02
28 changed files with 175 additions and 46 deletions

View file

@ -1,3 +1,33 @@
2005-11-26 Julien MOUTTE <julien@moutte.net>
* docs/plugins/Makefile.am:
* docs/plugins/gst-plugins-base-plugins-docs.sgml:
* docs/plugins/gst-plugins-base-plugins-sections.txt:
* docs/plugins/inspect/plugin-adder.xml:
* docs/plugins/inspect/plugin-alsa.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-decodebin.xml:
* docs/plugins/inspect/plugin-ffmpegcolorspace.xml:
* docs/plugins/inspect/plugin-gnomevfs.xml:
* docs/plugins/inspect/plugin-ogg.xml:
* docs/plugins/inspect/plugin-playbin.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-video4linux.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: Updated version.
* sys/ximage/ximagesink.c: Adding documentation for ximagesink.
2005-11-26 Edward Hervey <edward@fluendo.com>
* gst/audiorate/gstaudiorate.c: (gst_audiorate_chain):

View file

@ -84,7 +84,8 @@ EXTRA_HFILES = \
$(top_srcdir)/gst/tcp/gstmultifdsink.h \
$(top_srcdir)/gst/tcp/gsttcpserversink.h \
$(top_srcdir)/gst/videotestsrc/gstvideotestsrc.h \
$(top_srcdir)/gst/volume/gstvolume.h
$(top_srcdir)/gst/volume/gstvolume.h \
$(top_srcdir)/sys/ximage/ximagesink.h
# Images to copy into HTML directory.
HTML_IMAGES =

View file

@ -24,6 +24,7 @@
<xi:include href="xml/element-videotestsrc.xml" />
<xi:include href="xml/element-volume.xml" />
<xi:include href="xml/element-vorbisenc.xml" />
<xi:include href="xml/element-ximagesink.xml" />
</chapter>
<chapter>

View file

@ -87,6 +87,13 @@ GstVorbisEnc
GstVorbisEncClass
</SECTION>
<SECTION>
<FILE>element-ximagesink</FILE>
<TITLE>ximagesink</TITLE>
GstXImageSink
<SUBSECTION Standard>
GstXImagesSinkClass
</SECTION>
<SECTION>
<FILE>private</FILE>

View file

@ -3,10 +3,10 @@
<description>Adds multiple streams</description>
<filename>../../gst/adder/.libs/libgstadder.so</filename>
<basename>libgstadder.so</basename>
<version>0.9.6</version>
<version>0.9.6.1</version>
<license>LGPL</license>
<source>gst-plugins-base</source>
<package>GStreamer Base Plug-ins source release</package>
<package>GStreamer Base Plug-ins CVS/prerelease</package>
<origin>Unknown package origin</origin>
<elements>
<element>

View file

@ -3,10 +3,10 @@
<description>ALSA plugin library</description>
<filename>../../ext/alsa/.libs/libgstalsa.so</filename>
<basename>libgstalsa.so</basename>
<version>0.9.6</version>
<version>0.9.6.1</version>
<license>LGPL</license>
<source>gst-plugins-base</source>
<package>GStreamer Base Plug-ins source release</package>
<package>GStreamer Base Plug-ins CVS/prerelease</package>
<origin>Unknown package origin</origin>
<elements>
<element>

View file

@ -3,10 +3,10 @@
<description>Convert audio to different formats</description>
<filename>../../gst/audioconvert/.libs/libgstaudioconvert.so</filename>
<basename>libgstaudioconvert.so</basename>
<version>0.9.6</version>
<version>0.9.6.1</version>
<license>LGPL</license>
<source>gst-plugins-base</source>
<package>GStreamer Base Plug-ins source release</package>
<package>GStreamer Base Plug-ins CVS/prerelease</package>
<origin>Unknown package origin</origin>
<elements>
<element>

View file

@ -3,10 +3,10 @@
<description>Adjusts audio frames</description>
<filename>../../gst/audiorate/.libs/libgstaudiorate.so</filename>
<basename>libgstaudiorate.so</basename>
<version>0.9.6</version>
<version>0.9.6.1</version>
<license>LGPL</license>
<source>gst-plugins-base</source>
<package>GStreamer Base Plug-ins source release</package>
<package>GStreamer Base Plug-ins CVS/prerelease</package>
<origin>Unknown package origin</origin>
<elements>
<element>

View file

@ -3,10 +3,10 @@
<description>Resamples audio</description>
<filename>../../gst/audioresample/.libs/libgstaudioresample.so</filename>
<basename>libgstaudioresample.so</basename>
<version>0.9.6</version>
<version>0.9.6.1</version>
<license>LGPL</license>
<source>gst-plugins-base</source>
<package>GStreamer Base Plug-ins source release</package>
<package>GStreamer Base Plug-ins CVS/prerelease</package>
<origin>Unknown package origin</origin>
<elements>
<element>

View file

@ -3,10 +3,10 @@
<description>Creates audio test signals of given frequency and volume</description>
<filename>../../gst/audiotestsrc/.libs/libgstaudiotestsrc.so</filename>
<basename>libgstaudiotestsrc.so</basename>
<version>0.9.6</version>
<version>0.9.6.1</version>
<license>LGPL</license>
<source>gst-plugins-base</source>
<package>GStreamer Base Plug-ins source release</package>
<package>GStreamer Base Plug-ins CVS/prerelease</package>
<origin>Unknown package origin</origin>
<elements>
<element>

View file

@ -3,10 +3,10 @@
<description>decoder bin</description>
<filename>../../gst/playback/.libs/libgstdecodebin.so</filename>
<basename>libgstdecodebin.so</basename>
<version>0.9.6</version>
<version>0.9.6.1</version>
<license>LGPL</license>
<source>gst-plugins-base</source>
<package>GStreamer Base Plug-ins source release</package>
<package>GStreamer Base Plug-ins CVS/prerelease</package>
<origin>Unknown package origin</origin>
<elements>
<element>

View file

@ -3,7 +3,7 @@
<description>colorspace conversion copied from FFMpeg 0.4.9-pre1</description>
<filename>../../gst/ffmpegcolorspace/.libs/libgstffmpegcolorspace.so</filename>
<basename>libgstffmpegcolorspace.so</basename>
<version>0.9.6</version>
<version>0.9.6.1</version>
<license>LGPL</license>
<source>gst-plugins-base</source>
<package>FFMpeg</package>

View file

@ -3,10 +3,10 @@
<description>elements to read from and write to Gnome-VFS uri's</description>
<filename>../../ext/gnomevfs/.libs/libgstgnomevfs.so</filename>
<basename>libgstgnomevfs.so</basename>
<version>0.9.6</version>
<version>0.9.6.1</version>
<license>LGPL</license>
<source>gst-plugins-base</source>
<package>GStreamer Base Plug-ins source release</package>
<package>GStreamer Base Plug-ins CVS/prerelease</package>
<origin>Unknown package origin</origin>
<elements>
<element>

View file

@ -3,10 +3,10 @@
<description>ogg stream manipulation (info about ogg: http://xiph.org)</description>
<filename>../../ext/ogg/.libs/libgstogg.so</filename>
<basename>libgstogg.so</basename>
<version>0.9.6</version>
<version>0.9.6.1</version>
<license>LGPL</license>
<source>gst-plugins-base</source>
<package>GStreamer Base Plug-ins source release</package>
<package>GStreamer Base Plug-ins CVS/prerelease</package>
<origin>Unknown package origin</origin>
<elements>
<element>

View file

@ -3,10 +3,10 @@
<description>player bin</description>
<filename>../../gst/playback/.libs/libgstplaybin.so</filename>
<basename>libgstplaybin.so</basename>
<version>0.9.6</version>
<version>0.9.6.1</version>
<license>LGPL</license>
<source>gst-plugins-base</source>
<package>GStreamer Base Plug-ins source release</package>
<package>GStreamer Base Plug-ins CVS/prerelease</package>
<origin>Unknown package origin</origin>
<elements>
<element>

View file

@ -3,10 +3,10 @@
<description>Subtitle (.sub) file parsing</description>
<filename>../../gst/subparse/.libs/libgstsubparse.so</filename>
<basename>libgstsubparse.so</basename>
<version>0.9.6</version>
<version>0.9.6.1</version>
<license>LGPL</license>
<source>gst-plugins-base</source>
<package>GStreamer Base Plug-ins source release</package>
<package>GStreamer Base Plug-ins CVS/prerelease</package>
<origin>Unknown package origin</origin>
<elements>
<element>

View file

@ -3,10 +3,10 @@
<description>transfer data over the network via TCP</description>
<filename>../../gst/tcp/.libs/libgsttcp.so</filename>
<basename>libgsttcp.so</basename>
<version>0.9.6</version>
<version>0.9.6.1</version>
<license>LGPL</license>
<source>gst-plugins-base</source>
<package>GStreamer Base Plug-ins source release</package>
<package>GStreamer Base Plug-ins CVS/prerelease</package>
<origin>Unknown package origin</origin>
<elements>
<element>

View file

@ -3,10 +3,10 @@
<description>Theora plugin library</description>
<filename>../../ext/theora/.libs/libgsttheora.so</filename>
<basename>libgsttheora.so</basename>
<version>0.9.6</version>
<version>0.9.6.1</version>
<license>LGPL</license>
<source>gst-plugins-base</source>
<package>GStreamer Base Plug-ins source release</package>
<package>GStreamer Base Plug-ins CVS/prerelease</package>
<origin>Unknown package origin</origin>
<elements>
<element>

View file

@ -3,10 +3,10 @@
<description>default typefind functions</description>
<filename>../../gst/typefind/.libs/libgsttypefindfunctions.so</filename>
<basename>libgsttypefindfunctions.so</basename>
<version>0.9.6</version>
<version>0.9.6.1</version>
<license>LGPL</license>
<source>gst-plugins-base</source>
<package>GStreamer Base Plug-ins source release</package>
<package>GStreamer Base Plug-ins CVS/prerelease</package>
<origin>Unknown package origin</origin>
<elements>

View file

@ -3,10 +3,10 @@
<description>elements for Video 4 Linux</description>
<filename>../../sys/v4l/.libs/libgstvideo4linux.so</filename>
<basename>libgstvideo4linux.so</basename>
<version>0.9.6</version>
<version>0.9.6.1</version>
<license>LGPL</license>
<source>gst-plugins-base</source>
<package>GStreamer Base Plug-ins source release</package>
<package>GStreamer Base Plug-ins CVS/prerelease</package>
<origin>Unknown package origin</origin>
<elements>
<element>

View file

@ -3,10 +3,10 @@
<description>Adjusts video frames</description>
<filename>../../gst/videorate/.libs/libgstvideorate.so</filename>
<basename>libgstvideorate.so</basename>
<version>0.9.6</version>
<version>0.9.6.1</version>
<license>LGPL</license>
<source>gst-plugins-base</source>
<package>GStreamer Base Plug-ins source release</package>
<package>GStreamer Base Plug-ins CVS/prerelease</package>
<origin>Unknown package origin</origin>
<elements>
<element>

View file

@ -3,10 +3,10 @@
<description>Resizes video</description>
<filename>../../gst/videoscale/.libs/libgstvideoscale.so</filename>
<basename>libgstvideoscale.so</basename>
<version>0.9.6</version>
<version>0.9.6.1</version>
<license>LGPL</license>
<source>gst-plugins-base</source>
<package>GStreamer Base Plug-ins source release</package>
<package>GStreamer Base Plug-ins CVS/prerelease</package>
<origin>Unknown package origin</origin>
<elements>
<element>

View file

@ -3,10 +3,10 @@
<description>Creates a test video stream</description>
<filename>../../gst/videotestsrc/.libs/libgstvideotestsrc.so</filename>
<basename>libgstvideotestsrc.so</basename>
<version>0.9.6</version>
<version>0.9.6.1</version>
<license>LGPL</license>
<source>gst-plugins-base</source>
<package>GStreamer Base Plug-ins source release</package>
<package>GStreamer Base Plug-ins CVS/prerelease</package>
<origin>Unknown package origin</origin>
<elements>
<element>

View file

@ -3,10 +3,10 @@
<description>element for controlling audio volume</description>
<filename>../../gst/volume/.libs/libgstvolume.so</filename>
<basename>libgstvolume.so</basename>
<version>0.9.6</version>
<version>0.9.6.1</version>
<license>LGPL</license>
<source>gst-plugins-base</source>
<package>GStreamer Base Plug-ins source release</package>
<package>GStreamer Base Plug-ins CVS/prerelease</package>
<origin>Unknown package origin</origin>
<elements>
<element>

View file

@ -3,10 +3,10 @@
<description>Vorbis plugin library</description>
<filename>../../ext/vorbis/.libs/libgstvorbis.so</filename>
<basename>libgstvorbis.so</basename>
<version>0.9.6</version>
<version>0.9.6.1</version>
<license>LGPL</license>
<source>gst-plugins-base</source>
<package>GStreamer Base Plug-ins source release</package>
<package>GStreamer Base Plug-ins CVS/prerelease</package>
<origin>Unknown package origin</origin>
<elements>
<element>

View file

@ -3,10 +3,10 @@
<description>X11 video output element based on standard Xlib calls</description>
<filename>../../sys/ximage/.libs/libgstximagesink.so</filename>
<basename>libgstximagesink.so</basename>
<version>0.9.6</version>
<version>0.9.6.1</version>
<license>LGPL</license>
<source>gst-plugins-base</source>
<package>GStreamer Base Plug-ins source release</package>
<package>GStreamer Base Plug-ins CVS/prerelease</package>
<origin>Unknown package origin</origin>
<elements>
<element>

View file

@ -3,10 +3,10 @@
<description>XFree86 video output plugin using Xv extension</description>
<filename>../../sys/xvimage/.libs/libgstxvimagesink.so</filename>
<basename>libgstxvimagesink.so</basename>
<version>0.9.6</version>
<version>0.9.6.1</version>
<license>LGPL</license>
<source>gst-plugins-base</source>
<package>GStreamer Base Plug-ins source release</package>
<package>GStreamer Base Plug-ins CVS/prerelease</package>
<origin>Unknown package origin</origin>
<elements>
<element>

View file

@ -17,6 +17,96 @@
* Boston, MA 02111-1307, USA.
*/
/**
* SECTION:element-ximagesink
*
* <refsect2>
* <para>
* XImageSink renders video frames to a drawable (XWindow) on a local or remote
* display. This element can receive a Window ID from the application through
* the XOverlay interface and will then render video frames in this drawable.
* If no Window ID was provided by the application, the element will create its
* own internal window and render into it.
* </para>
* <title>Scaling</title>
* <para>
* As standard XImage rendering to a drawable is not scaled, XImageSink will use
* reverse caps negotiation to try to get scaled video frames for the drawable.
* This is accomplished by asking the peer pad if it accepts some different caps
* which in most cases implies that there is a scaling element in the pipeline,
* or that an element generating the video frames can generate them with a
* different geometry. This mechanism is handled during buffer allocations, for
* each allocation request the video sink will check the drawable geometry, look
* at the
* <link linkend="GstXImageSink--force-aspect-ratio">force-aspect-ratio</link>
* property, calculate the geometry of desired video frames and then check that
* the peer pad accept those new caps. If it does it will then allocate a buffer
* in video memory with this new geometry and return it with the new caps.
* </para>
* <title>Events</title>
* <para>
* XImageSink creates a thread to handle events coming from the drawable. There
* are several kind of events that can be grouped in 2 big categories: input
* events and window state related events. Input events will be translated to
* navigation events and pushed upstream for other elements to react on them.
* This includes events such as pointer moves, key press/release, clicks etc...
* Other events are used to handle the drawable appearance even when the data
* is not flowing (GST_STATE_PAUSED). That means that even when the element is
* paused, it will receive expose events from the drawable and draw the latest
* frame with correct borders/aspect-ratio.
* </para>
* <title>Pixel aspect ratio</title>
* <para>
* When changing state to GST_STATE_READY, XImageSink will open a connection to
* the display specified in the
* <link linkend="GstXImageSink--display">display</link> property or the default
* display if nothing specified. Once this connection is open it will inspect
* the display configuration including the physical display geometry and
* then calculate the pixel aspect ratio. When caps negotiation will occur, the
* video sink will set the calculated pixel aspect ratio on the caps to make
* sure that incoming video frames will have the correct pixel aspect ratio for
* this display. Sometimes the calculated pixel aspect ratio can be wrong, it is
* then possible to enforce a specific pixel aspect ratio using the
* <link linkend="GstXImageSink--pixel-aspect-ratio">pixel-aspect-ratio</link>
* property.
* </para>
* <title>Examples</title>
* <para>
* Here is a simple pipeline to test reverse negotiation :
* <programlisting>
* gst-launch -v videotestsrc ! queue ! ximagesink
* </programlisting>
* When the test video signal appears you can resize the window and see that
* scaled buffers of the desired size are going to arrive with a short delay.
* This illustrates how buffers of desired size are allocated along the way.
* If you take away the queue, scaling will happen almost immediately.
* </para>
* <para>
* Here is a simple pipeline to test navigation events :
* <programlisting>
* gst-launch -v videotestsrc ! navigationtest ! ffmpegcolorspace ! ximagesink
* </programlisting>
* While moving the mouse pointer over the test signal you will see a black box
* following the mouse pointer. If you press the mouse button somewhere on the
* video and release it somewhere else a green box will appear where you pressed
* the button and a red one where you released it. (The navigationtest element
* is part of gst-plugins-good.)
* </para>
* <para>
* Here is a simple pipeline to test pixel aspect ratio :
* <programlisting>
* gst-launch -v videotestsrc ! video/x-raw-rgb, pixel-aspect-ratio=(fraction)4/3 ! videoscale ! ximagesink
* </programlisting>
* This is faking a 4/3 pixel aspect ratio caps on video frames produced by
* videotestsrc, in most cases the pixel aspect ratio of the display will be
* 1/1. This means that videoscale will have to do the scaling to convert
* incoming frames to a size that will match the display pixel aspect ratio
* (from 320x240 to 320x180 in this case). Note that you might have to escape
* some characters for your shell like '\(fraction\)'.
* </para>
* </refsect2>
*/
#ifdef HAVE_CONFIG_H
#include "config.h"
#endif