Go to the documentation of this file.
19 #ifndef AVCODEC_BSF_INTERNAL_H
20 #define AVCODEC_BSF_INTERNAL_H
static const av_always_inline FFBitStreamFilter * ff_bsf(const AVBitStreamFilter *bsf)
int status_out
Link output status.
void(* uninit)(AVBitStreamFilterContext *ctx)
static const FFBitStreamFilterGraph * cffbsffiltergraph(const AVBitStreamFilterGraph *graph)
A filter pad used for either input or output.
int(* preinit)(AVBitStreamFilterContext *ctx)
unsigned ready
Ready status of the filter.
enum BitStreamFilterLinkInternal::@85 init_state
stage of the initialization of the link properties (dimensions, etc)
struct BitStreamFilterLinkInternal ** source_links
struct BitStreamFilterLinkInternal ** sink_links
uint8_t nb_inputs
The number of entries in the list of inputs.
int ff_bsf_graph_run_once(AVBitStreamFilterGraph *graph)
Run one round of processing on a filter graph.
void(* filter)(uint8_t *src, int stride, int qscale)
int packet_blocked_in
If set, the source filter can not generate a packet as is.
int status_in
Link input status.
The bitstream filter state.
int packet_wanted_out
True if a packet is currently wanted on the output of this filter.
int ff_bsf_get_packet_ref(AVBSFContext *ctx, AVPacket *pkt)
Called by bitstream filters to get packet for filtering.
AVContainerFifo * fifo
Queue of packets waiting to be filtered.
@ AVLINK_STARTINIT
started, but incomplete
int(* activate)(AVBitStreamFilterContext *ctx)
Filter activation function.
static AVFormatContext * ctx
@ AVLINK_UNINIT
not started
int ff_bsf_alloc(const AVBitStreamFilter *filter, const char *inst_name, AVBitStreamFilterContext **ctx)
Allocate a new filter context and return it.
AVContainerFifo is a FIFO for "containers" - dynamically allocated reusable structs (e....
AVBitStreamFilterContext p
The public AVBitStreamFilterContext.
Filter the word “frame” indicates either a video frame or a group of audio as stored in an AVFrame structure Format for each input and each output the list of supported formats For video that means pixel format For audio that means channel sample they are references to shared objects When the negotiation mechanism computes the intersection of the formats supported at each end of a link
Describe the class of an AVClass context structure.
int(* init)(AVBSFContext *ctx)
int ff_bsf_activate(AVBitStreamFilterContext *ctx)
int age_index
Index in the age array.
AVBitStreamFilter p
The public AVBitStreamFilter.
int ff_bsf_config_links(AVBitStreamFilterContext *filter)
static BitStreamFilterLinkInternal * ff_link_internal(AVBitStreamFilterLink *link)
void(* flush)(AVBSFContext *ctx)
const struct AVBitStreamFilterPad * outputs
List of static outputs.
int(* filter)(AVBSFContext *ctx, AVPacket *pkt)
void ff_bsf_graph_update_heap(AVBitStreamFilterGraph *graph, BitStreamFilterLinkInternal *li)
AVBitStreamFilterGraph p
The public AVBitStreamFilterGraph.
const struct AVBitStreamFilterPad * inputs
List of static inputs.
void ff_bsf_free(AVBitStreamFilterContext *filter)
Free a filter context.
void(* close)(AVBSFContext *ctx)
const AVClass * ff_bsf_child_class_iterate(void **opaque)
Link properties exposed to filter code, but not external callers.
int64_t status_in_pts
Timestamp of the input status change.
static FFBitStreamFilterGraph * ffbsffiltergraph(AVBitStreamFilterGraph *graph)
int ff_bsf_get_packet(AVBSFContext *ctx, AVPacket **pkt)
Called by the bitstream filters to get the next packet for filtering.
This structure stores compressed data.
uint8_t nb_outputs
The number of entries in the list of outputs.
int(* init2)(AVBitStreamFilterContext *ctx)
void ff_bsf_graph_remove_filter(AVBitStreamFilterGraph *graph, AVBitStreamFilterContext *filter)
Remove a filter from a graph;.
static FFBitStreamFilterContext * ffbsfctx(AVBitStreamFilterContext *ctx)