Functions
GST_VIDEO_ENCODER_CAST()
#define GST_VIDEO_ENCODER_CAST(enc) ((GstVideoEncoder*)enc)
GST_VIDEO_ENCODER_SINK_PAD()
#define GST_VIDEO_ENCODER_SINK_PAD(obj) (((GstVideoEncoder *) (obj))->sinkpad)
GST_VIDEO_ENCODER_SRC_PAD()
#define GST_VIDEO_ENCODER_SRC_PAD(obj) (((GstVideoEncoder *) (obj))->srcpad)
GST_VIDEO_ENCODER_INPUT_SEGMENT()
#define GST_VIDEO_ENCODER_INPUT_SEGMENT(obj) (GST_VIDEO_ENCODER_CAST (obj)->input_segment)
GST_VIDEO_ENCODER_OUTPUT_SEGMENT()
#define GST_VIDEO_ENCODER_OUTPUT_SEGMENT(obj) (GST_VIDEO_ENCODER_CAST (obj)->output_segment)
GST_VIDEO_ENCODER_STREAM_LOCK()
#define GST_VIDEO_ENCODER_STREAM_LOCK(encoder) g_rec_mutex_lock (&GST_VIDEO_ENCODER (encoder)->stream_lock)
GST_VIDEO_ENCODER_STREAM_UNLOCK()
#define GST_VIDEO_ENCODER_STREAM_UNLOCK(encoder) g_rec_mutex_unlock (&GST_VIDEO_ENCODER (encoder)->stream_lock)
gst_video_encoder_set_headers ()
void
gst_video_encoder_set_headers (GstVideoEncoder *encoder
,
GList *headers
);
Types and Values
GST_VIDEO_ENCODER_FLOW_DROPPED
#define GST_VIDEO_ENCODER_FLOW_DROPPED GST_FLOW_CUSTOM_SUCCESS_1
GST_VIDEO_ENCODER_FLOW_DROPPED
is deprecated and should not be used in newly-written code.
GST_VIDEO_ENCODER_FLOW_NEED_DATA
#define GST_VIDEO_ENCODER_FLOW_NEED_DATA GST_FLOW_CUSTOM_SUCCESS
GST_VIDEO_ENCODER_SINK_NAME
#define GST_VIDEO_ENCODER_SINK_NAME "sink"
GST_VIDEO_ENCODER_SRC_NAME
#define GST_VIDEO_ENCODER_SRC_NAME "src"
struct GstVideoEncoder
struct GstVideoEncoder {
};
struct GstVideoEncoderClass
struct GstVideoEncoderClass {
/* virtual methods for subclasses */
gboolean (*open) (GstVideoEncoder *encoder);
gboolean (*close) (GstVideoEncoder *encoder);
gboolean (*start) (GstVideoEncoder *encoder);
gboolean (*stop) (GstVideoEncoder *encoder);
gboolean (*set_format) (GstVideoEncoder *encoder,
GstVideoCodecState *state);
GstFlowReturn (*handle_frame) (GstVideoEncoder *encoder,
GstVideoCodecFrame *frame);
gboolean (*reset) (GstVideoEncoder *encoder,
gboolean hard);
GstFlowReturn (*finish) (GstVideoEncoder *encoder);
GstFlowReturn (*pre_push) (GstVideoEncoder *encoder,
GstVideoCodecFrame *frame);
GstCaps * (*getcaps) (GstVideoEncoder *enc,
GstCaps *filter);
gboolean (*sink_event) (GstVideoEncoder *encoder,
GstEvent *event);
gboolean (*src_event) (GstVideoEncoder *encoder,
GstEvent *event);
gboolean (*negotiate) (GstVideoEncoder *encoder);
gboolean (*decide_allocation) (GstVideoEncoder *encoder, GstQuery *query);
gboolean (*propose_allocation) (GstVideoEncoder * encoder,
GstQuery * query);
gboolean (*flush) (GstVideoEncoder *encoder);
gboolean (*sink_query) (GstVideoEncoder *encoder,
GstQuery *query);
gboolean (*src_query) (GstVideoEncoder *encoder,
GstQuery *query);
gboolean (*transform_meta) (GstVideoEncoder *encoder,
GstVideoCodecFrame *frame,
GstMeta * meta);
};