GStreamer Plugin Writer's Guide

Richard John Boulton

Erik Walthinsen

Steve Baker

Leif Johnson

Legal Notice
Table of Contents
I. Introduction
Preface
Who Should Read This Guide?
Preliminary Reading
Structure of This Guide
Basic Concepts
Elements and Plugins
Pads
Buffers
Types and Properties
Events
II. Building a Filter
Constructing the Boilerplate
Getting the Gstreamer Plugin Templates
Using the Project Stamp
Examining the Basic Code
Creating a Filter With FilterFactory (Future)
GstElementDetails
Constructor Functions
The plugin_init function
Specifying the pads
The chain function
What are states?
Mangaging filter state
Adding Arguments
Signals
Initialization
Instantiating the plugins
Linking the plugins
Running the pipeline
III. Advanced Filter Concepts
How scheduling works
How a loopfunc works
Adding a second output
Modifying the test application
Types and Properties
Building a Simple Format for Testing
A Simple Mime Type
Type Properties
Typefind Functions and Autoplugging
Request pads
Supporting Dynamic Parameters
Comparing Dynamic Parameters with GObject Properties
Getting Started
Defining Parameter Specificiations
Direct Method
Callback Method
Array Method
The Data Processing Loop
DParam Manager Modes
DParam Manager Modes
IV. Other Element Types
Writing a Source
Writing a Sink
Writing an Autoplugger
V. Appendices
Things to check when writing a filter
Things to check when writing a source or sink