FFmpeg
Functions | Variables
mlp_parse.c File Reference
#include <stdint.h>
#include "libavutil/channel_layout.h"
#include "get_bits.h"
#include "mlp_parse.h"
#include "mlp.h"

Go to the source code of this file.

Functions

static int mlp_get_major_sync_size (const uint8_t *buf, int bufsize)
 
int ff_mlp_read_major_sync (void *log, MLPHeaderInfo *mh, GetBitContext *gb)
 Read a major sync info header - contains high level information about the stream - sample rate, channel arrangement etc. More...
 

Variables

static const uint8_t mlp_quants [16]
 
static const uint8_t mlp_channels [32]
 
static const uint64_t mlp_layout [32]
 

Function Documentation

static int mlp_get_major_sync_size ( const uint8_t buf,
int  bufsize 
)
static

Definition at line 63 of file mlp_parse.c.

Referenced by ff_mlp_read_major_sync().

int ff_mlp_read_major_sync ( void log,
MLPHeaderInfo mh,
GetBitContext gb 
)

Read a major sync info header - contains high level information about the stream - sample rate, channel arrangement etc.

Most of this information is not actually necessary for decoding, only for playback. gb must be a freshly initialized GetBitContext with no bits read.

Definition at line 86 of file mlp_parse.c.

Referenced by mlp_parse(), read_major_sync(), truehd_core_filter(), and truehd_layout().

Variable Documentation

const uint8_t mlp_quants[16]
static
Initial value:
= {
16, 20, 24, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
}

Definition at line 28 of file mlp_parse.c.

Referenced by ff_mlp_read_major_sync().

const uint8_t mlp_channels[32]
static
Initial value:
= {
1, 2, 3, 4, 3, 4, 5, 3, 4, 5, 4, 5, 6, 4, 5, 4,
5, 6, 5, 5, 6, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
}

Definition at line 33 of file mlp_parse.c.

Referenced by ff_mlp_read_major_sync().

const uint64_t mlp_layout[32]
static
Initial value:
= {
AV_CH_LAYOUT_STEREO|AV_CH_LOW_FREQUENCY,
AV_CH_LAYOUT_2_1|AV_CH_LOW_FREQUENCY,
AV_CH_LAYOUT_QUAD|AV_CH_LOW_FREQUENCY,
AV_CH_LAYOUT_SURROUND|AV_CH_LOW_FREQUENCY,
AV_CH_LAYOUT_4POINT0|AV_CH_LOW_FREQUENCY,
AV_CH_LAYOUT_SURROUND|AV_CH_LOW_FREQUENCY,
AV_CH_LAYOUT_4POINT0|AV_CH_LOW_FREQUENCY,
AV_CH_LAYOUT_QUAD|AV_CH_LOW_FREQUENCY,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
}
#define AV_CH_LAYOUT_SURROUND
#define AV_CH_LAYOUT_4POINT0
#define AV_CH_LAYOUT_STEREO
#define AV_CH_LOW_FREQUENCY
#define AV_CH_LAYOUT_QUAD
#define AV_CH_LAYOUT_2_1
#define AV_CH_LAYOUT_5POINT1_BACK
#define AV_CH_LAYOUT_5POINT0_BACK
#define AV_CH_LAYOUT_MONO

Definition at line 38 of file mlp_parse.c.

Referenced by ff_mlp_read_major_sync().