FFmpeg
Loading...
Searching...
No Matches
flac_parse.h File Reference

FLAC (Free Lossless Audio Codec) decoder/parser common functions. More...

#include "avcodec.h"
#include "get_bits.h"

Go to the source code of this file.

Data Structures

struct  FLACStreaminfo
 
struct  FLACFrameInfo
 

Functions

int ff_flac_parse_streaminfo (AVCodecContext *avctx, struct FLACStreaminfo *s, const uint8_t *buffer)
 Parse the Streaminfo metadata block.
 
int ff_flac_is_extradata_valid (AVCodecContext *avctx, uint8_t **streaminfo_start)
 Validate the FLAC extradata.
 
int ff_flac_decode_frame_header (void *logctx, GetBitContext *gb, FLACFrameInfo *fi, int log_level_offset)
 Validate and decode a frame header.
 
void ff_flac_set_channel_layout (AVCodecContext *avctx, int channels)
 

Detailed Description

FLAC (Free Lossless Audio Codec) decoder/parser common functions.

Definition in file flac_parse.h.

Function Documentation

◆ ff_flac_parse_streaminfo()

int ff_flac_parse_streaminfo ( AVCodecContext * avctx,
struct FLACStreaminfo * s,
const uint8_t * buffer )

Parse the Streaminfo metadata block.

Parameters
[out]avctxcodec context to set basic stream parameters
[out]swhere parsed information is stored
[in]bufferpointer to start of 34-byte streaminfo data
Returns
negative error code on failure or >= 0 on success

Definition at line 187 of file flac.c.

Referenced by flac_decode_init(), and parse_streaminfo().

◆ ff_flac_is_extradata_valid()

int ff_flac_is_extradata_valid ( AVCodecContext * avctx,
uint8_t ** streaminfo_start )

Validate the FLAC extradata.

Parameters
[in]avctxcodec context containing the extradata.
[out]formatextradata format.
[out]streaminfo_startpointer to start of 34-byte STREAMINFO data.
Returns
1 if valid, 0 if not valid.

Definition at line 149 of file flac.c.

Referenced by flac_decode_init().

◆ ff_flac_decode_frame_header()

int ff_flac_decode_frame_header ( void * logctx,
GetBitContext * gb,
FLACFrameInfo * fi,
int log_level_offset )

Validate and decode a frame header.

Parameters
logctxcontext for logging
gbGetBitContext from which to read frame header
[out]fiframe information
log_level_offsetlog level offset. can be used to silence error messages.
Returns
non-zero on error, 0 if ok

Definition at line 51 of file flac.c.

Referenced by decode_frame(), and frame_header_is_valid().

◆ ff_flac_set_channel_layout()

void ff_flac_set_channel_layout ( AVCodecContext * avctx,
int channels )

Definition at line 173 of file flac.c.

Referenced by decode_frame(), ff_flac_parse_streaminfo(), and get_best_header().