Top | ![]() |
![]() |
![]() |
![]() |
gboolean | hard-resync | Read / Write |
gboolean | mark-granule | Read |
gboolean | perfect-timestamp | Read / Write |
gint64 | tolerance | Read / Write |
struct | GstAudioEncoder |
struct | GstAudioEncoderClass |
#define | GST_AUDIO_ENCODER_SINK_NAME |
#define | GST_AUDIO_ENCODER_SRC_NAME |
#define GST_AUDIO_ENCODER_SINK_PAD(obj) (GST_AUDIO_ENCODER_CAST (obj)->sinkpad)
#define GST_AUDIO_ENCODER_SRC_PAD(obj) (GST_AUDIO_ENCODER_CAST (obj)->srcpad)
GstFlowReturn gst_audio_encoder_finish_frame (GstAudioEncoder *enc
,GstBuffer *buffer
,gint samples
);
GstBuffer * gst_audio_encoder_allocate_output_buffer (GstAudioEncoder *enc
,gsize size
);
void gst_audio_encoder_get_allocator (GstAudioEncoder *enc
,GstAllocator **allocator
,GstAllocationParams *params
);
gboolean gst_audio_encoder_set_output_format (GstAudioEncoder *enc
,GstCaps *caps
);
GstAudioInfo *
gst_audio_encoder_get_audio_info (GstAudioEncoder *enc
);
gint
gst_audio_encoder_get_frame_samples_min
(GstAudioEncoder *enc
);
gint
gst_audio_encoder_get_frame_samples_max
(GstAudioEncoder *enc
);
gboolean
gst_audio_encoder_get_hard_resync (GstAudioEncoder *enc
);
void gst_audio_encoder_get_latency (GstAudioEncoder *enc
,GstClockTime *min
,GstClockTime *max
);
gboolean
gst_audio_encoder_get_mark_granule (GstAudioEncoder *enc
);
gboolean
gst_audio_encoder_get_perfect_timestamp
(GstAudioEncoder *enc
);
GstClockTime
gst_audio_encoder_get_tolerance (GstAudioEncoder *enc
);
GstCaps * gst_audio_encoder_proxy_getcaps (GstAudioEncoder *enc
,GstCaps *caps
,GstCaps *filter
);
void gst_audio_encoder_set_drainable (GstAudioEncoder *enc
,gboolean enabled
);
void gst_audio_encoder_set_frame_max (GstAudioEncoder *enc
,gint num
);
void gst_audio_encoder_set_frame_samples_min (GstAudioEncoder *enc
,gint num
);
void gst_audio_encoder_set_frame_samples_max (GstAudioEncoder *enc
,gint num
);
void gst_audio_encoder_set_hard_min (GstAudioEncoder *enc
,gboolean enabled
);
void gst_audio_encoder_set_hard_resync (GstAudioEncoder *enc
,gboolean enabled
);
void gst_audio_encoder_set_headers (GstAudioEncoder *enc
,GList *headers
);
void gst_audio_encoder_set_latency (GstAudioEncoder *enc
,GstClockTime min
,GstClockTime max
);
void gst_audio_encoder_set_lookahead (GstAudioEncoder *enc
,gint num
);
void gst_audio_encoder_set_mark_granule (GstAudioEncoder *enc
,gboolean enabled
);
void gst_audio_encoder_set_perfect_timestamp (GstAudioEncoder *enc
,gboolean enabled
);
void gst_audio_encoder_set_tolerance (GstAudioEncoder *enc
,GstClockTime tolerance
);
void gst_audio_encoder_merge_tags (GstAudioEncoder *enc
,const GstTagList *tags
,GstTagMergeMode mode
);
struct GstAudioEncoderClass { GstElementClass element_class; /* virtual methods for subclasses */ gboolean (*start) (GstAudioEncoder *enc); gboolean (*stop) (GstAudioEncoder *enc); gboolean (*set_format) (GstAudioEncoder *enc, GstAudioInfo *info); GstFlowReturn (*handle_frame) (GstAudioEncoder *enc, GstBuffer *buffer); void (*flush) (GstAudioEncoder *enc); GstFlowReturn (*pre_push) (GstAudioEncoder *enc, GstBuffer **buffer); gboolean (*sink_event) (GstAudioEncoder *enc, GstEvent *event); gboolean (*src_event) (GstAudioEncoder *enc, GstEvent *event); GstCaps * (*getcaps) (GstAudioEncoder *enc, GstCaps *filter); gboolean (*open) (GstAudioEncoder *enc); gboolean (*close) (GstAudioEncoder *enc); gboolean (*negotiate) (GstAudioEncoder *enc); gboolean (*decide_allocation) (GstAudioEncoder *enc, GstQuery *query); gboolean (*propose_allocation) (GstAudioEncoder * enc, GstQuery * query); gboolean (*transform_meta) (GstAudioEncoder *enc, GstBuffer *outbuf, GstMeta *meta, GstBuffer *inbuf); gboolean (*sink_query) (GstAudioEncoder *encoder, GstQuery *query); gboolean (*src_query) (GstAudioEncoder *encoder, GstQuery *query); };
“hard-resync”
property“hard-resync” gboolean
Perform clipping and sample flushing upon discontinuity.
Flags: Read / Write
Default value: FALSE
“mark-granule”
property“mark-granule” gboolean
Apply granule semantics to buffer metadata (implies perfect-timestamp).
Flags: Read
Default value: FALSE
“perfect-timestamp”
property“perfect-timestamp” gboolean
Favour perfect timestamps over tracking upstream timestamps.
Flags: Read / Write
Default value: FALSE
“tolerance”
property“tolerance” gint64
Consider discontinuity if timestamp jitter/imperfection exceeds tolerance (ns).
Flags: Read / Write
Allowed values: >= 0
Default value: 40000000