FFmpeg  4.4
Data Structures | Macros | Functions | Variables
h264_mp4toannexb_bsf.c File Reference
#include <string.h>
#include "libavutil/avassert.h"
#include "libavutil/intreadwrite.h"
#include "libavutil/mem.h"
#include "avcodec.h"
#include "bsf.h"
#include "bsf_internal.h"
#include "bytestream.h"
#include "h264.h"

Go to the source code of this file.

Data Structures

struct  H264BSFContext
 

Macros

#define LOG_ONCE(...)
 

Functions

static void count_or_copy (uint8_t **out, uint64_t *out_size, const uint8_t *in, int in_size, int ps, int copy)
 
static int h264_extradata_to_annexb (AVBSFContext *ctx, const int padding)
 
static int h264_mp4toannexb_init (AVBSFContext *ctx)
 
static int h264_mp4toannexb_filter (AVBSFContext *ctx, AVPacket *opkt)
 
static void h264_mp4toannexb_flush (AVBSFContext *ctx)
 

Variables

static enum AVCodecID codec_ids []
 
const AVBitStreamFilter ff_h264_mp4toannexb_bsf
 

Macro Definition Documentation

◆ LOG_ONCE

#define LOG_ONCE (   ...)
Value:
if (j) \
av_log(__VA_ARGS__)

Function Documentation

◆ count_or_copy()

static void count_or_copy ( uint8_t **  out,
uint64_t *  out_size,
const uint8_t in,
int  in_size,
int  ps,
int  copy 
)
static

Definition at line 46 of file h264_mp4toannexb_bsf.c.

Referenced by h264_mp4toannexb_filter().

◆ h264_extradata_to_annexb()

static int h264_extradata_to_annexb ( AVBSFContext ctx,
const int  padding 
)
static

Definition at line 65 of file h264_mp4toannexb_bsf.c.

Referenced by h264_mp4toannexb_init().

◆ h264_mp4toannexb_init()

static int h264_mp4toannexb_init ( AVBSFContext ctx)
static

Definition at line 139 of file h264_mp4toannexb_bsf.c.

◆ h264_mp4toannexb_filter()

static int h264_mp4toannexb_filter ( AVBSFContext ctx,
AVPacket opkt 
)
static

Definition at line 169 of file h264_mp4toannexb_bsf.c.

◆ h264_mp4toannexb_flush()

static void h264_mp4toannexb_flush ( AVBSFContext ctx)
static

Definition at line 302 of file h264_mp4toannexb_bsf.c.

Variable Documentation

◆ codec_ids

enum AVCodecID codec_ids[]
static
Initial value:
= {
}
@ AV_CODEC_ID_H264
Definition: codec_id.h:76
@ AV_CODEC_ID_NONE
Definition: codec_id.h:47

Definition at line 302 of file h264_mp4toannexb_bsf.c.

◆ ff_h264_mp4toannexb_bsf

const AVBitStreamFilter ff_h264_mp4toannexb_bsf
Initial value:
= {
.name = "h264_mp4toannexb",
.priv_data_size = sizeof(H264BSFContext),
}
static void flush(AVCodecContext *avctx)
static av_cold int init(AVCodecContext *avctx)
Definition: avrndec.c:31
static av_always_inline void filter(int16_t *output, ptrdiff_t out_stride, const int16_t *low, ptrdiff_t low_stride, const int16_t *high, ptrdiff_t high_stride, int len, int clip)
Definition: cfhddsp.c:27
static enum AVCodecID codec_ids[]
static void h264_mp4toannexb_flush(AVBSFContext *ctx)
static int h264_mp4toannexb_filter(AVBSFContext *ctx, AVPacket *opkt)
static int h264_mp4toannexb_init(AVBSFContext *ctx)

Definition at line 315 of file h264_mp4toannexb_bsf.c.