FFmpeg
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
Data Structures | Macros | Enumerations | Functions | Variables
dca.h File Reference
#include <stdint.h>
#include "libavutil/float_dsp.h"
#include "libavutil/internal.h"
#include "avcodec.h"
#include "dcadsp.h"
#include "fmtconvert.h"
#include "get_bits.h"

Go to the source code of this file.

Data Structures

struct  XllChSetSubHeader
 
struct  XllNavi
 
struct  QMF64_table
 
struct  DCAContext
 

Macros

#define DCA_PRIM_CHANNELS_MAX   (7)
 
#define DCA_ABITS_MAX   (32) /* Should be 28 */
 
#define DCA_SUBSUBFRAMES_MAX   (4)
 
#define DCA_SUBFRAMES_MAX   (16)
 
#define DCA_BLOCKS_MAX   (16)
 
#define DCA_LFE_MAX   (3)
 
#define DCA_CHSETS_MAX   (4)
 
#define DCA_CHSET_CHANS_MAX   (8)
 
#define DCA_PRIM_CHANNELS_MAX   (7)
 
#define DCA_ABITS_MAX   (32) /* Should be 28 */
 
#define DCA_SUBSUBFRAMES_MAX   (4)
 
#define DCA_SUBFRAMES_MAX   (16)
 
#define DCA_BLOCKS_MAX   (16)
 
#define DCA_LFE_MAX   (3)
 
#define DCA_XLL_FBANDS_MAX   (4)
 
#define DCA_XLL_SEGMENTS_MAX   (16)
 
#define DCA_XLL_CHSETS_MAX   (16)
 
#define DCA_XLL_CHANNELS_MAX   (16)
 
#define DCA_XLL_AORDER_MAX   (15)
 
#define DCA_XLL_DMIX_NCOEFFS_MAX   (18)
 
#define DCA_MAX_FRAME_SIZE   16384
 
#define DCA_MAX_EXSS_HEADER_SIZE   4096
 
#define DCA_BUFFER_PADDING_SIZE   1024
 

Enumerations

enum  DCAExtensionMask {
  DCA_EXT_CORE = 0x001, DCA_EXT_XXCH = 0x002, DCA_EXT_X96 = 0x004, DCA_EXT_XCH = 0x008,
  DCA_EXT_EXSS_CORE = 0x010, DCA_EXT_EXSS_XBR = 0x020, DCA_EXT_EXSS_XXCH = 0x040, DCA_EXT_EXSS_X96 = 0x080,
  DCA_EXT_EXSS_LBR = 0x100, DCA_EXT_EXSS_XLL = 0x200
}
 

Functions

int avpriv_dca_convert_bitstream (const uint8_t *src, int src_size, uint8_t *dst, int max_size)
 Convert bitstream to one representation based on sync marker.
 
int ff_dca_xbr_parse_frame (DCAContext *s)
 
int ff_dca_xxch_decode_frame (DCAContext *s)
 
void ff_dca_exss_parse_header (DCAContext *s)
 Parse extension substream header (HD)
 
int ff_dca_xll_decode_header (DCAContext *s)
 
int ff_dca_xll_decode_navi (DCAContext *s, int asset_end)
 
int ff_dca_xll_decode_audio (DCAContext *s, AVFrame *frame)
 

Variables

av_export const uint32_t avpriv_dca_sample_rates [16]
 

Macro Definition Documentation

#define DCA_PRIM_CHANNELS_MAX   (7)

Definition at line 47 of file dca.h.

Referenced by dca_parse_audio_coding_header().

#define DCA_ABITS_MAX   (32) /* Should be 28 */

Definition at line 48 of file dca.h.

#define DCA_SUBSUBFRAMES_MAX   (4)

Definition at line 49 of file dca.h.

#define DCA_SUBFRAMES_MAX   (16)

Definition at line 50 of file dca.h.

#define DCA_BLOCKS_MAX   (16)

Definition at line 51 of file dca.h.

#define DCA_LFE_MAX   (3)

Definition at line 52 of file dca.h.

#define DCA_CHSETS_MAX   (4)

Definition at line 44 of file dca.h.

Referenced by ff_dca_xbr_parse_frame().

#define DCA_CHSET_CHANS_MAX   (8)

Definition at line 45 of file dca.h.

Referenced by ff_dca_xbr_parse_frame().

#define DCA_PRIM_CHANNELS_MAX   (7)

Definition at line 47 of file dca.h.

#define DCA_ABITS_MAX   (32) /* Should be 28 */

Definition at line 48 of file dca.h.

#define DCA_SUBSUBFRAMES_MAX   (4)

Definition at line 49 of file dca.h.

#define DCA_SUBFRAMES_MAX   (16)

Definition at line 50 of file dca.h.

#define DCA_BLOCKS_MAX   (16)

Definition at line 51 of file dca.h.

#define DCA_LFE_MAX   (3)

Definition at line 52 of file dca.h.

#define DCA_XLL_FBANDS_MAX   (4)

Definition at line 53 of file dca.h.

#define DCA_XLL_SEGMENTS_MAX   (16)

Definition at line 54 of file dca.h.

#define DCA_XLL_CHSETS_MAX   (16)

Definition at line 55 of file dca.h.

#define DCA_XLL_CHANNELS_MAX   (16)

Definition at line 56 of file dca.h.

#define DCA_XLL_AORDER_MAX   (15)

Definition at line 57 of file dca.h.

Referenced by dca_xll_inv_adapt_pred(), and ff_dca_xll_decode_audio().

#define DCA_XLL_DMIX_NCOEFFS_MAX   (18)

Definition at line 60 of file dca.h.

Referenced by ff_dca_xll_decode_header().

#define DCA_MAX_FRAME_SIZE   16384

Definition at line 62 of file dca.h.

Referenced by dca_decode_frame().

#define DCA_MAX_EXSS_HEADER_SIZE   4096

Definition at line 63 of file dca.h.

Referenced by dca_decode_frame().

#define DCA_BUFFER_PADDING_SIZE   1024

Definition at line 65 of file dca.h.

Enumeration Type Documentation

Enumerator:
DCA_EXT_CORE 

core in core substream

DCA_EXT_XXCH 

XXCh channels extension in core substream.

DCA_EXT_X96 

96/24 extension in core substream

DCA_EXT_XCH 

XCh channel extension in core substream.

DCA_EXT_EXSS_CORE 

core in ExSS (extension substream)

DCA_EXT_EXSS_XBR 

extended bitrate extension in ExSS

DCA_EXT_EXSS_XXCH 

XXCh channels extension in ExSS.

DCA_EXT_EXSS_X96 

96/24 extension in ExSS

DCA_EXT_EXSS_LBR 

low bitrate component in ExSS

DCA_EXT_EXSS_XLL 

lossless extension in ExSS

Definition at line 67 of file dca.h.

Function Documentation

int avpriv_dca_convert_bitstream ( const uint8_t src,
int  src_size,
uint8_t dst,
int  max_size 
)

Convert bitstream to one representation based on sync marker.

Definition at line 39 of file dca.c.

Referenced by dca_decode_frame(), dca_parse_params(), dcadec_decode_frame(), and dts_probe().

int ff_dca_xbr_parse_frame ( DCAContext s)

Definition at line 1218 of file dcadec.c.

Referenced by ff_dca_exss_parse_header().

int ff_dca_xxch_decode_frame ( DCAContext s)

Definition at line 1396 of file dcadec.c.

Referenced by dca_decode_frame(), and ff_dca_exss_parse_header().

void ff_dca_exss_parse_header ( DCAContext s)

Parse extension substream header (HD)

Definition at line 245 of file dca_exss.c.

Referenced by dca_decode_frame().

int ff_dca_xll_decode_header ( DCAContext s)

Definition at line 77 of file dca_xll.c.

Referenced by ff_dca_exss_parse_header().

int ff_dca_xll_decode_navi ( DCAContext s,
int  asset_end 
)

Definition at line 291 of file dca_xll.c.

Referenced by ff_dca_exss_parse_header().

int ff_dca_xll_decode_audio ( DCAContext s,
AVFrame frame 
)

Definition at line 409 of file dca_xll.c.

Referenced by dca_decode_frame().

Variable Documentation

av_export const uint32_t avpriv_dca_sample_rates[16]

Definition at line 34 of file dca.c.

Referenced by dca_parse_frame_header(), dca_parse_params(), dts_probe(), and spdif_header_dts().