FFmpeg
Loading...
Searching...
No Matches
Frame parsing

Data Structures

struct  AVCodecParserContext
 
struct  AVCodecParser
 

Enumerations

enum  AVPictureStructure { AV_PICTURE_STRUCTURE_UNKNOWN , AV_PICTURE_STRUCTURE_TOP_FIELD , AV_PICTURE_STRUCTURE_BOTTOM_FIELD , AV_PICTURE_STRUCTURE_FRAME }
 

Functions

const AVCodecParserav_parser_iterate (void **opaque)
 Iterate over all registered codec parsers.
 
AVCodecParserContextav_parser_init (enum AVCodecID 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.
 
void av_parser_close (AVCodecParserContext *s)
 

Detailed Description

Enumeration Type Documentation

◆ AVPictureStructure

Enumerator
AV_PICTURE_STRUCTURE_UNKNOWN 

unknown

AV_PICTURE_STRUCTURE_TOP_FIELD 

coded as top field

AV_PICTURE_STRUCTURE_BOTTOM_FIELD 

coded as bottom field

AV_PICTURE_STRUCTURE_FRAME 

coded as frame

Definition at line 2610 of file avcodec.h.

Function Documentation

◆ av_parser_iterate()

const AVCodecParser * av_parser_iterate ( void ** opaque)

Iterate over all registered codec parsers.

Parameters
opaquea pointer where libavcodec will store the iteration state. Must point to NULL to start the iteration.
Returns
the next registered codec parser or NULL when the iteration is finished

Definition at line 95 of file parsers.c.

Referenced by av_parser_init().

◆ av_parser_init()

◆ av_parser_parse2()

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
sparser context.
avctxcodec context.
poutbufset to pointer to parsed buffer or NULL if not yet finished.
poutbuf_sizeset to size of parsed buffer or zero if not yet finished.
bufinput buffer.
buf_sizebuffer size in bytes without the padding. I.e. the full buffer size is assumed to be buf_size + AV_INPUT_BUFFER_PADDING_SIZE. To signal EOF, this should be 0 (so that the last frame can be output).
ptsinput presentation timestamp.
dtsinput decoding timestamp.
posinput byte position in stream.
Returns
the number of bytes of the input bitstream used.

Example:

while(in_len){
in_data, in_len,
pts, dts, pos);
in_data += len;
in_len -= len;
if(size)
}
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.
Definition parser.c:120
static int decode_frame(AVCodecContext *avctx, AVFrame *picture, int *got_frame, AVPacket *avpkt)
Definition 4xm.c:837
const char data[16]
Definition mxf.c:149
unsigned int pos
Definition spdifenc.c:431
main external API structure.
Definition avcodec.h:443
static int64_t pts
int size
int len
Examples
decode_audio.c, and decode_video.c.

Definition at line 120 of file parser.c.

Referenced by dash_write_packet(), flac_read_timestamp(), LLVMFuzzerTestOneInput(), main(), old_flac_header(), parse_once(), parse_packet(), and parse_stream().

◆ av_parser_close()