diff --git a/ChangeLog b/ChangeLog index cea8f2d0aa..e8c4905a93 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,64 @@ +2008-06-27 Stefan Kost + + patch by: Luc Pionchon + + * docs/manual/advanced-autoplugging.xml: + * docs/manual/advanced-threads.xml: + * docs/manual/basics-bins.xml: + * docs/manual/basics-elements.xml: + * docs/manual/basics-helloworld.xml: + * docs/manual/basics-pads.xml: + Add scale factor for pdf output. + + * docs/manual/intro-basics.xml: + Switched sections "pads" and "bins" and added a pipeline diagram. + + * docs/manual/intro-gstreamer.xml: + Added more info on gstreamer. + + * docs/manual/intro-motivation.xml: + Commented out the whole section "current problem", which sounds + historical and somehow osolete; it could be turned in a positive + way and reused to improve the design principles. + + * docs/manual/intro-preface.xml: + - Update URLs to library.gnome.org. + - Do not mention GTK+ in preliminary reading (irrelevant). + - Mention Plugin Writer's Manual and further reading only in the + previous section. + - Added a list of most relevant GObject/glib topics. + + * docs/manual/Makefile.am: + * docs/manual/bin-element-ghost.fig: + * docs/manual/bin-element-ghost.png: + * docs/manual/bin-element-noghost.fig: + * docs/manual/bin-element-noghost.png: + * docs/manual/bin-element.fig: + * docs/manual/bin-element.png: + * docs/manual/filter-element-multi.fig: + * docs/manual/filter-element-multi.png: + * docs/manual/filter-element.fig: + * docs/manual/filter-element.png: + * docs/manual/gstreamer-overview.png: + * docs/manual/hello-world.fig: + * docs/manual/hello-world.png: + * docs/manual/linked-elements.fig: + * docs/manual/linked-elements.png: + * docs/manual/mime-world.fig: + * docs/manual/mime-world.png: + * docs/manual/queue.fig: + * docs/manual/queue.png: + * docs/manual/simple-player.png: + * docs/manual/sink-element.fig: + * docs/manual/sink-element.png: + * docs/manual/src-element.fig: + * docs/manual/src-element.png: + * docs/manual/diagrams-general.svg: + * docs/manual/diagrams-pipelines.svg: + Removed .fig, added .png counterpart. + + Fixes: #539137 + 2008-06-26 Thijs Vermeir * plugins/elements/gstmultiqueue.c: diff --git a/docs/manual/Makefile.am b/docs/manual/Makefile.am index 406588e114..29394036a1 100644 --- a/docs/manual/Makefile.am +++ b/docs/manual/Makefile.am @@ -16,7 +16,7 @@ XML = $(notdir $(wildcard $(srcdir)/*.xml)) CSS = base.css # image sources -PNG_SRC = +PNG_SRC = $(notdir $(wildcard $(srcdir)/*.png)) FIG_SRC = $(notdir $(wildcard $(srcdir)/*.fig)) # extra sources to copy in build directory diff --git a/docs/manual/advanced-autoplugging.xml b/docs/manual/advanced-autoplugging.xml index 6e86146634..b76ab432dd 100644 --- a/docs/manual/advanced-autoplugging.xml +++ b/docs/manual/advanced-autoplugging.xml @@ -59,15 +59,16 @@ linkend="section-mime-img"/> shows what MIME-type belongs to each pad in this pipeline. - +
The Hello world pipeline with MIME types - +
+ Now that we have an idea how &GStreamer; identifies known media streams, we can look at methods &GStreamer; uses to setup pipelines diff --git a/docs/manual/advanced-threads.xml b/docs/manual/advanced-threads.xml index 52f6b9af63..fb191d2c5e 100644 --- a/docs/manual/advanced-threads.xml +++ b/docs/manual/advanced-threads.xml @@ -36,14 +36,16 @@ +
a two-threaded decoder with a queue - +
+ Above, we've mentioned the queue element several times now. A queue is the thread boundary element through which you can diff --git a/docs/manual/basics-bins.xml b/docs/manual/basics-bins.xml index 7d510c0eea..98b6d5eef8 100644 --- a/docs/manual/basics-bins.xml +++ b/docs/manual/basics-bins.xml @@ -30,7 +30,7 @@ Visualisation of a bin with some elements in it - + diff --git a/docs/manual/basics-elements.xml b/docs/manual/basics-elements.xml index 05e91a67a1..6a54dc10b1 100644 --- a/docs/manual/basics-elements.xml +++ b/docs/manual/basics-elements.xml @@ -35,7 +35,7 @@ Visualisation of a source element - @@ -67,7 +67,7 @@ Visualisation of a filter element - @@ -83,7 +83,7 @@ more than one output pad - @@ -112,7 +112,7 @@ Visualisation of a sink element - @@ -400,7 +400,7 @@ main (int argc, Visualisation of three linked elements - diff --git a/docs/manual/basics-helloworld.xml b/docs/manual/basics-helloworld.xml index b8220ad54e..7b0e291728 100644 --- a/docs/manual/basics-helloworld.xml +++ b/docs/manual/basics-helloworld.xml @@ -202,19 +202,20 @@ main (int argc, } - We now have created a complete pipeline. We can visualise the pipeline as follows: +
The "hello world" pipeline - +
+ diff --git a/docs/manual/basics-pads.xml b/docs/manual/basics-pads.xml index be317a6ce5..9cded27f29 100644 --- a/docs/manual/basics-pads.xml +++ b/docs/manual/basics-pads.xml @@ -602,7 +602,7 @@ link_elements_with_filter (GstElement *element1, GstElement *element2) element without ghost pads - @@ -621,7 +621,7 @@ link_elements_with_filter (GstElement *element1, GstElement *element2) element with a ghost pad - diff --git a/docs/manual/bin-element-ghost.fig b/docs/manual/bin-element-ghost.fig deleted file mode 100644 index 34327365f3..0000000000 --- a/docs/manual/bin-element-ghost.fig +++ /dev/null @@ -1,47 +0,0 @@ -#FIG 3.2 -Landscape -Center -Inches -Letter -100.00 -Single --2 -1200 2 -2 2 0 1 0 6 50 0 20 0.000 0 0 -1 0 0 5 - 3975 3600 4725 3600 4725 4125 3975 4125 3975 3600 -2 2 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 5 - 2775 2775 4725 2775 4725 4425 2775 4425 2775 2775 -2 2 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 5 - 5400 2775 7350 2775 7350 4425 5400 4425 5400 2775 -2 2 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 5 - 8025 2775 9975 2775 9975 4425 8025 4425 8025 2775 -2 2 0 1 0 6 50 0 20 0.000 0 0 -1 0 0 5 - 5400 3600 6150 3600 6150 4125 5400 4125 5400 3600 -2 2 0 1 0 6 50 0 20 0.000 0 0 -1 0 0 5 - 8025 3600 8775 3600 8775 4125 8025 4125 8025 3600 -2 2 0 1 0 6 50 0 20 0.000 0 0 -1 0 0 5 - 6600 3600 7350 3600 7350 4125 6600 4125 6600 3600 -2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 1 0 2 - 1 1 1.00 90.00 120.00 - 4575 3750 5400 3750 -2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 1 0 2 - 1 1 1.00 90.00 120.00 - 7200 3750 8025 3750 -2 2 0 1 0 7 100 0 -1 0.000 0 0 -1 0 0 5 - 1950 1950 10575 1950 10575 4800 1950 4800 1950 1950 -2 2 0 1 0 6 50 0 20 0.000 0 0 -1 0 0 5 - 1950 4125 2700 4125 2700 4650 1950 4650 1950 4125 -2 2 0 1 0 6 50 0 20 0.000 0 0 -1 0 0 5 - 2775 3600 3525 3600 3525 4125 2775 4125 2775 3600 -2 1 2 1 0 7 50 0 -1 3.000 0 0 -1 0 0 2 - 2550 4350 2850 3825 -4 0 0 50 0 16 12 0.0000 4 105 255 4200 3975 src\001 -4 0 0 50 0 16 12 0.0000 4 135 330 5550 3975 sink\001 -4 0 0 50 0 16 12 0.0000 4 135 330 8175 3975 sink\001 -4 0 0 50 0 16 12 0.0000 4 105 255 6825 3975 src\001 -4 0 0 50 0 16 12 0.0000 4 135 750 5625 3075 element2\001 -4 0 0 50 0 16 12 0.0000 4 135 750 8250 3075 element3\001 -4 0 0 50 0 16 12 0.0000 4 135 750 3000 3075 element1\001 -4 0 0 50 0 16 12 0.0000 4 135 255 2175 2250 bin\001 -4 0 0 50 0 16 12 0.0000 4 135 330 2925 3975 sink\001 -4 0 0 50 0 16 12 0.0000 4 135 330 2025 4500 sink\001 diff --git a/docs/manual/bin-element-ghost.png b/docs/manual/bin-element-ghost.png new file mode 100644 index 0000000000..5ca55dcf44 Binary files /dev/null and b/docs/manual/bin-element-ghost.png differ diff --git a/docs/manual/bin-element-noghost.fig b/docs/manual/bin-element-noghost.fig deleted file mode 100644 index 7408c1bc0e..0000000000 --- a/docs/manual/bin-element-noghost.fig +++ /dev/null @@ -1,42 +0,0 @@ -#FIG 3.2 -Landscape -Center -Inches -Letter -100.00 -Single --2 -1200 2 -2 2 0 1 0 6 50 0 20 0.000 0 0 -1 0 0 5 - 3975 3600 4725 3600 4725 4125 3975 4125 3975 3600 -2 2 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 5 - 2775 2775 4725 2775 4725 4425 2775 4425 2775 2775 -2 2 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 5 - 5400 2775 7350 2775 7350 4425 5400 4425 5400 2775 -2 2 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 5 - 8025 2775 9975 2775 9975 4425 8025 4425 8025 2775 -2 2 0 1 0 6 50 0 20 0.000 0 0 -1 0 0 5 - 5400 3600 6150 3600 6150 4125 5400 4125 5400 3600 -2 2 0 1 0 6 50 0 20 0.000 0 0 -1 0 0 5 - 8025 3600 8775 3600 8775 4125 8025 4125 8025 3600 -2 2 0 1 0 6 50 0 20 0.000 0 0 -1 0 0 5 - 6600 3600 7350 3600 7350 4125 6600 4125 6600 3600 -2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 1 0 2 - 1 1 1.00 90.00 120.00 - 4575 3750 5400 3750 -2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 1 0 2 - 1 1 1.00 90.00 120.00 - 7200 3750 8025 3750 -2 2 0 1 0 7 100 0 -1 0.000 0 0 -1 0 0 5 - 1950 1950 10575 1950 10575 4800 1950 4800 1950 1950 -2 2 0 1 0 6 50 0 20 0.000 0 0 -1 0 0 5 - 2775 3600 3525 3600 3525 4125 2775 4125 2775 3600 -4 0 0 50 0 16 12 0.0000 4 105 255 4200 3975 src\001 -4 0 0 50 0 16 12 0.0000 4 135 330 5550 3975 sink\001 -4 0 0 50 0 16 12 0.0000 4 135 330 8175 3975 sink\001 -4 0 0 50 0 16 12 0.0000 4 105 255 6825 3975 src\001 -4 0 0 50 0 16 12 0.0000 4 135 750 5625 3075 element2\001 -4 0 0 50 0 16 12 0.0000 4 135 750 8250 3075 element3\001 -4 0 0 50 0 16 12 0.0000 4 135 750 3000 3075 element1\001 -4 0 0 50 0 16 12 0.0000 4 135 255 2175 2250 bin\001 -4 0 0 50 0 16 12 0.0000 4 135 330 2925 3975 sink\001 diff --git a/docs/manual/bin-element-noghost.png b/docs/manual/bin-element-noghost.png new file mode 100644 index 0000000000..61dcb65e5e Binary files /dev/null and b/docs/manual/bin-element-noghost.png differ diff --git a/docs/manual/bin-element.fig b/docs/manual/bin-element.fig deleted file mode 100644 index a4259a6ef9..0000000000 --- a/docs/manual/bin-element.fig +++ /dev/null @@ -1,39 +0,0 @@ -#FIG 3.2 -Landscape -Center -Inches -Letter -100.00 -Single --2 -1200 2 -2 2 0 1 0 6 50 0 20 0.000 0 0 -1 0 0 5 - 3975 3600 4725 3600 4725 4125 3975 4125 3975 3600 -2 2 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 5 - 2775 2775 4725 2775 4725 4425 2775 4425 2775 2775 -2 2 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 5 - 5400 2775 7350 2775 7350 4425 5400 4425 5400 2775 -2 2 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 5 - 8025 2775 9975 2775 9975 4425 8025 4425 8025 2775 -2 2 0 1 0 6 50 0 20 0.000 0 0 -1 0 0 5 - 5400 3600 6150 3600 6150 4125 5400 4125 5400 3600 -2 2 0 1 0 6 50 0 20 0.000 0 0 -1 0 0 5 - 8025 3600 8775 3600 8775 4125 8025 4125 8025 3600 -2 2 0 1 0 6 50 0 20 0.000 0 0 -1 0 0 5 - 6600 3600 7350 3600 7350 4125 6600 4125 6600 3600 -2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 1 0 2 - 1 1 1.00 90.00 120.00 - 4575 3750 5400 3750 -2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 1 0 2 - 1 1 1.00 90.00 120.00 - 7200 3750 8025 3750 -2 2 0 1 0 7 100 0 -1 0.000 0 0 -1 0 0 5 - 1950 1950 10575 1950 10575 4800 1950 4800 1950 1950 -4 0 0 50 0 16 12 0.0000 4 105 255 4200 3975 src\001 -4 0 0 50 0 16 12 0.0000 4 135 330 5550 3975 sink\001 -4 0 0 50 0 16 12 0.0000 4 135 330 8175 3975 sink\001 -4 0 0 50 0 16 12 0.0000 4 105 255 6825 3975 src\001 -4 0 0 50 0 16 12 0.0000 4 135 750 5625 3075 element2\001 -4 0 0 50 0 16 12 0.0000 4 135 750 8250 3075 element3\001 -4 0 0 50 0 16 12 0.0000 4 135 750 3000 3075 element1\001 -4 0 0 50 0 16 12 0.0000 4 135 255 2175 2250 bin\001 diff --git a/docs/manual/bin-element.png b/docs/manual/bin-element.png new file mode 100644 index 0000000000..7c7f80d4eb Binary files /dev/null and b/docs/manual/bin-element.png differ diff --git a/docs/manual/diagrams-general.svg b/docs/manual/diagrams-general.svg new file mode 100644 index 0000000000..bb6143d09c --- /dev/null +++ b/docs/manual/diagrams-general.svg @@ -0,0 +1,14211 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + image/svg+xml + + gstreamer diagrams + + + Luc Pionchon + + + June 2008 + This diagram uses icons from the Tango Desktop Project. http://tango.freedesktop.org + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + <Element name> + + + sink + + + + src + + + <Element name> + + + sink + + + <Element name> + + + sink + + + + + + src_01 + + + + + + src_02 + + + + + + src_03 + + + + + + src_01 + + + + + + src_02 + + + file-source + + src + + ogg-demuxer + + sink + + src_01 + + vorbis-decoder + + sink + + src + + converter + + sink + + src + + alsa-output + + sink + + pipeline + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + MENU + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + R + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + file-source + + + + + + + + + + + + + + + + + + + + + + + + + + src + + + + + file-source + + src + + ogg-demuxer + + sink + + src_01 + + vorbis-decoder + + sink + + src + + audio-sink + + sink + + pipeline + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + src_02 + + + theora-decoder + + sink + + src + + video-sink + + sink + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Gstreamer pipeline for a basic ogg player + + + + theora-decoder + + sink + + src + + + + + + + + + + + + + Gstreamer "hello world" pipeline diagram + + + + file-source + + + + + + + + + + + + + + + + + Multimedia applications + media player + VoIP & video conferencing + streamingserver + video editor + pipeline architecture + gstreamer tools + 3rd party plugins + + + + + (...) + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + gst-inspectgst-launchgst-editor... + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + gstreamer core framework + - file:- http:- rtsp:- ... + - alsa- v4l2- ... + protocols + sources + formats + codecs + filters + + + + + + + + + + + + + + + + + + + media agnosticbase classesmessage busmedia type negotiationplugin systemutility librarieslanguage bindings + + gstreamer plugins + gstreamer includes over 150 plugins + + sinks + - avi- mp4- ogg- ... + - mp3- mpeg4- vorbis- ... + - converters- mixers- effetcs- ... + - alsa- xvideo- ... + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + multimedia applications + media player + VoIP & video conferencing + streamingserver + video editor + pipeline architecture + gstreamer tools + 3rd party plugins + + + + + (...) + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + gst-inspectgst-launchgst-editor + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + gstreamer core framework + - file:- http:- rtsp:- ... + - alsa- v4l2- tcp/udp- ... + protocols + sources + formats + codecs + filters + media agnosticbase classesmessage busmedia type negotiationplugin systemutility librarieslanguage bindings + + gstreamer plugins + gstreamer includes over 150 plugins + + sinks + - avi- mp4- ogg- ... + - mp3- mpeg4- vorbis- ... + - converters- mixers- effetcs- ... + - alsa- xvideo- tcp/udp- ... + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/docs/manual/diagrams-pipelines.svg b/docs/manual/diagrams-pipelines.svg new file mode 100644 index 0000000000..66228dbe92 --- /dev/null +++ b/docs/manual/diagrams-pipelines.svg @@ -0,0 +1,11923 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + image/svg+xml + + gstreamer diagrams + + + Luc Pionchon + + + June 2008 + This diagram uses icons from the Tango Desktop Project. http://tango.freedesktop.org + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + MENU + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + R + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + file-source + + src + + ogg-demuxer + + sink + + src_01 + + vorbis-decoder + + sink + + src + + audio-sink + + sink + + pipeline + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + src_02 + + + theora-decoder + + sink + + src + + video-sink + + sink + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Gstreamer pipeline for a basic ogg player + + + + + + file-source + + src + + ogg-demuxer + + sink + + src_01 + + vorbis-decoder + + sink + + src + + converter + + sink + + src + + audio-output + + sink + + pipeline + + + + Gstreamer "hello world" pipeline diagram + + + + + + + + + + + + + + + + + + source element + + src + + Chapter 5. Elements + + + filter + + sink + + src + + + + demuxer + + sink + + video + + audio + + + + sink element + + sink + + + + + source element + + src + + + + filter + + sink + + src + + + + sink element + + sink + + + + + Chapter 6. Bins + + + + + Element 1 + + src + + + + Element 2 + + sink + + src + + + + Element 3 + + sink + + + + Bin + + Chapter 8. Ghost pads + + + + + sink + + + Element 2 + + sink + + Bin + + + Element 1 + + sink + + src + + + + + + + Element 2 + + sink + + Bin + + + Element 1 + + sink + + src + + + Chapter 10. Hello world + Chapter 16. Threads + + + + + parser + + sink + + src + + + + decoder + + sink + + src + + + + play audio + + sink + + + + + + disk source + + src + + + thread + + + + + queue + + Chapter 17. MIME types + + + + file-source + + src + + ogg-demuxer + + sink + + src_01 + + vorbis-decoder + + sink + + src + + converter + + sink + + src + + audio-output + + sink + + pipeline + + + + + ? + application/ogg + audio/x-vorbis + audio/x-vorbis + audio/x-raw-float + audio/x-raw-float + audio/x-raw-int + audio/x-raw-int + + + + + + + + + + diff --git a/docs/manual/filter-element-multi.fig b/docs/manual/filter-element-multi.fig deleted file mode 100644 index a27f243716..0000000000 --- a/docs/manual/filter-element-multi.fig +++ /dev/null @@ -1,21 +0,0 @@ -#FIG 3.2 -Landscape -Center -Inches -Letter -100.00 -Single --2 -1200 2 -2 2 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 5 - 5625 2775 7575 2775 7575 4425 5625 4425 5625 2775 -2 2 0 1 0 6 50 0 20 0.000 0 0 -1 0 0 5 - 5625 3600 6375 3600 6375 4125 5625 4125 5625 3600 -2 2 0 1 0 6 50 0 20 0.000 0 0 -1 0 0 5 - 6825 3225 7575 3225 7575 3750 6825 3750 6825 3225 -2 2 0 1 0 6 50 0 20 0.000 0 0 -1 0 0 5 - 6825 3825 7575 3825 7575 4350 6825 4350 6825 3825 -4 0 0 50 0 16 12 0.0000 4 165 1200 5775 3150 demuxer\001 -4 0 0 50 0 16 12 0.0000 4 135 330 5850 3975 sink\001 -4 0 0 50 0 16 12 0.0000 4 135 465 6975 3600 video\001 -4 0 0 50 0 16 12 0.0000 4 135 465 6975 4200 audio\001 diff --git a/docs/manual/filter-element-multi.png b/docs/manual/filter-element-multi.png new file mode 100644 index 0000000000..dfbbcb1e81 Binary files /dev/null and b/docs/manual/filter-element-multi.png differ diff --git a/docs/manual/filter-element.fig b/docs/manual/filter-element.fig deleted file mode 100644 index e074faf49c..0000000000 --- a/docs/manual/filter-element.fig +++ /dev/null @@ -1,18 +0,0 @@ -#FIG 3.2 -Landscape -Center -Inches -Letter -100.00 -Single --2 -1200 2 -2 2 0 1 0 6 50 0 20 0.000 0 0 -1 0 0 5 - 6825 3600 7575 3600 7575 4125 6825 4125 6825 3600 -2 2 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 5 - 5625 2775 7575 2775 7575 4425 5625 4425 5625 2775 -2 2 0 1 0 6 50 0 20 0.000 0 0 -1 0 0 5 - 5625 3600 6375 3600 6375 4125 5625 4125 5625 3600 -4 0 0 50 0 16 12 0.0000 4 105 255 7050 3975 src\001 -4 0 0 50 0 16 12 0.0000 4 165 1200 5775 3150 filter\001 -4 0 0 50 0 16 12 0.0000 4 135 330 5850 3975 sink\001 diff --git a/docs/manual/filter-element.png b/docs/manual/filter-element.png new file mode 100644 index 0000000000..7e2ea32605 Binary files /dev/null and b/docs/manual/filter-element.png differ diff --git a/docs/manual/gstreamer-overview.png b/docs/manual/gstreamer-overview.png new file mode 100644 index 0000000000..b762ab2575 Binary files /dev/null and b/docs/manual/gstreamer-overview.png differ diff --git a/docs/manual/hello-world.fig b/docs/manual/hello-world.fig deleted file mode 100644 index a6b45fa06f..0000000000 --- a/docs/manual/hello-world.fig +++ /dev/null @@ -1,148 +0,0 @@ -#FIG 3.2 -Portrait -Center -Metric -A4 -100.000000 -Single --2 -1200 2 -0 32 #ffff00 -6 0 0 0 0 -2 3 0 1 0 0 0 0 -1 31.496063 0 0 0 0 0 5 - 7559 5196 13653 5196 13653 6566 7559 6566 7559 5196 --6 -6 0 0 0 0 -4 0 0 0 0 16 11.381102 0.0 6 0.0 0.0 7653 5385 pipeline\001 --6 -6 0 0 0 0 -2 1 0 1 0 0 0 0 -1 31.496063 0 0 0 0 0 2 - 8645 6215 8754 6215 -2 3 0 0 0 0 0 0 20 31.496063 0 0 0 0 0 4 - 8754 6260 8874 6215 8754 6170 8754 6260 --6 -6 0 0 0 0 -2 3 0 1 0 0 0 0 -1 31.496063 0 0 0 0 0 5 - 7653 5716 8645 5716 8645 6472 7653 6472 7653 5716 --6 -6 0 0 0 0 -2 3 0 1 32 32 0 -1 20 31.496063 0 0 0 0 0 5 - 8220 6094 8645 6094 8645 6336 8220 6336 8220 6094 -2 3 0 1 0 0 0 0 -1 31.496063 0 0 0 0 0 5 - 8220 6094 8645 6094 8645 6336 8220 6336 8220 6094 --6 -6 0 0 0 0 -4 0 0 0 0 16 8.535827 0.0 6 0.0 0.0 8362 6283 src\001 --6 -6 0 0 0 0 -2 3 0 1 0 0 0 0 -1 31.496063 0 0 0 0 0 5 - 8881 5716 9874 5716 9874 6472 8881 6472 8881 5716 --6 -6 0 0 0 0 -2 3 0 1 32 32 0 -1 20 31.496063 0 0 0 0 0 5 - 8881 6094 9307 6094 9307 6336 8881 6336 8881 6094 -2 3 0 1 0 0 0 0 -1 31.496063 0 0 0 0 0 5 - 8881 6094 9307 6094 9307 6336 8881 6336 8881 6094 --6 -6 0 0 0 0 -4 0 0 0 0 16 8.535827 0.0 6 0.0 0.0 8929 6283 sink\001 --6 -6 0 0 0 0 -2 3 0 1 32 32 0 -1 20 31.496063 0 0 0 0 0 5 - 9448 6094 9874 6094 9874 6336 9448 6336 9448 6094 -2 3 0 1 0 0 0 0 -1 31.496063 0 0 0 0 0 5 - 9448 6094 9874 6094 9874 6336 9448 6336 9448 6094 --6 -6 0 0 0 0 -4 0 0 0 0 16 8.535827 0.0 6 0.0 0.0 9590 6283 src\001 --6 -6 0 0 0 0 -2 3 0 1 0 0 0 0 -1 31.496063 0 0 0 0 0 5 - 10110 5716 11102 5716 11102 6472 10110 6472 10110 5716 --6 -6 0 0 0 0 -2 3 0 1 32 32 0 -1 20 31.496063 0 0 0 0 0 5 - 10110 6094 10535 6094 10535 6336 10110 6336 10110 6094 -2 3 0 1 0 0 0 0 -1 31.496063 0 0 0 0 0 5 - 10110 6094 10535 6094 10535 6336 10110 6336 10110 6094 --6 -6 0 0 0 0 -4 0 0 0 0 16 8.535827 0.0 6 0.0 0.0 10157 6283 sink\001 --6 -6 0 0 0 0 -2 3 0 1 32 32 0 -1 20 31.496063 0 0 0 0 0 5 - 10677 6094 11102 6094 11102 6336 10677 6336 10677 6094 -2 3 0 1 0 0 0 0 -1 31.496063 0 0 0 0 0 5 - 10677 6094 11102 6094 11102 6336 10677 6336 10677 6094 --6 -6 0 0 0 0 -4 0 0 0 0 16 8.535827 0.0 6 0.0 0.0 10818 6283 src\001 --6 -6 0 0 0 0 -2 3 0 1 0 0 0 0 -1 31.496063 0 0 0 0 0 5 - 11338 5716 12330 5716 12330 6472 11338 6472 11338 5716 --6 -6 0 0 0 0 -2 3 0 1 32 32 0 -1 20 31.496063 0 0 0 0 0 5 - 11338 6094 11763 6094 11763 6336 11338 6336 11338 6094 -2 3 0 1 0 0 0 0 -1 31.496063 0 0 0 0 0 5 - 11338 6094 11763 6094 11763 6336 11338 6336 11338 6094 --6 -6 0 0 0 0 -4 0 0 0 0 16 8.535827 0.0 6 0.0 0.0 11385 6283 sink\001 --6 -6 0 0 0 0 -2 3 0 1 32 32 0 -1 20 31.496063 0 0 0 0 0 5 - 11905 6094 12330 6094 12330 6336 11905 6336 11905 6094 -2 3 0 1 0 0 0 0 -1 31.496063 0 0 0 0 0 5 - 11905 6094 12330 6094 12330 6336 11905 6336 11905 6094 --6 -6 0 0 0 0 -4 0 0 0 0 16 8.535827 0.0 6 0.0 0.0 12047 6283 src\001 --6 -6 0 0 0 0 -2 3 0 1 0 0 0 0 -1 31.496063 0 0 0 0 0 5 - 12566 5716 13559 5716 13559 6472 12566 6472 12566 5716 --6 -6 0 0 0 0 -2 3 0 1 32 32 0 -1 20 31.496063 0 0 0 0 0 5 - 12566 6094 12992 6094 12992 6336 12566 6336 12566 6094 -2 3 0 1 0 0 0 0 -1 31.496063 0 0 0 0 0 5 - 12566 6094 12992 6094 12992 6336 12566 6336 12566 6094 --6 -6 0 0 0 0 -4 0 0 0 0 16 8.535827 0.0 6 0.0 0.0 12614 6283 sink\001 --6 -6 0 0 0 0 -2 1 0 1 0 0 0 0 -1 31.496063 0 0 0 0 0 2 - 9874 6215 9982 6215 -2 3 0 0 0 0 0 0 20 31.496063 0 0 0 0 0 4 - 9982 6260 10102 6215 9982 6170 9982 6260 --6 -6 0 0 0 0 -2 1 0 1 0 0 0 0 -1 31.496063 0 0 0 0 0 2 - 11102 6215 11211 6215 -2 3 0 0 0 0 0 0 20 31.496063 0 0 0 0 0 4 - 11211 6260 11331 6215 11211 6170 11211 6260 --6 -6 0 0 0 0 -2 1 0 1 0 0 0 0 -1 31.496063 0 0 0 0 0 2 - 12330 6215 12439 6215 -2 3 0 0 0 0 0 0 20 31.496063 0 0 0 0 0 4 - 12439 6260 12559 6215 12439 6170 12439 6260 --6 -6 0 0 0 0 -4 0 0 0 0 16 8.535827 0.0 6 0.0 0.0 7700 5905 file-source\001 --6 -6 0 0 0 0 -4 0 0 0 0 16 8.535827 0.0 6 0.0 0.0 8929 5905 ogg-demuxer\001 --6 -6 0 0 0 0 -4 0 0 0 0 16 8.535827 0.0 6 0.0 0.0 10157 5905 vorbis-decoder\001 --6 -6 0 0 0 0 -4 0 0 0 0 16 8.535827 0.0 6 0.0 0.0 11385 5905 converter\001 --6 -6 0 0 0 0 -4 0 0 0 0 16 8.535827 0.0 6 0.0 0.0 12614 5905 audio-output\001 --6 diff --git a/docs/manual/hello-world.png b/docs/manual/hello-world.png new file mode 100644 index 0000000000..a2748138db Binary files /dev/null and b/docs/manual/hello-world.png differ diff --git a/docs/manual/intro-basics.xml b/docs/manual/intro-basics.xml index 3d65002603..2e5c6c0882 100644 --- a/docs/manual/intro-basics.xml +++ b/docs/manual/intro-basics.xml @@ -24,31 +24,12 @@
- - Bins and pipelines - - - A bin is a container for a collection of elements. - A pipeline is a special subtype of a bin that allows execution of all - of its contained child elements. Since bins are subclasses of elements - themselves, you can mostly control a bin as if it were an element, - thereby abstracting away a lot of complexity for your application. You - can, for example change state on all elements in a bin by changing the - state of that bin itself. Bins also forward bus messages from their - contained children (such as error messages, tag messages or EOS messages). - - - A pipeline is a top-level bin. As you set it to PAUSED or PLAYING state, - data flow will start and media processing will take place. Once started, - pipelines will run in a separate thread until you stop them or the end - of the data stream is reached. - - - Pads - Pads are used to negotiate links and data flow + Pads are element's input and output, where + you can connect other elements. They used to negotiate links and + data flow between elements in &GStreamer;. A pad can be viewed as a plug or port on an element where links may be made with other elements, and through which data can @@ -84,4 +65,36 @@ GstEvent object). + + + Bins and pipelines + + + A bin is a container for a collection of elements. + A pipeline is a special subtype of a bin that allows execution of all + of its contained child elements. Since bins are subclasses of elements + themselves, you can mostly control a bin as if it were an element, + thereby abstracting away a lot of complexity for your application. You + can, for example change state on all elements in a bin by changing the + state of that bin itself. Bins also forward bus messages from their + contained children (such as error messages, tag messages or EOS messages). + + + A pipeline is a top-level bin. As you set it to PAUSED or PLAYING state, + data flow will start and media processing will take place. Once started, + pipelines will run in a separate thread until you stop them or the end + of the data stream is reached. + + +
+ &GStreamer; pipeline for a simple ogg player + + + + + +
+ +
+ diff --git a/docs/manual/intro-gstreamer.xml b/docs/manual/intro-gstreamer.xml index e744029f86..aa800ee6ed 100644 --- a/docs/manual/intro-gstreamer.xml +++ b/docs/manual/intro-gstreamer.xml @@ -47,4 +47,52 @@ API to write applications using the various plugins. + + + Specifically, &GStreamer; provides + + an API for multimedia applications + a plugin architecture + a pipeline architecture + a mechanism for media type handling/negociation + over 150 plug-ins + a set of tools + + + + + &GStreamer; plug-ins could be classified into + + protocols handling + sources: for audio and video (involves protocol plugins) + formats: parsers, formaters, muxers, demuxers, metadata, subtitles + codecs: coders and decoders + filters: converters, mixers, effects, ... + sinks: for audio and video (involves protocol plugins) + + + +
+ Gstreamer overview + + + + + +
+ + + &GStreamer; is packaged into + + gstreamer: the core package + gst-plugins-base: an essential exemplary set of elements + gst-plugins-good: a set of good-quality plug-ins under LGPL + gst-plugins-ugly: a set of good-quality plug-ins that might pose distribution problems + gst-plugins-bad: a set of plug-ins that need more quality + gst-python: the python bindings + a few others packages + + + + diff --git a/docs/manual/intro-motivation.xml b/docs/manual/intro-motivation.xml index 5ba2ed54c7..1fceebeb7c 100644 --- a/docs/manual/intro-motivation.xml +++ b/docs/manual/intro-motivation.xml @@ -1,5 +1,7 @@ - Motivation & Goals + Design principles + + + +
Clean and powerful - &GStreamer; wants to provide a clean interface to: + &GStreamer; provides a clean interface to: @@ -163,12 +167,12 @@ - - +
+
Object oriented - &GStreamer; adheres to the GLib 2.0 object model. A programmer - familiar with GLib 2.0 or older versions of GTK+ will be + &GStreamer; adheres to GObject, the GLib 2.0 object model. A programmer + familiar with GLib 2.0 or GTK+ will be comfortable with &GStreamer;. @@ -181,11 +185,11 @@ &GStreamer; intends to be similar in programming methodology to GTK+. This applies to the object model, ownership of objects, reference - counting, ... + counting, etc. - +
- +
Extensible All &GStreamer; Objects can be extended using the GObject @@ -195,10 +199,10 @@ All plugins are loaded dynamically and can be extended and upgraded independently. - +
- - Allow binary only plugins +
+ Allow binary-only plugins Plugins are shared libraries that are loaded at runtime. Since all the properties of the plugin can be set using the GObject properties, @@ -209,9 +213,9 @@ Special care has been taken to make plugins completely self-contained. All relevant aspects of plugins can be queried at run-time. - +
- +
High performance High performance is obtained by: @@ -272,9 +276,9 @@ - +
- +
Clean core/plugins separation The core of &GStreamer; is essentially media-agnostic. It only knows @@ -287,9 +291,9 @@ external to the core. These tell the core how to handle specific types of media. - +
- +
Provide a framework for codec experimentation &GStreamer; also wants to be an easy framework where codec @@ -298,7 +302,9 @@ url="http://www.xiph.org/ogg/index.html" type="http">Theora and Vorbis. - +
+
diff --git a/docs/manual/intro-preface.xml b/docs/manual/intro-preface.xml index b481bfe872..3467c96a0e 100644 --- a/docs/manual/intro-preface.xml +++ b/docs/manual/intro-preface.xml @@ -10,6 +10,10 @@ url="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/pwg/html/index.html">Plugin Writers Guide. + + Also check out the other documentation available on the &GStreamer; web site. + @@ -17,20 +21,25 @@ Preliminary reading - In order to understand this manual, you will need to have a basic - understanding of the C language. - Since &GStreamer; adheres to the GObject programming model, this guide - also assumes that you understand the basics of GObject - programming. - You may also want to have a look - at Eric Harlow's book Developing Linux Applications with - GTK+ and GDK. + In order to understand this manual, you need to have a basic + understanding of the C language. - In addition you might want to read the &GstPWG; after this manual. - Also check out the other documentation available on the &GStreamer; web site. + Since &GStreamer; adheres to the GObject programming model, this guide + also assumes that you understand the basics of GObject and glib programming. + + Especially, + + GObject instentiation + GObject properties (set/get) + GObject casting + GObject referecing/dereferencing + glib memory management + glib signals and callbacks + glib main loop + @@ -46,13 +55,13 @@ - gives you an overview of &GStreamer;'s - motivation design goals. + gives you an overview of &GStreamer;, + it's design principles and foundations. - rapidly covers the basics of &GStreamer; - application programming. At the end of that chapter, you should be + covers the basics of &GStreamer; + application programming. At the end of this part, you should be able to build your own audio player using &GStreamer; @@ -76,7 +85,7 @@ - In , you will find some random + Finally in , you will find some random information on integrating with GNOME, KDE, OS X or Windows, some debugging help and general tips to improve and simplify &GStreamer; programming. diff --git a/docs/manual/linked-elements.fig b/docs/manual/linked-elements.fig deleted file mode 100644 index a2b3a526ca..0000000000 --- a/docs/manual/linked-elements.fig +++ /dev/null @@ -1,36 +0,0 @@ -#FIG 3.2 -Landscape -Center -Inches -Letter -100.00 -Single --2 -1200 2 -2 2 0 1 0 6 50 0 20 0.000 0 0 -1 0 0 5 - 3975 3600 4725 3600 4725 4125 3975 4125 3975 3600 -2 2 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 5 - 2775 2775 4725 2775 4725 4425 2775 4425 2775 2775 -2 2 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 5 - 5400 2775 7350 2775 7350 4425 5400 4425 5400 2775 -2 2 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 5 - 8025 2775 9975 2775 9975 4425 8025 4425 8025 2775 -2 2 0 1 0 6 50 0 20 0.000 0 0 -1 0 0 5 - 5400 3600 6150 3600 6150 4125 5400 4125 5400 3600 -2 2 0 1 0 6 50 0 20 0.000 0 0 -1 0 0 5 - 8025 3600 8775 3600 8775 4125 8025 4125 8025 3600 -2 2 0 1 0 6 50 0 20 0.000 0 0 -1 0 0 5 - 6600 3600 7350 3600 7350 4125 6600 4125 6600 3600 -2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 1 0 2 - 1 1 1.00 90.00 120.00 - 4575 3750 5400 3750 -2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 1 0 2 - 1 1 1.00 90.00 120.00 - 7200 3750 8025 3750 -4 0 0 50 0 16 12 0.0000 4 105 255 4200 3975 src\001 -4 0 0 50 0 16 12 0.0000 4 135 330 5550 3975 sink\001 -4 0 0 50 0 16 12 0.0000 4 135 330 8175 3975 sink\001 -4 0 0 50 0 16 12 0.0000 4 105 255 6825 3975 src\001 -4 0 0 50 0 16 12 0.0000 4 135 750 5625 3075 filter\001 -4 0 0 50 0 16 12 0.0000 4 135 750 8250 3075 sink_element\001 -4 0 0 50 0 16 12 0.0000 4 135 750 3000 3075 source_element\001 diff --git a/docs/manual/linked-elements.png b/docs/manual/linked-elements.png new file mode 100644 index 0000000000..fe980f771b Binary files /dev/null and b/docs/manual/linked-elements.png differ diff --git a/docs/manual/mime-world.fig b/docs/manual/mime-world.fig deleted file mode 100644 index 6e8db1dd04..0000000000 --- a/docs/manual/mime-world.fig +++ /dev/null @@ -1,204 +0,0 @@ -#FIG 3.2 -Portrait -Center -Metric -Letter -100.000000 -Single --2 -1200 2 -0 32 #ffff00 -6 0 0 0 0 -2 3 0 1 0 0 0 0 -1 31.496063 0 0 0 0 0 5 - 9589 2741 11539 2741 11539 4391 9589 4391 9589 2741 --6 -6 0 0 0 0 -2 3 0 1 0 0 0 0 -1 31.496063 0 0 0 0 0 5 - 1950 1950 14923 1950 14923 4827 1950 4827 1950 1950 --6 -6 0 0 0 0 -2 3 0 1 0 0 0 0 -1 31.496063 0 0 0 0 0 5 - 2100 2741 4049 2741 4049 4391 2100 4391 2100 2741 --6 -6 0 0 0 0 -2 3 0 1 32 32 0 -1 20 31.496063 0 0 0 0 0 5 - 3300 3584 4050 3584 4050 4109 3300 4109 3300 3584 -2 3 0 1 0 0 0 0 -1 31.496063 0 0 0 0 0 5 - 3300 3584 4050 3584 4050 4109 3300 4109 3300 3584 --6 -6 0 0 0 0 -2 1 0 1 0 0 0 0 -1 31.496063 0 0 0 0 0 2 - 4049 3846 4447 3846 -2 3 0 0 0 0 0 0 20 31.496063 0 0 0 0 0 4 - 4447 3891 4567 3846 4447 3801 4447 3891 --6 -6 0 0 0 0 -2 3 0 1 0 0 0 0 -1 31.496063 0 0 0 0 0 5 - 4574 2741 6524 2741 6524 4391 4574 4391 4574 2741 --6 -6 0 0 0 0 -2 3 0 1 32 32 0 -1 20 31.496063 0 0 0 0 0 5 - 4574 3584 5325 3584 5325 4109 4574 4109 4574 3584 -2 3 0 1 0 0 0 0 -1 31.496063 0 0 0 0 0 5 - 4574 3584 5325 3584 5325 4109 4574 4109 4574 3584 --6 -6 0 0 0 0 -2 3 0 1 32 32 0 -1 20 31.496063 0 0 0 0 0 5 - 5774 3584 6524 3584 6524 4109 5774 4109 5774 3584 -2 3 0 1 0 0 0 0 -1 31.496063 0 0 0 0 0 5 - 5774 3584 6524 3584 6524 4109 5774 4109 5774 3584 --6 -6 0 0 0 0 -2 1 0 1 0 0 0 0 -1 31.496063 0 0 0 0 0 2 - 6524 3846 6997 3846 -2 3 0 0 0 0 0 0 20 31.496063 0 0 0 0 0 4 - 6997 3891 7117 3846 6997 3801 6997 3891 --6 -6 0 0 0 0 -2 3 0 1 0 0 0 0 -1 31.496063 0 0 0 0 0 5 - 7124 2741 9074 2741 9074 4391 7124 4391 7124 2741 --6 -6 0 0 0 0 -2 3 0 1 32 32 0 -1 20 31.496063 0 0 0 0 0 5 - 7124 3584 7874 3584 7874 4109 7124 4109 7124 3584 -2 3 0 1 0 0 0 0 -1 31.496063 0 0 0 0 0 5 - 7124 3584 7874 3584 7874 4109 7124 4109 7124 3584 --6 -6 0 0 0 0 -2 3 0 1 0 0 0 0 -1 31.496063 0 0 0 0 0 5 - 12239 2741 14189 2741 14189 4391 12239 4391 12239 2741 --6 -6 0 0 0 0 -2 3 0 1 32 32 0 -1 20 31.496063 0 0 0 0 0 5 - 8324 3584 9074 3584 9074 4109 8324 4109 8324 3584 -2 3 0 1 0 0 0 0 -1 31.496063 0 0 0 0 0 5 - 8324 3584 9074 3584 9074 4109 8324 4109 8324 3584 --6 -6 0 0 0 0 -2 3 0 1 32 32 0 -1 20 31.496063 0 0 0 0 0 5 - 9600 3584 10349 3584 10349 4109 9600 4109 9600 3584 -2 3 0 1 0 0 0 0 -1 31.496063 0 0 0 0 0 5 - 9600 3584 10349 3584 10349 4109 9600 4109 9600 3584 --6 -6 0 0 0 0 -2 1 0 1 0 0 0 0 -1 31.496063 0 0 0 0 0 2 - 9074 3846 9472 3846 -2 3 0 0 0 0 0 0 20 31.496063 0 0 0 0 0 4 - 9472 3891 9592 3846 9472 3801 9472 3891 --6 -6 0 0 0 0 -2 1 1 1 0 0 0 0 -1 5.000000 0 0 0 0 0 2 - 3674 4049 3674 5250 --6 -6 0 0 0 0 -2 1 1 1 0 0 0 0 -1 5.000000 0 0 0 0 0 2 - 4874 4049 4874 5250 --6 -6 0 0 0 0 -2 1 1 1 0 0 0 0 -1 5.000000 0 0 0 0 0 2 - 6149 4109 6149 5525 --6 -6 0 0 0 0 -2 1 1 1 0 0 0 0 -1 5.000000 0 0 0 0 0 2 - 7499 4049 7499 5250 --6 -6 0 0 0 0 -2 1 1 1 0 0 0 0 -1 5.000000 0 0 0 0 0 2 - 8791 4133 8791 5558 --6 -6 0 0 0 0 -2 1 1 1 0 0 0 0 -1 5.000000 0 0 0 0 0 2 - 9974 4109 9974 5250 --6 -6 0 0 0 0 -4 0 0 0 0 16 16.787126 0.0 6 0.0 0.0 2174 2250 pipeline\001 --6 -6 0 0 0 0 -4 0 0 0 0 16 16.787126 0.0 6 0.0 0.0 3548 3869 src\001 --6 -6 0 0 0 0 -4 0 0 0 0 16 16.787126 0.0 6 0.0 0.0 4758 3872 sink\001 --6 -6 0 0 0 0 -4 0 0 0 0 16 16.787126 0.0 6 0.0 0.0 6017 3872 src\001 --6 -6 0 0 0 0 -4 0 0 0 0 16 16.787126 0.0 6 0.0 0.0 7308 3872 sink\001 --6 -6 0 0 0 0 -4 0 0 0 0 16 16.787126 0.0 6 0.0 0.0 8567 3872 src\001 --6 -6 0 0 0 0 -4 0 0 0 0 16 16.787126 0.0 6 0.0 0.0 9785 3872 sink\001 --6 -6 0 0 0 0 -4 0 0 0 0 16 16.787126 0.0 6 0.0 0.0 2250 3074 file source\001 --6 -6 0 0 0 0 -4 0 0 0 0 16 16.787126 0.0 6 0.0 0.0 4724 3086 ogg demuxer\001 --6 -6 0 0 0 0 -4 0 0 0 0 16 16.787126 0.0 6 0.0 0.0 7274 3074 vorbis decoder\001 --6 -6 0 0 0 0 -4 0 0 0 0 16 16.787126 0.0 6 0.0 0.0 9749 3074 audio converter\001 --6 -6 0 0 0 0 -4 0 0 0 0 0 16.787126 0.0 6 0.0 0.0 3674 5474 ?\001 --6 -6 0 0 0 0 -4 0 0 0 0 0 16.787126 0.0 6 0.0 0.0 9424 5400 audio/x-raw-float\001 --6 -6 0 0 0 0 -4 0 0 0 0 0 16.787126 0.0 6 0.0 0.0 4349 5400 application/ogg\001 --6 -6 0 0 0 0 -4 0 0 0 0 0 16.787126 0.0 6 0.0 0.0 8215 5772 audio/x-raw-float\001 --6 -6 0 0 0 0 -4 0 0 0 0 0 16.787126 0.0 6 0.0 0.0 5808 5772 audio/x-vorbis\001 --6 -6 0 0 0 0 -4 0 0 0 0 0 16.787126 0.0 6 0.0 0.0 7124 5403 audio/x-vorbis\001 --6 -6 0 0 0 0 -4 0 0 0 0 16 16.787126 0.0 6 0.0 0.0 12367 3074 audio output\001 --6 -6 0 0 0 0 -2 3 1 1 32 32 0 -1 20 5.000000 0 0 0 0 0 5 - 12240 3584 12990 3584 12990 4109 12240 4109 12240 3584 -2 3 0 1 0 0 0 0 -1 31.496063 0 0 0 0 0 5 - 12240 3584 12990 3584 12990 4109 12240 4109 12240 3584 --6 -6 0 0 0 0 -2 3 0 1 32 32 0 -1 20 31.496063 0 0 0 0 0 5 - 10777 3584 11527 3584 11527 4109 10777 4109 10777 3584 -2 3 0 1 0 0 0 0 -1 31.496063 0 0 0 0 0 5 - 10777 3584 11527 3584 11527 4109 10777 4109 10777 3584 --6 -6 0 0 0 0 -4 0 0 0 0 16 16.787126 0.0 6 0.0 0.0 11019 3869 src\001 --6 -6 0 0 0 0 -4 0 0 0 0 16 16.787126 0.0 6 0.0 0.0 12423 3872 sink\001 --6 -6 0 0 0 0 -4 0 0 0 0 0 16.787126 0.0 6 0.0 0.0 11981 5400 audio/x-raw-int\001 --6 -6 0 0 0 0 -2 1 1 1 0 0 0 0 -1 5.000000 0 0 0 0 0 2 - 12554 4119 12554 5244 --6 -6 0 0 0 0 -2 1 1 1 0 0 0 0 -1 5.000000 0 0 0 0 0 2 - 11404 4145 11404 5570 --6 -6 0 0 0 0 -4 0 0 0 0 0 16.787126 0.0 6 0.0 0.0 10794 5772 audio/x-raw-int\001 --6 -6 0 0 0 0 -2 1 0 1 0 0 0 0 -1 31.496063 0 0 0 0 0 2 - 11527 3846 12113 3846 -2 3 0 0 0 0 0 0 20 31.496063 0 0 0 0 0 4 - 12113 3891 12233 3846 12113 3801 12113 3891 --6 diff --git a/docs/manual/mime-world.png b/docs/manual/mime-world.png new file mode 100644 index 0000000000..ac66f95839 Binary files /dev/null and b/docs/manual/mime-world.png differ diff --git a/docs/manual/queue.fig b/docs/manual/queue.fig deleted file mode 100644 index fbc552ff0f..0000000000 --- a/docs/manual/queue.fig +++ /dev/null @@ -1,63 +0,0 @@ -#FIG 3.2 -Landscape -Center -Inches -Letter -100.00 -Single --2 -1200 2 -2 2 0 1 0 6 50 0 20 0.000 0 0 -1 0 0 5 - 4575 3600 5325 3600 5325 4125 4575 4125 4575 3600 -2 2 0 1 0 6 50 0 20 0.000 0 0 -1 0 0 5 - 5775 3600 6525 3600 6525 4125 5775 4125 5775 3600 -2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 1 0 2 - 1 1 1.00 90.00 120.00 - 6525 3750 7125 3750 -2 2 0 1 0 6 50 0 20 0.000 0 0 -1 0 0 5 - 7125 3600 7875 3600 7875 4125 7125 4125 7125 3600 -2 2 0 1 0 6 50 0 20 0.000 0 0 -1 0 0 5 - 8325 3600 9075 3600 9075 4125 8325 4125 8325 3600 -2 2 0 1 0 6 50 0 20 0.000 0 0 -1 0 0 5 - 9600 3600 10350 3600 10350 4125 9600 4125 9600 3600 -2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 1 0 2 - 1 1 1.00 90.00 120.00 - 9075 3750 9600 3750 -2 2 0 1 0 7 51 0 20 0.000 0 0 -1 0 0 5 - 4575 2775 6525 2775 6525 4425 4575 4425 4575 2775 -2 2 0 1 0 7 51 0 20 0.000 0 0 -1 0 0 5 - 7125 2775 9075 2775 9075 4425 7125 4425 7125 2775 -2 2 0 1 0 7 51 0 20 0.000 0 0 -1 0 0 5 - 9600 2775 11550 2775 11550 4425 9600 4425 9600 2775 -2 2 0 1 0 7 100 0 19 0.000 0 0 -1 0 0 5 - 4425 1950 11700 1950 11700 4800 4425 4800 4425 1950 -2 2 0 1 0 7 50 0 20 0.000 0 0 -1 0 0 5 - 300 2775 2250 2775 2250 4425 300 4425 300 2775 -2 2 0 1 0 6 49 0 20 0.000 0 0 -1 0 0 5 - 1500 3600 2250 3600 2250 4125 1500 4125 1500 3600 -2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 1 0 2 - 1 1 1.00 90.00 120.00 - 2250 3750 2775 3750 -2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 1 0 2 - 1 1 1.00 90.00 120.00 - 3975 3750 4575 3750 -2 2 0 1 0 11 50 0 20 0.000 0 0 -1 0 0 5 - 2775 3375 3075 3375 3075 4200 2775 4200 2775 3375 -2 2 0 1 0 11 50 0 20 0.000 0 0 -1 0 0 5 - 3075 3375 3375 3375 3375 4200 3075 4200 3075 3375 -2 2 0 1 0 11 50 0 20 0.000 0 0 -1 0 0 5 - 3375 3375 3675 3375 3675 4200 3375 4200 3375 3375 -2 2 0 1 0 11 50 0 20 0.000 0 0 -1 0 0 5 - 3675 3375 3975 3375 3975 4200 3675 4200 3675 3375 -4 0 0 50 0 16 12 0.0000 4 135 330 4725 3975 sink\001 -4 0 0 50 0 16 12 0.0000 4 105 255 6075 3975 src\001 -4 0 0 50 0 16 12 0.0000 4 135 330 7350 3975 sink\001 -4 0 0 50 0 16 12 0.0000 4 105 255 8625 3975 src\001 -4 0 0 50 0 16 12 0.0000 4 135 330 9750 3975 sink\001 -4 0 0 50 0 16 12 0.0000 4 150 465 4725 3075 parse\001 -4 0 0 50 0 16 12 0.0000 4 135 690 7275 3075 decoder\001 -4 0 0 50 0 16 12 0.0000 4 180 930 9750 3075 play_audio\001 -4 0 0 50 0 16 12 0.0000 4 135 525 4575 2250 thread\001 -4 0 0 50 0 16 12 0.0000 4 165 1005 450 3075 disk_source\001 -4 0 0 48 0 16 12 0.0000 4 105 255 1650 3975 src\001 -4 0 0 50 0 16 12 0.0000 4 150 525 2850 3225 queue\001 diff --git a/docs/manual/queue.png b/docs/manual/queue.png new file mode 100644 index 0000000000..668d32325c Binary files /dev/null and b/docs/manual/queue.png differ diff --git a/docs/manual/simple-player.png b/docs/manual/simple-player.png new file mode 100644 index 0000000000..b3b3ca1c50 Binary files /dev/null and b/docs/manual/simple-player.png differ diff --git a/docs/manual/sink-element.fig b/docs/manual/sink-element.fig deleted file mode 100644 index 4172cd1ba2..0000000000 --- a/docs/manual/sink-element.fig +++ /dev/null @@ -1,15 +0,0 @@ -#FIG 3.2 -Landscape -Center -Inches -Letter -100.00 -Single --2 -1200 2 -2 2 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 5 - 5625 2775 7575 2775 7575 4425 5625 4425 5625 2775 -2 2 0 1 0 6 50 0 20 0.000 0 0 -1 0 0 5 - 5625 3600 6375 3600 6375 4125 5625 4125 5625 3600 -4 0 0 50 0 16 12 0.0000 4 165 1200 5775 3150 sink_element\001 -4 0 0 50 0 16 12 0.0000 4 135 330 5850 3975 sink\001 diff --git a/docs/manual/sink-element.png b/docs/manual/sink-element.png new file mode 100644 index 0000000000..6a4eaa1a37 Binary files /dev/null and b/docs/manual/sink-element.png differ diff --git a/docs/manual/src-element.fig b/docs/manual/src-element.fig deleted file mode 100644 index 04c9fcba0d..0000000000 --- a/docs/manual/src-element.fig +++ /dev/null @@ -1,15 +0,0 @@ -#FIG 3.2 -Landscape -Center -Inches -Letter -100.00 -Single --2 -1200 2 -2 2 0 1 0 6 50 0 20 0.000 0 0 -1 0 0 5 - 6825 3600 7575 3600 7575 4125 6825 4125 6825 3600 -2 2 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 5 - 5625 2775 7575 2775 7575 4425 5625 4425 5625 2775 -4 0 0 50 0 16 12 0.0000 4 105 255 7050 3975 src\001 -4 0 0 50 0 16 12 0.0000 4 165 1200 5775 3150 source_element\001 diff --git a/docs/manual/src-element.png b/docs/manual/src-element.png new file mode 100644 index 0000000000..27699e05b4 Binary files /dev/null and b/docs/manual/src-element.png differ