2000-08-16 21:38:57 +00:00
|
|
|
<chapter id="cha-intro">
|
|
|
|
<title>Introduction</title>
|
|
|
|
<para>
|
|
|
|
This chapter gives you an overview of the technologies described in this
|
|
|
|
book.
|
|
|
|
</para>
|
|
|
|
|
|
|
|
<sect1 id="sec-intro-what">
|
|
|
|
<title>What is GStreamer?</title>
|
|
|
|
<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>
|
2002-06-11 16:06:10 +00:00
|
|
|
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 either audio or video or both. The pipeline design is made to have
|
|
|
|
no extra overhead above what the applied filters induce. This makes GStreamer a good framework for designing
|
|
|
|
even high-end audio applications which puts high demands on latency.
|
2000-08-16 21:38:57 +00:00
|
|
|
</para>
|
|
|
|
|
2001-01-04 23:35:50 +00:00
|
|
|
<para>
|
2002-06-11 16:06:10 +00:00
|
|
|
One of the 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, Mpeg1, Mpeg2, Avi, Quicktime, mod
|
|
|
|
and so on.
|
2001-01-04 23:35:50 +00:00
|
|
|
GStreamer, however, is much more than just another media player. Its
|
2002-07-24 19:46:42 +00:00
|
|
|
main advantages are that the pluggable components can be mixed and matched into
|
|
|
|
abitrary pipelines so that it's possible
|
2002-04-07 23:32:16 +00:00
|
|
|
to write a full fledged video or audio editing application.
|
2001-01-04 23:35:50 +00:00
|
|
|
</para>
|
|
|
|
|
2000-08-16 21:38:57 +00:00
|
|
|
<para>
|
2002-04-07 23:32:16 +00:00
|
|
|
The framework is based on plugins that will provide the various codec
|
2000-08-16 21:38:57 +00:00
|
|
|
and other functionality. The plugins can be connected and arranged in
|
2001-01-04 23:35:50 +00:00
|
|
|
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.
|
2000-08-16 21:38:57 +00:00
|
|
|
</para>
|
|
|
|
|
2001-07-07 15:30:39 +00:00
|
|
|
<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>
|
|
|
|
|
2000-08-16 21:38:57 +00:00
|
|
|
<para>
|
|
|
|
This book is about GStreamer from a developer's point of view; it describes
|
|
|
|
how to write a GStreamer application using the GStreamer libraries and tools.
|
2002-07-24 19:46:42 +00:00
|
|
|
For an explanation about writing plugins, we suggest the Plugin Writers Guide.
|
2000-08-16 21:38:57 +00:00
|
|
|
</para>
|
|
|
|
|
|
|
|
</sect1>
|
|
|
|
</chapter>
|