remove newly added files pending reintegration
[platform/upstream/gstreamer.git] / docs / manual / intro-preface.xml
1 <chapter id="chapter-intro">
2   <title>Introduction</title>
3   <para> 
4     This chapter gives you an overview of the technologies described in this
5     book.  
6   </para>
7
8   <sect1 id="section-intro-what">
9     <title>What is GStreamer?</title>
10     <para> 
11       GStreamer is a framework for creating streaming media applications.
12       The fundamental design comes from the video pipeline at Oregon Graduate
13       Institute, as well as some ideas from DirectShow.  
14     </para>
15  
16     <para>
17       GStreamer's development framework makes it possible to write any type of
18       streaming multimedia application. The GStreamer framework is designed
19       to make it easy to write applications that handle audio or video or both.
20       It isn't restricted to audio and video, and can process any kind of
21       data flow.
22       The pipeline design is made to have little overhead above what the
23       applied filters induce. This makes GStreamer a good framework for designing
24       even high-end audio applications which put high demands on latency. 
25     </para> 
26
27     <para>
28       One of the the most obvious uses of GStreamer is using it to build
29       a media player.  GStreamer already includes components for building a
30       media player that can support a very wide variety of formats, including
31       MP3, Ogg Vorbis, MPEG1, MPEG2, AVI, Quicktime, mod, and more.  GStreamer,
32       however, is much more than just another media player. Its main advantages
33       are that the pluggable components can be mixed and matched into arbitrary
34       pipelines so that it's possible to write a full-fledged video or audio
35       editing application.
36     </para> 
37
38     <para>
39       The framework is based on plugins that will provide the various codec 
40       and other functionality. The plugins can be linked and arranged in
41       a pipeline. This pipeline defines the flow of the data. Pipelines can 
42       also be edited with a GUI editor and saved as XML so that pipeline
43       libraries can be made with a minimum of effort.
44     </para> 
45
46     <para>
47       The GStreamer core function is to provide a framework for plugins, data flow 
48       and media type handling/negotiation. 
49       It also provides an API to write applications using the various plugins.
50     </para> 
51
52     <para>
53       This book is about GStreamer from a developer's point of view; it describes
54       how to write a GStreamer application using the GStreamer libraries and tools.
55       For an explanation about writing plugins, we suggest the Plugin Writers Guide.
56     </para> 
57
58   </sect1>
59 </chapter>