Gstreamer Media library supporting arbitrary formats and filter graphs. GStreamer is a framework for constructing graphs of various filters (termed elements here) that will handly streaming media. Any discreet (packetizable) media type is supported, with provisions for automatically determining source type. Metadata can be passed with all data to provide formatting/framing information. Plugins are heavily used to provide for all elements, allowing one to construct plugins outside of the GST library, even released binary-only if license require (please don't). GStreamer borrows heavily from both the OGI media pipeline and Microsoft's DirectShow, hopefully taking the best of both and leaving the cruft behind. Its interface is still very fluid (I've redesigned the metadata handling twice already), and thus can be changed to increase the sanity/noise ratio. Check out both OGI's pipeline and Microsoft's DirectShow for some background. @argc: @argv: Use this macro to show debugging info. This is only usefull when developing new plugin elements. If you #define DEBUG_ENABLED before including gst/gst.h, this macro will produce g_print messages. @format: the format specification as in g_print @args...: arguments