FFmpeg
Loading...
Searching...
No Matches
ac3defs.h
Go to the documentation of this file.
1/*
2 * Common AC-3 definitions
3 * Copyright (c) 2000, 2001, 2002 Fabrice Bellard
4 *
5 * This file is part of FFmpeg.
6 *
7 * FFmpeg is free software; you can redistribute it and/or
8 * modify it under the terms of the GNU Lesser General Public
9 * License as published by the Free Software Foundation; either
10 * version 2.1 of the License, or (at your option) any later version.
11 *
12 * FFmpeg is distributed in the hope that it will be useful,
13 * but WITHOUT ANY WARRANTY; without even the implied warranty of
14 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
15 * Lesser General Public License for more details.
16 *
17 * You should have received a copy of the GNU Lesser General Public
18 * License along with FFmpeg; if not, write to the Free Software
19 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
20 */
21
22#ifndef AVCODEC_AC3DEFS_H
23#define AVCODEC_AC3DEFS_H
24
25#define EAC3_MAX_CHANNELS 16 /**< maximum number of channels in EAC3 */
26#define AC3_MAX_CHANNELS 7 /**< maximum number of channels, including coupling channel */
27#define CPL_CH 0 /**< coupling channel index */
28
29#define AC3_MAX_COEFS 256
30#define AC3_BLOCK_SIZE 256
31#define AC3_MAX_BLOCKS 6
32#define AC3_FRAME_SIZE (AC3_MAX_BLOCKS * 256)
33#define AC3_WINDOW_SIZE (AC3_BLOCK_SIZE * 2)
34#define AC3_CRITICAL_BANDS 50
35#define AC3_MAX_CPL_BANDS 18
36
37#define EAC3_SR_CODE_REDUCED 3
38
39/* pre-defined gain values */
40#define LEVEL_PLUS_3DB M_SQRT2
41#define LEVEL_PLUS_1POINT5DB 1.1892071150027209
42#define LEVEL_MINUS_1POINT5DB 0.8408964152537145
43#define LEVEL_MINUS_3DB M_SQRT1_2
44#define LEVEL_MINUS_4POINT5DB 0.5946035575013605
45#define LEVEL_MINUS_6DB 0.5000000000000000
46#define LEVEL_MINUS_9DB 0.3535533905932738
47#define LEVEL_ZERO 0.0000000000000000
48#define LEVEL_ONE 1.0000000000000000
49
50/* exponent encoding strategy */
51#define EXP_REUSE 0
52#define EXP_NEW 1
53
54#define EXP_D15 1
55#define EXP_D25 2
56#define EXP_D45 3
57
58/** Delta bit allocation strategy */
65
66/** Channel mode (audio coding mode) */
77
78/** Dolby Surround mode */
85
86/** Dolby Surround EX mode */
93
94/** Dolby Headphone mode */
101
102/** Preferred Stereo Downmix mode */
109
116
117#endif /* AVCODEC_AC3DEFS_H */
AC3DolbyHeadphoneMode
Dolby Headphone mode.
Definition ac3defs.h:95
@ AC3_DHEADPHONMOD_RESERVED
Definition ac3defs.h:99
@ AC3_DHEADPHONMOD_NOTINDICATED
Definition ac3defs.h:96
@ AC3_DHEADPHONMOD_ON
Definition ac3defs.h:98
@ AC3_DHEADPHONMOD_OFF
Definition ac3defs.h:97
AC3DolbySurroundEXMode
Dolby Surround EX mode.
Definition ac3defs.h:87
@ AC3_DSUREXMOD_ON
Definition ac3defs.h:90
@ AC3_DSUREXMOD_PLIIZ
Definition ac3defs.h:91
@ AC3_DSUREXMOD_OFF
Definition ac3defs.h:89
@ AC3_DSUREXMOD_NOTINDICATED
Definition ac3defs.h:88
AC3ChannelMode
Channel mode (audio coding mode)
Definition ac3defs.h:67
@ AC3_CHMODE_MONO
Definition ac3defs.h:69
@ AC3_CHMODE_STEREO
Definition ac3defs.h:70
@ AC3_CHMODE_2F1R
Definition ac3defs.h:72
@ AC3_CHMODE_DUALMONO
Definition ac3defs.h:68
@ AC3_CHMODE_3F
Definition ac3defs.h:71
@ AC3_CHMODE_3F1R
Definition ac3defs.h:73
@ AC3_CHMODE_2F2R
Definition ac3defs.h:74
@ AC3_CHMODE_3F2R
Definition ac3defs.h:75
EAC3FrameType
Definition ac3defs.h:110
@ EAC3_FRAME_TYPE_DEPENDENT
Definition ac3defs.h:112
@ EAC3_FRAME_TYPE_INDEPENDENT
Definition ac3defs.h:111
@ EAC3_FRAME_TYPE_RESERVED
Definition ac3defs.h:114
@ EAC3_FRAME_TYPE_AC3_CONVERT
Definition ac3defs.h:113
AC3DeltaStrategy
Delta bit allocation strategy.
Definition ac3defs.h:59
@ DBA_RESERVED
Definition ac3defs.h:63
@ DBA_NEW
Definition ac3defs.h:61
@ DBA_REUSE
Definition ac3defs.h:60
@ DBA_NONE
Definition ac3defs.h:62
AC3PreferredStereoDownmixMode
Preferred Stereo Downmix mode.
Definition ac3defs.h:103
@ AC3_DMIXMOD_DPLII
Definition ac3defs.h:107
@ AC3_DMIXMOD_NOTINDICATED
Definition ac3defs.h:104
@ AC3_DMIXMOD_LTRT
Definition ac3defs.h:105
@ AC3_DMIXMOD_LORO
Definition ac3defs.h:106
AC3DolbySurroundMode
Dolby Surround mode.
Definition ac3defs.h:79
@ AC3_DSURMOD_RESERVED
Definition ac3defs.h:83
@ AC3_DSURMOD_OFF
Definition ac3defs.h:81
@ AC3_DSURMOD_NOTINDICATED
Definition ac3defs.h:80
@ AC3_DSURMOD_ON
Definition ac3defs.h:82