<chapter id="chapter-gstreamer">
  <title>What is &GStreamer;?</title>

  <!-- ############ sect1 ############# -->

<!--  <sect1 id="section-intro-what"> --><!-- synchronize with PWG -->
    <para> 
      &GStreamer; is a framework for creating streaming media applications.
      The fundamental design comes from the video pipeline at Oregon Graduate
      Institute, as well as some ideas from DirectShow.  
    </para>
 
    <para>
      &GStreamer;'s development framework makes it possible to write any
      type of streaming multimedia application. The &GStreamer; framework
      is designed to make it easy to write applications that handle audio
      or video or both. It isn't restricted to audio and video, and can
      process any kind of data flow.
      The pipeline design is made to have little overhead above what the
      applied filters induce. This makes &GStreamer; a good framework for
      designing even high-end audio applications which put high demands on
      latency. 
    </para> 

    <para>
      One of the most obvious uses of &GStreamer; is using it to build
      a media player. &GStreamer; already includes components for building a
      media player that can support a very wide variety of formats, including
      MP3, Ogg/Vorbis, MPEG-1/2, AVI, Quicktime, mod, and more. &GStreamer;,
      however, is much more than just another media player. Its main advantages
      are that the pluggable components can be mixed and matched into arbitrary
      pipelines so that it's possible to write a full-fledged video or audio
      editing application.
    </para> 

    <para>
      The framework is based on plugins that will provide the various codec 
      and other functionality. The plugins can be linked and arranged in
      a pipeline. This pipeline defines the flow of the data. Pipelines can 
      also be edited with a GUI editor and saved as XML so that pipeline
      libraries can be made with a minimum of effort.
    </para> 

    <para>
      The &GStreamer; core function is to provide a framework for plugins,
      data flow and media type handling/negotiation. It also provides an
      API to write applications using the various plugins.
    </para> 


    <para>
      Specifically, &GStreamer; provides
      <itemizedlist>
        <listitem><para>an API for multimedia applications</para></listitem>
        <listitem><para>a plugin architecture</para></listitem>
        <listitem><para>a pipeline architecture</para></listitem>
        <listitem><para>a mechanism for media type handling/negotiation</para></listitem>
        <listitem><para>a mechanism for synchronization</para></listitem>
        <listitem><para>over 250 plug-ins providing more than 1000 elements</para></listitem>
        <listitem><para>a set of tools</para></listitem>
      </itemizedlist>
    </para> 

    <para>
      &GStreamer; plug-ins could be classified into
      <itemizedlist>
	<listitem><para>protocols handling</para></listitem>
	<listitem><para>sources: for audio and video (involves protocol plugins)</para></listitem>
	<listitem><para>formats: parsers, formaters, muxers, demuxers, metadata, subtitles</para></listitem>
	<listitem><para>codecs: coders and decoders</para></listitem>
	<listitem><para>filters: converters, mixers, effects, ...</para></listitem>
	<listitem><para>sinks: for audio and video (involves protocol plugins)</para></listitem>
      </itemizedlist>
    </para> 
    
    <figure float="1" id="section-gstreamer-img">
      <title>Gstreamer overview</title>
      <mediaobject>
        <imageobject>
          <imagedata scale="75" fileref="images/gstreamer-overview.&image;" format="&IMAGE;" />
        </imageobject>
      </mediaobject>  
    </figure>

    <para>
      &GStreamer; is packaged into
      <itemizedlist>
        <listitem><para>gstreamer: the core package</para></listitem>
        <listitem><para>gst-plugins-base: an essential exemplary set of elements</para></listitem>
        <listitem><para>gst-plugins-good: a set of good-quality plug-ins under LGPL</para></listitem>
        <listitem><para>gst-plugins-ugly: a set of good-quality plug-ins that might pose distribution problems</para></listitem>
        <listitem><para>gst-plugins-bad: a set of plug-ins that need more quality</para></listitem>
        <listitem><para>gst-libav: a set of plug-ins that wrap libav for decoding and encoding</para></listitem>
        <listitem><para>a few others packages</para></listitem>
      </itemizedlist>
    </para> 


</chapter>
