Sophie

Sophie

distrib > Mandriva > 10.0-com > i586 > by-pkgid > f0a9f2b9c81d34eadc43f527947c0b70 > files > 94

libgstreamer0.7-devel-0.7.4-2mdk.i586.rpm

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<HTML
><HEAD
><TITLE
>Bins</TITLE
><META
NAME="GENERATOR"
CONTENT="Modular DocBook HTML Stylesheet Version 1.7"><LINK
REL="HOME"
TITLE="GStreamer Application Development Manual"
HREF="index.html"><LINK
REL="UP"
TITLE="Basic Concepts"
HREF="part-basic-concepts.html"><LINK
REL="PREVIOUS"
TITLE="Linking elements"
HREF="chapter-links.html"><LINK
REL="NEXT"
TITLE="Buffers"
HREF="chapter-buffers.html"></HEAD
><BODY
CLASS="chapter"
BGCOLOR="#FFFFFF"
TEXT="#000000"
LINK="#0000FF"
VLINK="#840084"
ALINK="#0000FF"
><DIV
CLASS="NAVHEADER"
><TABLE
SUMMARY="Header navigation table"
WIDTH="100%"
BORDER="0"
CELLPADDING="0"
CELLSPACING="0"
><TR
><TH
COLSPAN="3"
ALIGN="center"
><SPAN
CLASS="application"
>GStreamer</SPAN
> Application Development Manual</TH
></TR
><TR
><TD
WIDTH="10%"
ALIGN="left"
VALIGN="bottom"
><A
HREF="chapter-links.html"
ACCESSKEY="P"
>Prev</A
></TD
><TD
WIDTH="80%"
ALIGN="center"
VALIGN="bottom"
></TD
><TD
WIDTH="10%"
ALIGN="right"
VALIGN="bottom"
><A
HREF="chapter-buffers.html"
ACCESSKEY="N"
>Next</A
></TD
></TR
></TABLE
><HR
ALIGN="LEFT"
WIDTH="100%"></DIV
><DIV
CLASS="chapter"
><H1
><A
NAME="chapter-bins"
></A
>Chapter 8. Bins</H1
><P
> 
    A bin is a container element. You can add elements to a bin. Since a bin is 
    an element itself, it can also be added to another bin.
  </P
><P
> 
    Bins allow you to combine a group of linked elements into one logical element. You do
    not deal with the individual elements anymore but with just one element, the bin.
    We will see that this is extremely powerful when you are going to construct
    complex pipelines since it allows you to break up the pipeline in smaller chunks.
  </P
><P
> 
    The bin will also manage the elements contained in it. It will figure out how
    the data will flow in the bin and generate an optimal plan for that data flow. Plan
    generation is one of the most complicated procedures in GStreamer.
  </P
><DIV
CLASS="figure"
><A
NAME="section-bin-img"
></A
><P
><B
>Figure 8-1. Visualisation of a bin with some elements in it</B
></P
><DIV
CLASS="mediaobject"
><P
><IMG
SRC="images/bin-element.png"></P
></DIV
></DIV
><P
> 
    There are two specialized bins available to the GStreamer programmer:

    <P
></P
><UL
><LI
><P
>&#13;          a pipeline: a generic container that allows scheduling of the
          containing elements.  The toplevel bin has to be a pipeline.
          Every application thus needs at least one of these.
        </P
></LI
><LI
><P
>&#13;          a thread: a bin that will be run in a separate execution thread.
	  You will have to use this bin if you have to carefully
          synchronize audio and video, or for buffering. You will learn
	  more about threads in <A
HREF="chapter-threads.html"
>Chapter 21</A
>.
        </P
></LI
></UL
>
  </P
></DIV
><DIV
CLASS="NAVFOOTER"
><HR
ALIGN="LEFT"
WIDTH="100%"><TABLE
SUMMARY="Footer navigation table"
WIDTH="100%"
BORDER="0"
CELLPADDING="0"
CELLSPACING="0"
><TR
><TD
WIDTH="33%"
ALIGN="left"
VALIGN="top"
><A
HREF="chapter-links.html"
ACCESSKEY="P"
>Prev</A
></TD
><TD
WIDTH="34%"
ALIGN="center"
VALIGN="top"
><A
HREF="index.html"
ACCESSKEY="H"
>Home</A
></TD
><TD
WIDTH="33%"
ALIGN="right"
VALIGN="top"
><A
HREF="chapter-buffers.html"
ACCESSKEY="N"
>Next</A
></TD
></TR
><TR
><TD
WIDTH="33%"
ALIGN="left"
VALIGN="top"
>Linking elements</TD
><TD
WIDTH="34%"
ALIGN="center"
VALIGN="top"
><A
HREF="part-basic-concepts.html"
ACCESSKEY="U"
>Up</A
></TD
><TD
WIDTH="33%"
ALIGN="right"
VALIGN="top"
>Buffers</TD
></TR
></TABLE
></DIV
></BODY
></HTML
>