FFmpeg
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
Functions | Variables
parser.c File Reference
#include <stdint.h>
#include <string.h>
#include "libavutil/avassert.h"
#include "libavutil/atomic.h"
#include "libavutil/mem.h"
#include "parser.h"

Go to the source code of this file.

Functions

AVCodecParserav_parser_next (const AVCodecParser *p)
 
void av_register_codec_parser (AVCodecParser *parser)
 
AVCodecParserContextav_parser_init (int codec_id)
 
void ff_fetch_timestamp (AVCodecParserContext *s, int off, int remove, int fuzzy)
 Fetch timestamps for a specific byte within the current access unit.
 
int av_parser_parse2 (AVCodecParserContext *s, AVCodecContext *avctx, uint8_t **poutbuf, int *poutbuf_size, const uint8_t *buf, int buf_size, int64_t pts, int64_t dts, int64_t pos)
 Parse a packet.
 
int av_parser_change (AVCodecParserContext *s, AVCodecContext *avctx, uint8_t **poutbuf, int *poutbuf_size, const uint8_t *buf, int buf_size, int keyframe)
 
void av_parser_close (AVCodecParserContext *s)
 
int ff_combine_frame (ParseContext *pc, int next, const uint8_t **buf, int *buf_size)
 Combine the (truncated) bitstream to a complete frame.
 
void ff_parse_close (AVCodecParserContext *s)
 
int ff_mpeg4video_split (AVCodecContext *avctx, const uint8_t *buf, int buf_size)
 

Variables

static AVCodecParserav_first_parser = NULL
 

Function Documentation

void ff_fetch_timestamp ( AVCodecParserContext s,
int  off,
int  remove,
int  fuzzy 
)

Fetch timestamps for a specific byte within the current access unit.

Parameters
offbyte position within the access unit
removeFound timestamps will be removed if set to 1, kept if set to 0.
fuzzyOnly use found value if it is more informative than what we already have

Definition at line 97 of file parser.c.

Referenced by av_parser_parse2(), and ff_mpeg1_find_frame_end().

int ff_combine_frame ( ParseContext pc,
int  next,
const uint8_t **  buf,
int *  buf_size 
)

Combine the (truncated) bitstream to a complete frame.

Returns
-1 if no complete frame could be created, AVERROR(ENOMEM) if there was a memory allocation error

Definition at line 228 of file parser.c.

Referenced by adx_parse(), bmp_parse(), cavsvideo_parse(), dca_parse(), dnxhd_parse(), dpx_parse(), ff_aac_ac3_parse(), ff_h263_decode_frame(), gsm_parse(), h261_parse(), h263_parse(), h264_parse(), hevc_parse(), jpeg_parse(), latm_parse(), mlp_parse(), mpeg4video_parse(), mpeg_decode_frame(), mpegaudio_parse(), mpegvideo_parse(), opus_parse(), png_parse(), pnm_parse(), tak_parse(), and vc1_parse().

void ff_parse_close ( AVCodecParserContext s)

Definition at line 302 of file parser.c.

int ff_mpeg4video_split ( AVCodecContext avctx,
const uint8_t buf,
int  buf_size 
)

Definition at line 309 of file parser.c.

Variable Documentation

AVCodecParser* av_first_parser = NULL
static

Definition at line 32 of file parser.c.

Referenced by av_parser_next(), and av_register_codec_parser().