FFmpeg
Data Structures | Macros | Functions | Variables
vp9_superframe_bsf.c File Reference
#include "libavutil/avassert.h"
#include "avcodec.h"
#include "bsf.h"
#include "get_bits.h"

Go to the source code of this file.

Data Structures

struct  VP9BSFContext
 

Macros

#define MAX_CACHE   8
 
#define wloop(mag, wr)
 

Functions

static void stats (AVPacket *const *in, int n_in, unsigned *_max, unsigned *_sum)
 
static int merge_superframe (AVPacket *const *in, int n_in, AVPacket *out)
 
static int vp9_superframe_filter (AVBSFContext *ctx, AVPacket *out)
 
static int vp9_superframe_init (AVBSFContext *ctx)
 
static void vp9_superframe_flush (AVBSFContext *ctx)
 
static void vp9_superframe_close (AVBSFContext *ctx)
 

Variables

static enum AVCodecID codec_ids []
 
const AVBitStreamFilter ff_vp9_superframe_bsf
 

Macro Definition Documentation

◆ MAX_CACHE

#define MAX_CACHE   8

Definition at line 27 of file vp9_superframe_bsf.c.

◆ wloop

#define wloop (   mag,
  wr 
)
Value:
do { \
for (n = 0; n < n_in; n++) { \
wr; \
ptr += mag + 1; \
} \
} while (0)

Function Documentation

◆ stats()

static void stats ( AVPacket *const *  in,
int  n_in,
unsigned *  _max,
unsigned *  _sum 
)
static

◆ merge_superframe()

static int merge_superframe ( AVPacket *const *  in,
int  n_in,
AVPacket out 
)
static

Definition at line 51 of file vp9_superframe_bsf.c.

Referenced by vp9_superframe_filter().

◆ vp9_superframe_filter()

static int vp9_superframe_filter ( AVBSFContext ctx,
AVPacket out 
)
static

Definition at line 100 of file vp9_superframe_bsf.c.

◆ vp9_superframe_init()

static int vp9_superframe_init ( AVBSFContext ctx)
static

Definition at line 177 of file vp9_superframe_bsf.c.

◆ vp9_superframe_flush()

static void vp9_superframe_flush ( AVBSFContext ctx)
static

Definition at line 192 of file vp9_superframe_bsf.c.

◆ vp9_superframe_close()

static void vp9_superframe_close ( AVBSFContext ctx)
static

Definition at line 203 of file vp9_superframe_bsf.c.

Variable Documentation

◆ codec_ids

enum AVCodecID codec_ids[]
static
Initial value:

Definition at line 213 of file vp9_superframe_bsf.c.

◆ ff_vp9_superframe_bsf

const AVBitStreamFilter ff_vp9_superframe_bsf
Initial value:
= {
.name = "vp9_superframe",
.priv_data_size = sizeof(VP9BSFContext),
}

Definition at line 217 of file vp9_superframe_bsf.c.

init
static av_cold int init(AVCodecContext *avctx)
Definition: avrndec.c:35
vp9_superframe_close
static void vp9_superframe_close(AVBSFContext *ctx)
Definition: vp9_superframe_bsf.c:203
n
int n
Definition: avisynth_c.h:760
VP9BSFContext
Definition: vp9_superframe_bsf.c:28
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
AV_CODEC_ID_VP9
@ AV_CODEC_ID_VP9
Definition: avcodec.h:386
codec_ids
static enum AVCodecID codec_ids[]
Definition: vp9_superframe_bsf.c:213
vp9_superframe_init
static int vp9_superframe_init(AVBSFContext *ctx)
Definition: vp9_superframe_bsf.c:177
flush
static void flush(AVCodecContext *avctx)
Definition: aacdec_template.c:500
AV_CODEC_ID_NONE
@ AV_CODEC_ID_NONE
Definition: avcodec.h:216
vp9_superframe_flush
static void vp9_superframe_flush(AVBSFContext *ctx)
Definition: vp9_superframe_bsf.c:192
vp9_superframe_filter
static int vp9_superframe_filter(AVBSFContext *ctx, AVPacket *out)
Definition: vp9_superframe_bsf.c:100