FFmpeg
Data Structures | Macros | Enumerations | Functions | Variables
remove_extradata_bsf.c File Reference
#include "libavutil/log.h"
#include "libavutil/opt.h"
#include "avcodec.h"
#include "bsf.h"

Go to the source code of this file.

Data Structures

struct  RemoveExtradataContext
 

Macros

#define OFFSET(x)   offsetof(RemoveExtradataContext, x)
 
#define FLAGS   (AV_OPT_FLAG_VIDEO_PARAM|AV_OPT_FLAG_BSF_PARAM)
 

Enumerations

enum  RemoveFreq { REMOVE_FREQ_KEYFRAME, REMOVE_FREQ_ALL, REMOVE_FREQ_NONKEYFRAME }
 

Functions

static int remove_extradata (AVBSFContext *ctx, AVPacket *pkt)
 
static int remove_extradata_init (AVBSFContext *ctx)
 
static void remove_extradata_close (AVBSFContext *ctx)
 

Variables

static const AVOption options []
 
static const AVClass remove_extradata_class
 
const AVBitStreamFilter ff_remove_extradata_bsf
 

Macro Definition Documentation

◆ OFFSET

#define OFFSET (   x)    offsetof(RemoveExtradataContext, x)

Definition at line 92 of file remove_extradata_bsf.c.

◆ FLAGS

Definition at line 93 of file remove_extradata_bsf.c.

Enumeration Type Documentation

◆ RemoveFreq

enum RemoveFreq
Enumerator
REMOVE_FREQ_KEYFRAME 
REMOVE_FREQ_ALL 
REMOVE_FREQ_NONKEYFRAME 

Definition at line 27 of file remove_extradata_bsf.c.

Function Documentation

◆ remove_extradata()

static int remove_extradata ( AVBSFContext ctx,
AVPacket pkt 
)
static

Definition at line 41 of file remove_extradata_bsf.c.

◆ remove_extradata_init()

static int remove_extradata_init ( AVBSFContext ctx)
static

Definition at line 64 of file remove_extradata_bsf.c.

◆ remove_extradata_close()

static void remove_extradata_close ( AVBSFContext ctx)
static

Definition at line 84 of file remove_extradata_bsf.c.

Variable Documentation

◆ options

const AVOption options[]
static
Initial value:
= {
{ "k", NULL, 0, AV_OPT_TYPE_CONST, { .i64 = REMOVE_FREQ_NONKEYFRAME }, .flags = FLAGS, .unit = "freq" },
{ "keyframe", NULL, 0, AV_OPT_TYPE_CONST, { .i64 = REMOVE_FREQ_KEYFRAME }, .flags = FLAGS, .unit = "freq" },
{ "e", NULL, 0, AV_OPT_TYPE_CONST, { .i64 = REMOVE_FREQ_ALL }, .flags = FLAGS, .unit = "freq" },
{ "all", NULL, 0, AV_OPT_TYPE_CONST, { .i64 = REMOVE_FREQ_ALL }, .flags = FLAGS, .unit = "freq" },
{ NULL },
}

Definition at line 94 of file remove_extradata_bsf.c.

◆ remove_extradata_class

const AVClass remove_extradata_class
static
Initial value:
= {
.class_name = "remove_extradata",
.item_name = av_default_item_name,
.option = options,
}

Definition at line 103 of file remove_extradata_bsf.c.

◆ ff_remove_extradata_bsf

const AVBitStreamFilter ff_remove_extradata_bsf
Initial value:
= {
.name = "remove_extra",
.priv_data_size = sizeof(RemoveExtradataContext),
.priv_class = &remove_extradata_class,
}

Definition at line 110 of file remove_extradata_bsf.c.

init
static av_cold int init(AVCodecContext *avctx)
Definition: avrndec.c:35
remove_extradata
static int remove_extradata(AVBSFContext *ctx, AVPacket *pkt)
Definition: remove_extradata_bsf.c:41
OFFSET
#define OFFSET(x)
Definition: remove_extradata_bsf.c:92
remove_extradata_init
static int remove_extradata_init(AVBSFContext *ctx)
Definition: remove_extradata_bsf.c:64
filter
filter_frame For filters that do not use the this method is called when a frame is pushed to the filter s input It can be called at any time except in a reentrant way If the input frame is enough to produce then the filter should push the output frames on the output link immediately As an exception to the previous rule if the input frame is enough to produce several output frames then the filter needs output only at least one per link The additional frames can be left buffered in the filter
Definition: filter_design.txt:228
RemoveExtradataContext
Definition: remove_extradata_bsf.c:33
remove_extradata_class
static const AVClass remove_extradata_class
Definition: remove_extradata_bsf.c:103
REMOVE_FREQ_ALL
@ REMOVE_FREQ_ALL
Definition: remove_extradata_bsf.c:29
remove_extradata_close
static void remove_extradata_close(AVBSFContext *ctx)
Definition: remove_extradata_bsf.c:84
REMOVE_FREQ_KEYFRAME
@ REMOVE_FREQ_KEYFRAME
Definition: remove_extradata_bsf.c:28
LIBAVUTIL_VERSION_INT
#define LIBAVUTIL_VERSION_INT
Definition: version.h:85
NULL
#define NULL
Definition: coverity.c:32
av_default_item_name
const char * av_default_item_name(void *ptr)
Return the context name.
Definition: log.c:191
REMOVE_FREQ_NONKEYFRAME
@ REMOVE_FREQ_NONKEYFRAME
Definition: remove_extradata_bsf.c:30
FLAGS
#define FLAGS
Definition: remove_extradata_bsf.c:93
options
static const AVOption options[]
Definition: remove_extradata_bsf.c:94
AV_OPT_TYPE_INT
@ AV_OPT_TYPE_INT
Definition: opt.h:223
AV_OPT_TYPE_CONST
@ AV_OPT_TYPE_CONST
Definition: opt.h:232