Libav
Functions | Variables
h264_parser.c File Reference

H.264 / AVC / MPEG4 part10 parser. More...

#include "libavutil/attributes.h"
#include "parser.h"
#include "h264data.h"
#include "golomb.h"
#include "internal.h"
#include "mpegutils.h"
#include <assert.h>

Go to the source code of this file.

Functions

static int h264_find_frame_end (H264Context *h, const uint8_t *buf, int buf_size)
 
static int scan_mmco_reset (AVCodecParserContext *s)
 
static int parse_nal_units (AVCodecParserContext *s, AVCodecContext *avctx, const uint8_t *buf, int buf_size)
 Parse NAL units of found picture and decode some basic information. More...
 
static int h264_parse (AVCodecParserContext *s, AVCodecContext *avctx, const uint8_t **poutbuf, int *poutbuf_size, const uint8_t *buf, int buf_size)
 
static int h264_split (AVCodecContext *avctx, const uint8_t *buf, int buf_size)
 
static void close (AVCodecParserContext *s)
 
static av_cold int init (AVCodecParserContext *s)
 

Variables

AVCodecParser ff_h264_parser
 

Detailed Description

H.264 / AVC / MPEG4 part10 parser.

Author
Michael Niedermayer micha.nosp@m.elni.nosp@m.@gmx..nosp@m.at

Definition in file h264_parser.c.

Function Documentation

§ h264_find_frame_end()

static int h264_find_frame_end ( H264Context h,
const uint8_t buf,
int  buf_size 
)
static

Definition at line 38 of file h264_parser.c.

Referenced by h264_parse().

§ scan_mmco_reset()

static int scan_mmco_reset ( AVCodecParserContext s)
static

Definition at line 93 of file h264_parser.c.

Referenced by parse_nal_units().

§ parse_nal_units()

static int parse_nal_units ( AVCodecParserContext s,
AVCodecContext avctx,
const uint8_t buf,
int  buf_size 
)
inlinestatic

Parse NAL units of found picture and decode some basic information.

Parameters
sparser context.
avctxcodec context.
bufbuffer with field/frame data.
buf_sizesize of the buffer.

Definition at line 171 of file h264_parser.c.

Referenced by h264_parse().

§ h264_parse()

static int h264_parse ( AVCodecParserContext s,
AVCodecContext avctx,
const uint8_t **  poutbuf,
int *  poutbuf_size,
const uint8_t buf,
int  buf_size 
)
static

Definition at line 399 of file h264_parser.c.

§ h264_split()

static int h264_split ( AVCodecContext avctx,
const uint8_t buf,
int  buf_size 
)
static

Definition at line 461 of file h264_parser.c.

§ close()

static void close ( AVCodecParserContext s)
static

§ init()

static av_cold int init ( AVCodecParserContext s)
static

Variable Documentation

§ ff_h264_parser

AVCodecParser ff_h264_parser
Initial value:
= {
.codec_ids = { AV_CODEC_ID_H264 },
.priv_data_size = sizeof(H264Context),
.parser_init = init,
.parser_parse = h264_parse,
.parser_close = close,
}
H264Context.
Definition: h264.h:303
static char * split(char *message, char delim)
Definition: af_channelmap.c:85
static void close(AVCodecParserContext *s)
Definition: h264_parser.c:490
static int h264_split(AVCodecContext *avctx, const uint8_t *buf, int buf_size)
Definition: h264_parser.c:461
static av_cold int init(AVCodecParserContext *s)
Definition: h264_parser.c:499
static int h264_parse(AVCodecParserContext *s, AVCodecContext *avctx, const uint8_t **poutbuf, int *poutbuf_size, const uint8_t *buf, int buf_size)
Definition: h264_parser.c:399

Definition at line 508 of file h264_parser.c.