diff --git a/docs/manual/communication.png b/docs/manual/communication.png new file mode 100644 index 0000000000..2451c491a5 Binary files /dev/null and b/docs/manual/communication.png differ diff --git a/docs/manual/diagrams-general.svg b/docs/manual/diagrams-general.svg index bb6143d09c..1a915fe8b2 100644 --- a/docs/manual/diagrams-general.svg +++ b/docs/manual/diagrams-general.svg @@ -1,5 +1,6 @@ + + inkscape:version="0.47pre4 r22446" + sodipodi:docname="diagrams-general.svg" + inkscape:output_extension="org.inkscape.output.svg.inkscape" + version="1.1"> + inkscape:snap-global="true" + inkscape:window-maximized="1"> + empopacity="0.14901961" + empspacing="5" + snapvisiblegridlinesonly="true" /> + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -7485,7 +7709,7 @@ inkscape:export-ydpi="91.230003"> @@ -8474,7 +8698,7 @@ ry="0.10631458" /> @@ -8987,11 +9211,11 @@ sodipodi:cy="25.593554" sodipodi:rx="1.3700194" sodipodi:ry="1.016466" - d="M 8.5736699,25.593554 A 1.3700194,1.016466 0 1 1 5.833631,25.593554 A 1.3700194,1.016466 0 1 1 8.5736699,25.593554 z" + d="m 8.5736699,25.593554 c 0,0.561378 -0.6133786,1.016466 -1.3700194,1.016466 -0.7566409,0 -1.3700195,-0.455088 -1.3700195,-1.016466 0,-0.561379 0.6133786,-1.016466 1.3700195,-1.016466 0.7566408,0 1.3700194,0.455087 1.3700194,1.016466 z" transform="translate(8.838843e-2,0.176776)" /> @@ -10022,7 +10246,7 @@ transform="matrix(0.6122611,0,0,0.802831,1476.1749,-155.02827)" inkscape:r_cy="true" inkscape:r_cx="true" - d="M 40.5,21 A 14.75,8.25 0 1 1 11,21 A 14.75,8.25 0 1 1 40.5,21 z" + d="m 40.5,21 c 0,4.556349 -6.6038,8.25 -14.75,8.25 C 17.6038,29.25 11,25.556349 11,21 c 0,-4.556349 6.6038,-8.25 14.75,-8.25 8.1462,0 14.75,3.693651 14.75,8.25 z" sodipodi:ry="8.25" sodipodi:rx="14.75" sodipodi:cy="21" @@ -10045,7 +10269,7 @@ sodipodi:cy="21" sodipodi:rx="14.75" sodipodi:ry="8.25" - d="M 40.5,21 A 14.75,8.25 0 1 1 11,21 A 14.75,8.25 0 1 1 40.5,21 z" + d="m 40.5,21 c 0,4.556349 -6.6038,8.25 -14.75,8.25 C 17.6038,29.25 11,25.556349 11,21 c 0,-4.556349 6.6038,-8.25 14.75,-8.25 8.1462,0 14.75,3.693651 14.75,8.25 z" inkscape:r_cx="true" inkscape:r_cy="true" transform="matrix(0.6098233,0,0,0.7906893,1476.6513,-156.59802)" /> @@ -10059,7 +10283,7 @@ transform="matrix(0.7617356,0,0,0.7512912,1475.4861,-154.40517)" inkscape:r_cy="true" inkscape:r_cx="true" - d="M 40.65864,19.008621 A 18.473166,13.435029 0 1 1 3.7123089,19.008621 A 18.473166,13.435029 0 1 1 40.65864,19.008621 z" + d="m 40.65864,19.008621 c 0,7.419962 -8.270718,13.435029 -18.473166,13.435029 -10.202447,0 -18.4731651,-6.015067 -18.4731651,-13.435029 0,-7.419961 8.2707181,-13.4350288 18.4731651,-13.4350288 10.202448,0 18.473166,6.0150678 18.473166,13.4350288 z" sodipodi:ry="13.435029" sodipodi:rx="18.473166" sodipodi:cy="19.008621" @@ -10090,7 +10314,7 @@ inkscape:export-ydpi="90"> + d="M 17,16.5 C 17,16.776142 16.776142,17 16.5,17 16.223858,17 16,16.776142 16,16.5 16,16.223858 16.223858,16 16.5,16 c 0.276142,0 0.5,0.223858 0.5,0.5 z" /> @@ -10650,7 +10874,7 @@ transform="matrix(1.0051171,0,0,1.2356645,1466.4725,-162.09851)" inkscape:r_cy="true" inkscape:r_cx="true" - d="M 40.5,21 A 14.75,8.25 0 1 1 11,21 A 14.75,8.25 0 1 1 40.5,21 z" + d="m 40.5,21 c 0,4.556349 -6.6038,8.25 -14.75,8.25 C 17.6038,29.25 11,25.556349 11,21 c 0,-4.556349 6.6038,-8.25 14.75,-8.25 8.1462,0 14.75,3.693651 14.75,8.25 z" sodipodi:ry="8.25" sodipodi:rx="14.75" sodipodi:cy="21" @@ -10666,7 +10890,7 @@ sodipodi:cy="21" sodipodi:rx="14.75" sodipodi:ry="8.25" - d="M 40.5,21 A 14.75,8.25 0 1 1 11,21 A 14.75,8.25 0 1 1 40.5,21 z" + d="m 40.5,21 c 0,4.556349 -6.6038,8.25 -14.75,8.25 C 17.6038,29.25 11,25.556349 11,21 c 0,-4.556349 6.6038,-8.25 14.75,-8.25 8.1462,0 14.75,3.693651 14.75,8.25 z" inkscape:r_cx="true" inkscape:r_cy="true" transform="matrix(0.6122611,0,0,0.802831,1476.1749,-155.02827)" /> @@ -10681,7 +10905,7 @@ transform="matrix(0.6098233,0,0,0.7906893,1476.6513,-156.59802)" inkscape:r_cy="true" inkscape:r_cx="true" - d="M 40.5,21 A 14.75,8.25 0 1 1 11,21 A 14.75,8.25 0 1 1 40.5,21 z" + d="m 40.5,21 c 0,4.556349 -6.6038,8.25 -14.75,8.25 C 17.6038,29.25 11,25.556349 11,21 c 0,-4.556349 6.6038,-8.25 14.75,-8.25 8.1462,0 14.75,3.693651 14.75,8.25 z" sodipodi:ry="8.25" sodipodi:rx="14.75" sodipodi:cy="21" @@ -10703,7 +10927,7 @@ sodipodi:cy="19.008621" sodipodi:rx="18.473166" sodipodi:ry="13.435029" - d="M 40.65864,19.008621 A 18.473166,13.435029 0 1 1 3.7123089,19.008621 A 18.473166,13.435029 0 1 1 40.65864,19.008621 z" + d="m 40.65864,19.008621 c 0,7.419962 -8.270718,13.435029 -18.473166,13.435029 -10.202447,0 -18.4731651,-6.015067 -18.4731651,-13.435029 0,-7.419961 8.2707181,-13.4350288 18.4731651,-13.4350288 10.202448,0 18.473166,6.0150678 18.473166,13.4350288 z" inkscape:r_cx="true" inkscape:r_cy="true" transform="matrix(0.7617356,0,0,0.7512912,1475.4861,-154.40517)" /> @@ -11024,7 +11248,7 @@ inkscape:export-ydpi="91.230003"> + + + file-source + + src + + ogg-demuxer + + sink + + src_01 + + vorbis-decoder + + sink + + src + sink + + + alsa-output + + sink + + + pipeline + + + + bus + + application + buffers + + messages + + queries + + events + diff --git a/docs/manual/intro-basics.xml b/docs/manual/intro-basics.xml index 779223d8b9..77bb8c7967 100644 --- a/docs/manual/intro-basics.xml +++ b/docs/manual/intro-basics.xml @@ -97,4 +97,54 @@ + + Communication + + + &GStreamer; provides several mechanisms for communication and data exchange + between the application and the pipeline. + + + + + + buffers: are objects for passing streaming data + between elements in the pipeline. Buffers always travel from sources + to sinks (downstream). + + + + + events: are objects send between elements or from + the application to elements. Events can travel upstream and downstream. + Downstream events can be synchronised to the data flow. + + + + + messages: are object send from elements over the + bus to the application. Messages can be received synchronously, but + then from the streaming thread context of the sender or asynchronously + marshalled to the main thread of the application. + + + + + queries: allow application to request information + from the pipeline. Queries are answered synchronously. + + + + +
+ &GStreamer; pipeline with different communication flows + + + + + +
+ +
+