FFmpeg
Functions
xiph.c File Reference
#include <limits.h>
#include "libavutil/error.h"
#include "libavutil/intreadwrite.h"
#include "xiph.h"

Go to the source code of this file.

Functions

int avpriv_split_xiph_headers (const uint8_t *extradata, int extradata_size, int first_header_size, const uint8_t *header_start[3], int header_len[3])
 Split a single extradata buffer into the three headers that most Xiph codecs use. More...
 

Function Documentation

◆ avpriv_split_xiph_headers()

int avpriv_split_xiph_headers ( const uint8_t *  extradata,
int  extradata_size,
int  first_header_size,
const uint8_t *  header_start[3],
int  header_len[3] 
)

Split a single extradata buffer into the three headers that most Xiph codecs use.

(e.g. Theora and Vorbis) Works both with Matroska's packing and lavc's packing.

Parameters
[in]extradataThe single chunk that combines all three headers
[in]extradata_sizeThe size of the extradata buffer
[in]first_header_sizeThe size of the first header, used to differentiate between the Matroska packing and lavc packing.
[out]header_startPointers to the start of the three separate headers.
[out]header_lenThe sizes of each of the three headers.
Returns
On error a negative value is returned, on success zero.

Definition at line 26 of file xiph.c.

Referenced by ogg_init(), put_xiph_codecpriv(), vorbis_decode_init(), and vorbis_parse_init().