![]() |
![]() |
![]() |
GStreamer Entrans 0.10 Reference Manual | ![]() |
---|---|---|---|---|
Top | Description | Object Hierarchy |
#include <gstproctrans.h> GstProcTrans; GstProcTransClass; #define GST_PROC_TRANS_SINK_NAME #define GST_PROC_TRANS_SRC_NAME #define GST_PROC_TRANS_SINK_PAD (obj) #define GST_PROC_TRANS_SRC_PAD (obj)
GObject +----GstObject +----GstElement +----GstProcTrans +----GstProcPipe +----GstY4mTrans +----GstMp2enc
This is a base class for elements that process and/or transform data by relying upon another program/process to do the actual processing. This process is presented the data coming into the element on its stdin, and the element will send out what it receives from the process' stdout.
It provides for most of the details such as setting up sink and src pads, state changes, etc. An inheriting element need only concern about providing for the proper pad templates and (optionally but recommended) implementing a custom set_caps. This call-back is called during (initial and only) caps negotiation, and only upon return the child process is actually started. This typically gives the inheritor a chance to provide the right arguments to the sub-program for the circumstances and data at hand.
typedef struct { GstElementClass parent_class; /* virtual methods for subclasses */ gboolean (*set_caps) (GstProcTrans *trans, GstCaps *incaps, GstCaps **outcaps); } GstProcTransClass;
GstElementClass |
|
|
Optional. Notify the subclass of new incaps,
we should try to set outcaps on source pad upon return.
Note that incaps can be NULL,
and *outcaps can also be left NULL in which case no caps are set.
|
#define GST_PROC_TRANS_SINK_NAME "sink"
the name of the templates for the sink pad
#define GST_PROC_TRANS_SRC_NAME "src"
the name of the templates for the source pad
#define GST_PROC_TRANS_SINK_PAD(obj) (GST_PROC_TRANS_CAST (obj)->sinkpad)
Gives the pointer to the sink GstPad object of the element.
|
process transform instance |