FFmpeg
Data Structures | Functions | Variables
vp9_superframe_split.c File Reference
#include <stddef.h>
#include "bsf.h"
#include "bsf_internal.h"
#include "bytestream.h"
#include "get_bits.h"

Go to the source code of this file.

Data Structures

struct  VP9SFSplitContext
 

Functions

static int vp9_superframe_split_filter (AVBSFContext *ctx, AVPacket *out)
 
static int vp9_superframe_split_init (AVBSFContext *ctx)
 
static void vp9_superframe_split_flush (AVBSFContext *ctx)
 
static void vp9_superframe_split_uninit (AVBSFContext *ctx)
 

Variables

const FFBitStreamFilter ff_vp9_superframe_split_bsf
 

Detailed Description

This bitstream filter splits VP9 superframes into packets containing just one frame.

Definition in file vp9_superframe_split.c.

Function Documentation

◆ vp9_superframe_split_filter()

static int vp9_superframe_split_filter ( AVBSFContext ctx,
AVPacket out 
)
static

Definition at line 41 of file vp9_superframe_split.c.

◆ vp9_superframe_split_init()

static int vp9_superframe_split_init ( AVBSFContext ctx)
static

Definition at line 139 of file vp9_superframe_split.c.

◆ vp9_superframe_split_flush()

static void vp9_superframe_split_flush ( AVBSFContext ctx)
static

Definition at line 150 of file vp9_superframe_split.c.

◆ vp9_superframe_split_uninit()

static void vp9_superframe_split_uninit ( AVBSFContext ctx)
static

Definition at line 156 of file vp9_superframe_split.c.

Variable Documentation

◆ ff_vp9_superframe_split_bsf

const FFBitStreamFilter ff_vp9_superframe_split_bsf
Initial value:
= {
.p.name = "vp9_superframe_split",
.p.codec_ids = (const enum AVCodecID []){ AV_CODEC_ID_VP9, AV_CODEC_ID_NONE },
.priv_data_size = sizeof(VP9SFSplitContext),
}

Definition at line 162 of file vp9_superframe_split.c.

VP9SFSplitContext
Definition: vp9_superframe_split.c:32
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
vp9_superframe_split_uninit
static void vp9_superframe_split_uninit(AVBSFContext *ctx)
Definition: vp9_superframe_split.c:156
vp9_superframe_split_flush
static void vp9_superframe_split_flush(AVBSFContext *ctx)
Definition: vp9_superframe_split.c:150
AV_CODEC_ID_VP9
@ AV_CODEC_ID_VP9
Definition: codec_id.h:220
flush
void(* flush)(AVBSFContext *ctx)
Definition: dts2pts.c:367
AVCodecID
AVCodecID
Identify the syntax and semantics of the bitstream.
Definition: codec_id.h:49
init
int(* init)(AVBSFContext *ctx)
Definition: dts2pts.c:365
AV_CODEC_ID_NONE
@ AV_CODEC_ID_NONE
Definition: codec_id.h:50
vp9_superframe_split_init
static int vp9_superframe_split_init(AVBSFContext *ctx)
Definition: vp9_superframe_split.c:139
vp9_superframe_split_filter
static int vp9_superframe_split_filter(AVBSFContext *ctx, AVPacket *out)
Definition: vp9_superframe_split.c:41