FFmpeg
Data Structures | Functions
bsf_internal.h File Reference
#include "libavutil/container_fifo.h"
#include "libavutil/log.h"
#include "bsf.h"
#include "packet.h"
#include "bsf/filters.h"

Go to the source code of this file.

Data Structures

struct  FFBitStreamFilter
 
struct  BitStreamFilterLinkInternal
 
struct  FFBitStreamFilterContext
 
struct  FFBitStreamFilterGraph
 

Functions

static const av_always_inline FFBitStreamFilterff_bsf (const AVBitStreamFilter *bsf)
 
int ff_bsf_get_packet (AVBSFContext *ctx, AVPacket **pkt)
 Called by the bitstream filters to get the next packet for filtering. More...
 
int ff_bsf_get_packet_ref (AVBSFContext *ctx, AVPacket *pkt)
 Called by bitstream filters to get packet for filtering. More...
 
const AVClassff_bsf_child_class_iterate (void **opaque)
 
static BitStreamFilterLinkInternalff_link_internal (AVBitStreamFilterLink *link)
 
int ff_bsf_config_links (AVBitStreamFilterContext *filter)
 
int ff_bsf_graph_run_once (AVBitStreamFilterGraph *graph)
 Run one round of processing on a filter graph. More...
 
int ff_bsf_activate (AVBitStreamFilterContext *ctx)
 
void ff_bsf_graph_update_heap (AVBitStreamFilterGraph *graph, BitStreamFilterLinkInternal *li)
 
static FFBitStreamFilterContextffbsfctx (AVBitStreamFilterContext *ctx)
 
void ff_bsf_free (AVBitStreamFilterContext *filter)
 Free a filter context. More...
 
static FFBitStreamFilterGraphffbsffiltergraph (AVBitStreamFilterGraph *graph)
 
static const FFBitStreamFilterGraphcffbsffiltergraph (const AVBitStreamFilterGraph *graph)
 
int ff_bsf_alloc (const AVBitStreamFilter *filter, const char *inst_name, AVBitStreamFilterContext **ctx)
 Allocate a new filter context and return it. More...
 
void ff_bsf_graph_remove_filter (AVBitStreamFilterGraph *graph, AVBitStreamFilterContext *filter)
 Remove a filter from a graph;. More...
 

Function Documentation

◆ ff_bsf()

static const av_always_inline FFBitStreamFilter* ff_bsf ( const AVBitStreamFilter bsf)
static

◆ ff_bsf_get_packet()

int ff_bsf_get_packet ( AVBSFContext ctx,
AVPacket **  pkt 
)

Called by the bitstream filters to get the next packet for filtering.

The filter is responsible for either freeing the packet or passing it to the caller.

Definition at line 233 of file bsf.c.

Referenced by dovi_split_filter(), ff_eia608_to_smpte436m_filter(), ff_smpte436m_to_eia608_filter(), filter(), h264_filter(), h264_mp4toannexb_filter(), hevc_filter(), hevc_mp4toannexb_filter(), imx_dump_header(), mjpeg2jpeg_filter(), mjpega_dump_header(), text2movsub(), vp9_raw_reorder_filter(), and vvc_mp4toannexb_filter().

◆ ff_bsf_get_packet_ref()

int ff_bsf_get_packet_ref ( AVBSFContext ctx,
AVPacket pkt 
)

◆ ff_bsf_child_class_iterate()

const AVClass* ff_bsf_child_class_iterate ( void **  opaque)

Definition at line 116 of file bitstream_filters.c.

◆ ff_link_internal()

static BitStreamFilterLinkInternal* ff_link_internal ( AVBitStreamFilterLink link)
inlinestatic

◆ ff_bsf_config_links()

int ff_bsf_config_links ( AVBitStreamFilterContext filter)

Definition at line 447 of file bitstreamfilter.c.

Referenced by ff_bsf_config_links(), and graph_config_links().

◆ ff_bsf_graph_run_once()

int ff_bsf_graph_run_once ( AVBitStreamFilterGraph graph)

Run one round of processing on a filter graph.

Definition at line 361 of file bsfgraph.c.

Referenced by av_bsf_sink_get_packet(), and push_packet().

◆ ff_bsf_activate()

int ff_bsf_activate ( AVBitStreamFilterContext ctx)

Definition at line 792 of file bitstreamfilter.c.

Referenced by ff_bsf_graph_run_once().

◆ ff_bsf_graph_update_heap()

void ff_bsf_graph_update_heap ( AVBitStreamFilterGraph graph,
BitStreamFilterLinkInternal li 
)

Definition at line 353 of file bsfgraph.c.

Referenced by update_link_current_pts().

◆ ffbsfctx()

static FFBitStreamFilterContext* ffbsfctx ( AVBitStreamFilterContext ctx)
inlinestatic

◆ ff_bsf_free()

void ff_bsf_free ( AVBitStreamFilterContext filter)

Free a filter context.

This will also remove the filter from its filtergraph's list of filters.

Parameters
filterthe filter to free

Definition at line 221 of file bitstreamfilter.c.

Referenced by av_bsf_graph_create_filter(), and av_bsf_graph_free().

◆ ffbsffiltergraph()

static FFBitStreamFilterGraph* ffbsffiltergraph ( AVBitStreamFilterGraph graph)
inlinestatic

◆ cffbsffiltergraph()

static const FFBitStreamFilterGraph* cffbsffiltergraph ( const AVBitStreamFilterGraph graph)
inlinestatic

Definition at line 230 of file bsf_internal.h.

Referenced by av_bsf_graph_source_needs_input().

◆ ff_bsf_alloc()

int ff_bsf_alloc ( const AVBitStreamFilter filter,
const char *  inst_name,
AVBitStreamFilterContext **  ctx 
)

Allocate a new filter context and return it.

Parameters
[in]filterwhat filter to create an instance of
[in]inst_namename to give to the new filter context
[out]ctxa pointer into which the pointer to the newly-allocated context will be written
Returns
0 on success, an AVERROR code on failure

Definition at line 54 of file bitstreamfilter.c.

Referenced by av_bsf_graph_alloc_filter().

◆ ff_bsf_graph_remove_filter()

void ff_bsf_graph_remove_filter ( AVBitStreamFilterGraph graph,
AVBitStreamFilterContext filter 
)

Remove a filter from a graph;.

Definition at line 64 of file bsfgraph.c.

Referenced by ff_bsf_free().