Frame parsing
[Decoding]


Data Structures

struct  AVCodecParserContext
struct  AVCodecParser

Functions

AVCodecParserav_parser_next (AVCodecParser *c)
void av_register_codec_parser (AVCodecParser *parser)
AVCodecParserContextav_parser_init (int codec_id)
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)

Function Documentation

int av_parser_change ( AVCodecParserContext s,
AVCodecContext avctx,
uint8_t **  poutbuf,
int *  poutbuf_size,
const uint8_t buf,
int  buf_size,
int  keyframe 
)

Returns:
0 if the output buffer is a subset of the input, 1 if it is allocated and must be freed
Deprecated:
use AVBitstreamFilter

Definition at line 171 of file parser.c.

Referenced by do_streamcopy().

void av_parser_close ( AVCodecParserContext s  ) 

AVCodecParserContext* av_parser_init ( int  codec_id  ) 

Definition at line 38 of file parser.c.

Referenced by avformat_find_stream_info(), init(), read_frame_internal(), and remove_extradata().

AVCodecParser* av_parser_next ( AVCodecParser c  ) 

Definition at line 27 of file parser.c.

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.

Parameters:
s parser context.
avctx codec context.
poutbuf set to pointer to parsed buffer or NULL if not yet finished.
poutbuf_size set to size of parsed buffer or zero if not yet finished.
buf input buffer.
buf_size input length, to signal EOF, this should be 0 (so that the last frame can be output).
pts input presentation timestamp.
dts input decoding timestamp.
pos input byte position in stream.
Returns:
the number of bytes of the input bitstream used.
Example:
   while(in_len){
       len = av_parser_parse2(myparser, AVCodecContext, &data, &size,
                                        in_data, in_len,
                                        pts, dts, pos);
       in_data += len;
       in_len  -= len;

       if(size)
          decode_frame(data, size);
   }

Definition at line 108 of file parser.c.

Referenced by decode(), and parse_packet().

void av_register_codec_parser ( AVCodecParser parser  ) 

Definition at line 32 of file parser.c.


Generated on Fri Oct 26 02:48:04 2012 for FFmpeg by  doxygen 1.5.8