From ea9090e73fada2f174319b901ec39c4a042992d6 Mon Sep 17 00:00:00 2001 From: Julien Moutte Date: Mon, 12 Dec 2005 22:29:34 +0000 Subject: Adding documentation for videomixer on my way with a funny sample pipeline. Original commit message from CVS: 2005-12-12 Julien MOUTTE * docs/plugins/Makefile.am: * docs/plugins/gst-plugins-good-plugins-docs.sgml: * docs/plugins/gst-plugins-good-plugins-sections.txt: * docs/plugins/gst-plugins-good-plugins.hierarchy: * gst/videomixer/videomixer.c: (gst_videomixer_pad_sink_setcaps), (gst_videomixer_getcaps), (gst_videomixer_fill_queues), (gst_videomixer_update_queues), (gst_videomixer_collected): Adding documentation for videomixer on my way with a funny sample pipeline. --- gst/videomixer/videomixer.c | 42 ++++++++++++++++++++++++++++++++++++++++-- 1 file changed, 40 insertions(+), 2 deletions(-) (limited to 'gst') diff --git a/gst/videomixer/videomixer.c b/gst/videomixer/videomixer.c index 5093000e..f4b6b13b 100644 --- a/gst/videomixer/videomixer.c +++ b/gst/videomixer/videomixer.c @@ -17,6 +17,34 @@ * Boston, MA 02111-1307, USA. */ +/** + * SECTION:element-videomixer + * @short_description: Takes several AYUV video streams as input and mixes them + * together. + * + * + * + * Videomixer can only accept AYUV video streams. For each of the requested + * sink pads it will compare the incoming geometry and framerate to define the + * output parameters. Indeed output video frames will have the geometry of the + * biggest incoming video stream and the framerate of the fastest incoming one. + * + * Sample pipelines + * + * Here is a pipeline to demonstrate videomixer used together with videobox : + * + * gst-launch videotestsrc pattern=1 ! video/x-raw-yuv, framerate=\(fraction\)10/1, width=100, height=100 ! videobox border-alpha=0 alpha=0.5 top=-70 bottom=-70 right=-220 ! videomixer name=mix ! ffmpegcolorspace ! xvimagesink videotestsrc ! video/x-raw-yuv, framerate=\(fraction\)5/1, width=320, height=240 ! alpha alpha=0.7 ! mix. + * + * This should show a 320x240 pixels video test source with some transparency + * showing the background checker pattern. Another video test source with just + * the snow pattern of 100x100 pixels is overlayed on top of the first one on + * the left vertically centered with a small transparency showing the first + * video test source behind and the checker pattern under it. Note that the + * framerate of the output video is 10 frames per second. + * + * + */ + #ifdef HAVE_CONFIG_H #include "config.h" #endif @@ -228,8 +256,13 @@ gst_videomixer_pad_set_property (GObject * object, guint prop_id, } /** - * GstVideoMixerBackground: - */ + * GstVideoMixerBackground: + * @VIDEO_MIXER_BACKGROUND_CHECKER: checker pattern background + * @VIDEO_MIXER_BACKGROUND_BLACK: solid color black background + * @VIDEO_MIXER_BACKGROUND_WHITE: solid color white background + * + * The different backgrounds videomixer can blend over. + */ typedef enum { VIDEO_MIXER_BACKGROUND_CHECKER, @@ -238,6 +271,11 @@ typedef enum } GstVideoMixerBackground; +/** + * GstVideoMixer: + * + * The opaque #GstVideoMixer structure. + */ struct _GstVideoMixer { GstElement element; -- cgit