mirror of
https://gitlab.freedesktop.org/gstreamer/gstreamer.git
synced 2024-11-18 07:47:17 +00:00
622a80da54
Original commit message from CVS: Moved "Filter Writer's Guide" to "Plugin Writer's Guide". Divided existing info from old guide into several files, one per chapter. The guide still needs much work ...
39 lines
1.7 KiB
XML
39 lines
1.7 KiB
XML
|
|
<!-- ############ chapter ############# -->
|
|
|
|
<chapter id="cha-basics-elements">
|
|
<title>Elements, Plugins, and Filters</title>
|
|
<para>
|
|
In the &GStreamer; framework, a <emphasis>plugin</emphasis> is a specific
|
|
sort of code module that gets loaded when a program requests the
|
|
functionality that the plugin provides. A plugin is essentially a shared
|
|
code library.
|
|
<emphasis>Filters</emphasis> are an
|
|
important subset of plugins that process data, as opposed to producing or
|
|
consuming data. (Producers and consumers of data are called
|
|
<emphasis>source</emphasis> and <emphasis>sink</emphasis> plugins,
|
|
respectively.)
|
|
</para>
|
|
<para>
|
|
Elements are at the core of &GStreamer;. Without elements, &GStreamer; is
|
|
just a bunch of pipe fittings with nothing to connect. A large number of
|
|
elements (filters, sources, and sinks) ship with &GStreamer;, but extra
|
|
elements can also be written. The purpose of this guide is to help you
|
|
learn to create new elements.
|
|
</para>
|
|
<para>
|
|
An element may be constructed in several different ways, but all must
|
|
conform to the same basic rules. This guide presents one basic way to build
|
|
a filter elementA simple filter may be built with the
|
|
FilterFactory, where the only code that need be written is the actual filter
|
|
code. A more complex filter, or a source or sink, will need to be written
|
|
out fully for complete access to the features and performance possible with
|
|
&GStreamer;.
|
|
</para>
|
|
<para>
|
|
The implementation of a new element will be contained in a plugin: a single
|
|
plugin may contain the implementation of several elements, or just a single
|
|
one.
|
|
</para>
|
|
</chapter>
|
|
|