GstElementFactory: Base class for all elementfactories. Is a single-instance (per program) object that creates objects of the associated GstElement derivative. GstPlugin: Defines a given plugin. Records plugin name, function pointers, details, etc. Includes a list of GstElementFactories that are associated with this plugin. GstBuffer GstPad GstObject GstSrc GstDiskSrc GstHTTPSrc * GstAsyncSrc GstAsyncDiskSrc * GstFilter GstVideoFilter GstVideoMPEG * GstAudioFilter GstAudioMPEG * * GstSink GstAudioSink GstAudioOSSSink GstAudioALSASink GstAudioESDSink * GstVideoSink GstVideoGDKRGBSink GstVideoXvSink * * * GstBin GstPipeline GstThread GstConnection GstQueue GstNetwork GstSHM GstObject: Base class for all streamer objects (duh), defines some basic stuff like a pointer to the master pipeline for the object. GstBin: Contains a bunch of GstObjects. GstPipeline: A bin that can be used raw in an application. The object that gets embedded into applications. Can contain any set of GstObjects. Nothing but a convenience object for the moment, will eventually be *the* object dealt with externally. GstThread: A bin that will become a thread if possible when the pipeline is started up. Can contain any set of GstObjects except another GstThread. All starting points and/or clocked events must be registered with this object, to be dealt with in the separate thread.