FFmpeg
Macros | Enumerations | Functions | Variables
aacsbr.h File Reference
#include "get_bits.h"
#include "aac.h"
#include "sbr.h"

Go to the source code of this file.

Macros

#define ENVELOPE_ADJUSTMENT_OFFSET   2
 
#define NOISE_FLOOR_OFFSET   6
 
#define SBR_INIT_VLC_STATIC(num, size)
 
#define SBR_VLC_ROW(name)   { name ## _codes, name ## _bits, sizeof(name ## _codes), sizeof(name ## _codes[0]) }
 

Enumerations

enum  {
  T_HUFFMAN_ENV_1_5DB, F_HUFFMAN_ENV_1_5DB, T_HUFFMAN_ENV_BAL_1_5DB, F_HUFFMAN_ENV_BAL_1_5DB,
  T_HUFFMAN_ENV_3_0DB, F_HUFFMAN_ENV_3_0DB, T_HUFFMAN_ENV_BAL_3_0DB, F_HUFFMAN_ENV_BAL_3_0DB,
  T_HUFFMAN_NOISE_3_0DB, T_HUFFMAN_NOISE_BAL_3_0DB
}
 SBR VLC tables. More...
 
enum  { FIXFIX, FIXVAR, VARFIX, VARVAR }
 bs_frame_class - frame class of current SBR frame (14496-3 sp04 p98) More...
 
enum  { EXTENSION_ID_PS = 2 }
 

Functions

void AAC_RENAME() ff_aac_sbr_init (void)
 Initialize SBR. More...
 
int AAC_RENAME() ff_aac_sbr_ctx_init (AACContext *ac, SpectralBandReplication *sbr, int id_aac)
 Initialize one SBR context. More...
 
void AAC_RENAME() ff_aac_sbr_ctx_close (SpectralBandReplication *sbr)
 Close one SBR context. More...
 
int AAC_RENAME() ff_decode_sbr_extension (AACContext *ac, SpectralBandReplication *sbr, GetBitContext *gb, int crc, int cnt, int id_aac)
 Decode one SBR element. More...
 
void AAC_RENAME() ff_sbr_apply (AACContext *ac, SpectralBandReplication *sbr, int id_aac, INTFLOAT *L, INTFLOAT *R)
 Apply one SBR element to one AAC element. More...
 
void ff_aacsbr_func_ptr_init_mips (AACSBRContext *c)
 

Variables

static const int8_t vlc_sbr_lav [10]
 

Detailed Description

AAC Spectral Band Replication function declarations

Author
Robert Swain ( rob opendot cl )

Definition in file aacsbr.h.

Macro Definition Documentation

◆ ENVELOPE_ADJUSTMENT_OFFSET

#define ENVELOPE_ADJUSTMENT_OFFSET   2

Definition at line 36 of file aacsbr.h.

◆ NOISE_FLOOR_OFFSET

#define NOISE_FLOOR_OFFSET   6

Definition at line 37 of file aacsbr.h.

◆ SBR_INIT_VLC_STATIC

#define SBR_INIT_VLC_STATIC (   num,
  size 
)
Value:
INIT_VLC_STATIC(&vlc_sbr[num], 9, sbr_tmp[num].table_size / sbr_tmp[num].elem_size, \
sbr_tmp[num].sbr_bits , 1, 1, \
sbr_tmp[num].sbr_codes, sbr_tmp[num].elem_size, sbr_tmp[num].elem_size, \

Definition at line 72 of file aacsbr.h.

◆ SBR_VLC_ROW

#define SBR_VLC_ROW (   name)    { name ## _codes, name ## _bits, sizeof(name ## _codes), sizeof(name ## _codes[0]) }

Definition at line 78 of file aacsbr.h.

Enumeration Type Documentation

◆ anonymous enum

anonymous enum

SBR VLC tables.

Enumerator
T_HUFFMAN_ENV_1_5DB 
F_HUFFMAN_ENV_1_5DB 
T_HUFFMAN_ENV_BAL_1_5DB 
F_HUFFMAN_ENV_BAL_1_5DB 
T_HUFFMAN_ENV_3_0DB 
F_HUFFMAN_ENV_3_0DB 
T_HUFFMAN_ENV_BAL_3_0DB 
F_HUFFMAN_ENV_BAL_3_0DB 
T_HUFFMAN_NOISE_3_0DB 
T_HUFFMAN_NOISE_BAL_3_0DB 

Definition at line 42 of file aacsbr.h.

◆ anonymous enum

anonymous enum

bs_frame_class - frame class of current SBR frame (14496-3 sp04 p98)

Enumerator
FIXFIX 
FIXVAR 
VARFIX 
VARVAR 

Definition at line 58 of file aacsbr.h.

◆ anonymous enum

anonymous enum
Enumerator
EXTENSION_ID_PS 

Definition at line 65 of file aacsbr.h.

Function Documentation

◆ ff_aac_sbr_init()

void AAC_RENAME() ff_aac_sbr_init ( void  )

Initialize SBR.

Definition at line 45 of file aacsbr_template.c.

Referenced by aac_static_table_init().

◆ ff_aac_sbr_ctx_init()

int AAC_RENAME() ff_aac_sbr_ctx_init ( AACContext ac,
SpectralBandReplication sbr,
int  id_aac 
)

Initialize one SBR context.

Definition at line 92 of file aacsbr_template.c.

Referenced by che_configure().

◆ ff_aac_sbr_ctx_close()

void AAC_RENAME() ff_aac_sbr_ctx_close ( SpectralBandReplication sbr)

Close one SBR context.

Definition at line 130 of file aacsbr_template.c.

Referenced by aac_decode_close(), and che_configure().

◆ ff_decode_sbr_extension()

int AAC_RENAME() ff_decode_sbr_extension ( AACContext ac,
SpectralBandReplication sbr,
GetBitContext gb_host,
int  crc,
int  cnt,
int  id_aac 
)

Decode one SBR element.

Decode one SBR element.

Parameters
crcflag indicating the presence of CRC checksum
cntlength of TYPE_FIL syntactic element in bytes
Returns
Returns number of bytes consumed from the TYPE_FIL element.

Definition at line 1132 of file aacsbr_template.c.

Referenced by decode_extension_payload().

◆ ff_sbr_apply()

void AAC_RENAME() ff_sbr_apply ( AACContext ac,
SpectralBandReplication sbr,
int  id_aac,
INTFLOAT L,
INTFLOAT R 
)

Apply one SBR element to one AAC element.

Definition at line 1498 of file aacsbr_template.c.

Referenced by spectral_to_sample().

◆ ff_aacsbr_func_ptr_init_mips()

void ff_aacsbr_func_ptr_init_mips ( AACSBRContext c)

Definition at line 612 of file aacsbr_mips.c.

Referenced by aacsbr_func_ptr_init().

Variable Documentation

◆ vlc_sbr_lav

const int8_t vlc_sbr_lav[10]
static
Initial value:
=
{ 60, 60, 24, 24, 31, 31, 12, 12, 31, 12 }

Definition at line 69 of file aacsbr.h.

Referenced by read_sbr_envelope(), and read_sbr_noise().

INIT_VLC_STATIC
#define INIT_VLC_STATIC(vlc, bits, a, b, c, d, e, f, g, static_size)
Definition: vlc.h:125
vlc_sbr
static VLC vlc_sbr[10]
Definition: aacsbr.c:50
size
int size
Definition: twinvq_data.h:10344