FFmpeg
Data Structures | Macros | Functions | Variables
hevc_mp4toannexb_bsf.c File Reference
#include <string.h>
#include "libavutil/intreadwrite.h"
#include "libavutil/mem.h"
#include "bsf.h"
#include "bsf_internal.h"
#include "bytestream.h"
#include "defs.h"
#include "hevc.h"

Go to the source code of this file.

Data Structures

struct  HEVCBSFContext
 

Macros

#define MIN_HEVCC_LENGTH   23
 

Functions

static int hevc_extradata_to_annexb (AVBSFContext *ctx)
 
static int hevc_mp4toannexb_init (AVBSFContext *ctx)
 
static int hevc_mp4toannexb_filter (AVBSFContext *ctx, AVPacket *out)
 

Variables

static enum AVCodecID codec_ids []
 
const FFBitStreamFilter ff_hevc_mp4toannexb_bsf
 

Macro Definition Documentation

◆ MIN_HEVCC_LENGTH

#define MIN_HEVCC_LENGTH   23

Definition at line 33 of file hevc_mp4toannexb_bsf.c.

Function Documentation

◆ hevc_extradata_to_annexb()

static int hevc_extradata_to_annexb ( AVBSFContext ctx)
static

Definition at line 40 of file hevc_mp4toannexb_bsf.c.

Referenced by hevc_mp4toannexb_init().

◆ hevc_mp4toannexb_init()

static int hevc_mp4toannexb_init ( AVBSFContext ctx)
static

Definition at line 98 of file hevc_mp4toannexb_bsf.c.

◆ hevc_mp4toannexb_filter()

static int hevc_mp4toannexb_filter ( AVBSFContext ctx,
AVPacket out 
)
static

Definition at line 119 of file hevc_mp4toannexb_bsf.c.

Variable Documentation

◆ codec_ids

enum AVCodecID codec_ids[]
static
Initial value:

Definition at line 194 of file hevc_mp4toannexb_bsf.c.

◆ ff_hevc_mp4toannexb_bsf

const FFBitStreamFilter ff_hevc_mp4toannexb_bsf
Initial value:
= {
.p.name = "hevc_mp4toannexb",
.p.codec_ids = codec_ids,
.priv_data_size = sizeof(HEVCBSFContext),
}

Definition at line 198 of file hevc_mp4toannexb_bsf.c.

hevc_mp4toannexb_init
static int hevc_mp4toannexb_init(AVBSFContext *ctx)
Definition: hevc_mp4toannexb_bsf.c:98
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
HEVCBSFContext
Definition: hevc_mp4toannexb_bsf.c:35
codec_ids
static enum AVCodecID codec_ids[]
Definition: hevc_mp4toannexb_bsf.c:194
init
int(* init)(AVBSFContext *ctx)
Definition: dts2pts_bsf.c:365
AV_CODEC_ID_NONE
@ AV_CODEC_ID_NONE
Definition: codec_id.h:50
AV_CODEC_ID_HEVC
@ AV_CODEC_ID_HEVC
Definition: codec_id.h:226
hevc_mp4toannexb_filter
static int hevc_mp4toannexb_filter(AVBSFContext *ctx, AVPacket *out)
Definition: hevc_mp4toannexb_bsf.c:119