可见一什么| 什么是莱赛尔纤维| 乙肝核心抗体阳性什么意思| 口腔溃疡为什么那么痛| 7月1号什么节| 父亲节做什么礼物好| 有尿意但是尿不出来是什么原因| 母猫怀孕有什么症状| 舌头有问题看什么科| 激素高是什么原因| 懦弱的反义词是什么| 黑色的蛇是什么蛇| 嘴巴发甜是什么原因| 沙和尚是什么妖怪| 梦见妈妈出轨预示什么意思| 阴茎硬不起来吃什么药| 网易是什么| 共济会是什么组织| 重听是什么意思| 哥德巴赫猜想是什么| 尿隐血是什么原因引起的| 吃什么补阳气| 老人流口水是什么原因| 属兔生什么属相宝宝好| 财神在什么方位| 什么是风热感冒| 境字五行属什么| 金庸原名叫什么| 喝啤酒有什么好处| 多多益善的益是什么意思| 什么是闭口| gjb2基因杂合突变是什么意思| 全麦面包是什么做的| 胆囊结石有什么影响| 脖子疼是什么原因| 薪字五行属什么| 举足轻重什么意思| 川普是什么意思| 今年是什么年天干地支| 草木皆兵指什么生肖| 刑妻克子是什么意思| 霉菌性阴道炎吃什么消炎药| 桑黄是什么东西| 经常流鼻血是什么病的前兆| 新疆有什么民族| 蝈蝈是什么动物| 圆脸适合什么发型女| ncf什么意思| 食欲亢进是什么意思| 肛裂擦什么药膏| 8月30号是什么星座| 吃什么提高记忆力| 衢是什么意思| me too是什么意思| 什么细节能感动摩羯男| 身体动不动就出汗是什么原因| 角瓜念什么| 备孕检查什么项目| 大唐集团什么级别| 儿童湿疹用什么药膏| 梦见下雪是什么征兆| 风湿性心脏病是什么原因引起的| 虐心是什么意思| 立夏有什么习俗| 中度贫血吃什么补血最快| 规培生是什么意思| 眼睛痒用什么眼药水好| lava是什么意思| 药店为什么不让卖高锰酸钾| 免疫力差吃什么可以增强抵抗力| 子宫粘连是什么原因造成的| 什么东西能美白| 世界上最大的蛇是什么蛇| 上当是什么意思| 扑热息痛又叫什么名| 猪拉稀用什么药最快| 嘉靖为什么不杀严嵩| 为什么会心梗| 补睾丸吃什么药最好| 咸鱼翻身是什么意思| 君子兰什么时候开花| 64年出生属什么| 立夏节吃什么| 现在钱为什么这么难挣| 蜂蜜有什么功效| 晶莹的意思是什么| 什么样的天山| 植物神经紊乱看什么科| 血液生化检查能看出什么病| 毛峰茶属于什么茶| 朋友的反义词是什么| 爱情和面包是什么意思| 检查心脏做什么检查| 丙是什么意思| 血糖高吃什么药| 西安有什么好吃的| 静脉曲张溃烂擦什么药| 果实是什么意思| 冬天送什么礼物| 凌志和雷克萨斯有什么区别| 上传下达是什么意思| 什么时候拔牙最好| 甘油三脂是什么| 什么花晚上开| 来月经腰疼的厉害是什么原因| 杏仁有什么营养| 4月26是什么星座| 雾灯什么时候开| 倍增是什么意思| 宫腔粘连有什么症状| 乙肝什么症状| 绿豆芽炒什么好吃| 鱼腥草治什么病| 霄是什么意思| 引体向上练什么肌肉| 乙肝45阳性什么意思| 香槟是什么酒| 什么是押韵| 老年人晚上夜尿多是什么原因| 综合能力测试考什么| 虬角为什么要染成绿色| 舌苔厚白腻是什么原因引起的| 草莓什么季节| 情绪低落是什么意思| 什么的天安门| 三七花泡水喝有什么功效| 梦到谈恋爱预示着什么| 锌过量会引发什么症状| 手淫导致的阳痿早泄吃什么药| 什么东西越擦越小| 吃什么升血压最快| 高脂血症吃什么药| 感官世界讲的什么| 乙肝三抗体阳性是什么意思| 白子是什么东西| 怀孕什么时候能测出来| 心影不大是什么意思| 脖子粗挂什么科| 鲤鱼最爱吃什么食物| kimi是什么意思| 口腔上火了吃什么降火最快| 女人性冷淡吃什么药| 妇炎康片有什么副作用| 松鼠桂鱼是什么鱼| 333是什么意思| 六甲什么意思| 红茶属于什么茶| 唯爱是什么意思| 吃什么补硒| 女人胯骨疼是什么原因| 心肌缺血吃什么药最好| 半夜醒来睡不着是什么原因| 胆囊病变是什么意思| 人潮涌动是什么意思| 房颤与早搏有什么区别| 胃酸吃什么| 屈服是什么意思| 人老珠黄是什么动物| 看手指甲挂什么科室| 九月十号什么星座| 挚友是什么意思| 46什么意思| 脖子上长疣是什么原因| 孕妇喝什么牛奶对胎儿好| 来月经前有褐色分泌物是什么原因| 荨麻疹为什么晚上起| 苏菲是什么| 血栓是什么症状| 电解质饮料有什么作用| 男人第一次什么 感觉| 叶酸有什么作用和功效| 护肝吃什么| 所不欲勿施于人是什么意思| 手经常出汗是什么原因| 为什么没有西京| 丝袜是什么材质| 什么样人穿棉麻好看| 妇科病吃什么药| 什么时候称体重最准确| 更年期出虚汗吃什么药| 唐朝为什么灭亡| 小儿风寒感冒吃什么药| 浮萍是什么意思| g18k是什么金| 嬉皮士是什么意思| 孩子鼻子流鼻血是什么原因| 忘恩负义的负是什么意思| 双肾囊性灶是什么意思| 618是什么星座| 潴留性囊肿是什么意思| 腹直肌分离是什么意思| 儿童经常头晕什么原因导致的| 亥和什么合| 血小板低是什么原因引起的| 丝状疣用什么药膏| 奇异果和猕猴桃有什么区别| 木耳和什么不能一起吃| 胎教什么时候开始最好| 菠萝蜜的核有什么功效| 顶到子宫是什么感觉| 父母什么血型会溶血| 连铁是什么器官| 骨质疏松挂什么科| 一什么蜻蜓| 怀孕后期脚肿是什么原因| 自渎什么意思| 茄子和什么不能一起吃| 孕期便秘吃什么通便快| 郫县豆瓣酱能做什么菜| 表姐的儿子叫什么| 过敏是什么意思| 08年属什么| 非钙化斑块是什么意思| 韧带拉伤用什么药好| 骨密度z值是什么意思| 胸疼是什么原因引起的| 晚上吃什么不长胖| dbm是什么意思| 社交恐惧是什么| 姓郑的男孩取什么名字好| 失眠吃什么药效果好| 猪砂是什么东西| 2007年属什么生肖| 心跳慢是什么原因| 秦始皇的母亲叫什么名字| 黑眼圈挂什么科| 不造血是什么病| 精益求精的意思是什么| 吃什么对眼睛好| 心脏早搏是什么症状| 什么运动有助于长高| 慈禧姓什么| sp是什么面料| poppy是什么意思| 用什么可以解开所有的谜| 鸣字五行属什么| 来加贝念什么| 子宫腺肌症吃什么药最有效| 银针茶属于什么茶| 硒对身体有什么好处| 水由什么组成| 仲夏是什么意思| 空性是什么意思| 火烧是什么食物| 夏季吃什么菜最好菜谱| 吃什么容易得结石| 舒字属于五行属什么| 人死了是什么感觉| 小孩晚上磨牙是什么原因引起的| 乳腺纤维瘤是什么原因引起的| 葛根和粉葛有什么区别| 彩虹有什么颜色| 积气是什么意思| au750是什么意思| 低烧是什么原因| 苹果枸杞红枣煮水喝有什么功效| 摩羯座是什么动物| 肠胃炎吃什么水果比较好| 宫腔回声不均匀什么原因| 胸部疼痛是什么原因| 95属什么生肖| 备孕检查什么项目| 苟不教的苟是什么意思| 慢性咽喉炎吃什么药好| 百度

特斯拉百万元Model X报废 司机不幸遇难


Directory: ../../../ffmpeg/
File: src/libavcodec/aac/aacdec_tab.c
Date: 2025-08-04 00:43:16
Exec Total Coverage
Lines: 22 22 100.0%
Functions: 2 2 100.0%
Branches: 4 4 100.0%

Line Branch Exec Source
1 /*
2 * Common code and tables of the AAC fixed- and floating-point decoders
3 * Copyright (c) 2005-2006 Oded Shimon ( ods15 ods15 dyndns org )
4 * Copyright (c) 2006-2007 Maxim Gavrilov ( maxim.gavrilov gmail com )
5 *
6 * This file is part of FFmpeg.
7 *
8 * FFmpeg is free software; you can redistribute it and/or
9 * modify it under the terms of the GNU Lesser General Public
10 * License as published by the Free Software Foundation; either
11 * version 2.1 of the License, or (at your option) any later version.
12 *
13 * FFmpeg is distributed in the hope that it will be useful,
14 * but WITHOUT ANY WARRANTY; without even the implied warranty of
15 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
16 * Lesser General Public License for more details.
17 *
18 * You should have received a copy of the GNU Lesser General Public
19 * License along with FFmpeg; if not, write to the Free Software
20 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
21 */
22
23 /**
24 * @file
25 * Common code and tables of the AAC fixed- and floating-point decoders
26 */
27
28 #include "aacdec_tab.h"
29
30 #include "libavcodec/aac.h"
31 #include "libavcodec/aacps.h"
32 #include "libavcodec/aactab.h"
33 #include "libavcodec/vlc.h"
34
35 #include "libavutil/attributes.h"
36 #include "libavutil/thread.h"
37
38 const int8_t ff_tags_per_config[16] = { 0, 1, 1, 2, 3, 3, 4, 5, 0, 0, 0, 5, 5, 16, 5, 0 };
39
40 const uint8_t ff_aac_channel_layout_map[16][16][3] = {
41 { { TYPE_SCE, 0, AAC_CHANNEL_FRONT }, },
42 { { TYPE_CPE, 0, AAC_CHANNEL_FRONT }, },
43 { { TYPE_SCE, 0, AAC_CHANNEL_FRONT }, { TYPE_CPE, 0, AAC_CHANNEL_FRONT }, },
44 { { TYPE_SCE, 0, AAC_CHANNEL_FRONT }, { TYPE_CPE, 0, AAC_CHANNEL_FRONT }, { TYPE_SCE, 1, AAC_CHANNEL_BACK }, },
45 { { TYPE_SCE, 0, AAC_CHANNEL_FRONT }, { TYPE_CPE, 0, AAC_CHANNEL_FRONT }, { TYPE_CPE, 1, AAC_CHANNEL_BACK }, },
46 { { TYPE_SCE, 0, AAC_CHANNEL_FRONT }, { TYPE_CPE, 0, AAC_CHANNEL_FRONT }, { TYPE_CPE, 1, AAC_CHANNEL_BACK }, { TYPE_LFE, 0, AAC_CHANNEL_LFE }, },
47 { { TYPE_SCE, 0, AAC_CHANNEL_FRONT }, { TYPE_CPE, 0, AAC_CHANNEL_FRONT }, { TYPE_CPE, 1, AAC_CHANNEL_FRONT }, { TYPE_CPE, 2, AAC_CHANNEL_BACK }, { TYPE_LFE, 0, AAC_CHANNEL_LFE }, },
48 { { 0, } },
49 { { 0, } },
50 { { 0, } },
51 { { TYPE_SCE, 0, AAC_CHANNEL_FRONT }, { TYPE_CPE, 0, AAC_CHANNEL_FRONT }, { TYPE_CPE, 1, AAC_CHANNEL_BACK }, { TYPE_SCE, 1, AAC_CHANNEL_BACK }, { TYPE_LFE, 0, AAC_CHANNEL_LFE }, },
52 { { TYPE_SCE, 0, AAC_CHANNEL_FRONT }, { TYPE_CPE, 0, AAC_CHANNEL_FRONT }, { TYPE_CPE, 1, AAC_CHANNEL_BACK }, { TYPE_CPE, 2, AAC_CHANNEL_BACK }, { TYPE_LFE, 0, AAC_CHANNEL_LFE }, },
53 {
54 { TYPE_SCE, 0, AAC_CHANNEL_FRONT }, // SCE1 = FC,
55 { TYPE_CPE, 0, AAC_CHANNEL_FRONT }, // CPE1 = FLc and FRc,
56 { TYPE_CPE, 1, AAC_CHANNEL_FRONT }, // CPE2 = FL and FR,
57 { TYPE_CPE, 2, AAC_CHANNEL_BACK }, // CPE3 = SiL and SiR,
58 { TYPE_CPE, 3, AAC_CHANNEL_BACK }, // CPE4 = BL and BR,
59 { TYPE_SCE, 1, AAC_CHANNEL_BACK }, // SCE2 = BC,
60 { TYPE_LFE, 0, AAC_CHANNEL_LFE }, // LFE1 = LFE1,
61 { TYPE_LFE, 1, AAC_CHANNEL_LFE }, // LFE2 = LFE2,
62 { TYPE_SCE, 2, AAC_CHANNEL_FRONT }, // SCE3 = TpFC,
63 { TYPE_CPE, 4, AAC_CHANNEL_FRONT }, // CPE5 = TpFL and TpFR,
64 { TYPE_CPE, 5, AAC_CHANNEL_SIDE }, // CPE6 = TpSiL and TpSiR,
65 { TYPE_SCE, 3, AAC_CHANNEL_SIDE }, // SCE4 = TpC,
66 { TYPE_CPE, 6, AAC_CHANNEL_BACK }, // CPE7 = TpBL and TpBR,
67 { TYPE_SCE, 4, AAC_CHANNEL_BACK }, // SCE5 = TpBC,
68 { TYPE_SCE, 5, AAC_CHANNEL_FRONT }, // SCE6 = BtFC,
69 { TYPE_CPE, 7, AAC_CHANNEL_FRONT }, // CPE8 = BtFL and BtFR
70 },
71 { { TYPE_SCE, 0, AAC_CHANNEL_FRONT }, { TYPE_CPE, 0, AAC_CHANNEL_FRONT }, { TYPE_CPE, 1, AAC_CHANNEL_BACK }, { TYPE_LFE, 0, AAC_CHANNEL_LFE }, { TYPE_CPE, 2, AAC_CHANNEL_FRONT }, },
72 { { 0, } },
73 };
74
75 const int16_t ff_aac_channel_map[3][4][6] = {
76 {
77 { AV_CHAN_FRONT_CENTER, AV_CHAN_FRONT_LEFT_OF_CENTER, AV_CHAN_FRONT_RIGHT_OF_CENTER, AV_CHAN_FRONT_LEFT, AV_CHAN_FRONT_RIGHT, AV_CHAN_NONE },
78 { AV_CHAN_UNUSED, AV_CHAN_NONE, AV_CHAN_NONE, AV_CHAN_NONE, AV_CHAN_NONE, AV_CHAN_NONE },
79 { AV_CHAN_UNUSED, AV_CHAN_SIDE_LEFT, AV_CHAN_SIDE_RIGHT, AV_CHAN_BACK_LEFT, AV_CHAN_BACK_RIGHT, AV_CHAN_BACK_CENTER },
80 { AV_CHAN_LOW_FREQUENCY, AV_CHAN_LOW_FREQUENCY_2, AV_CHAN_NONE, AV_CHAN_NONE, AV_CHAN_NONE, AV_CHAN_NONE },
81 },
82 {
83 { AV_CHAN_TOP_FRONT_CENTER, AV_CHAN_NONE, AV_CHAN_NONE, AV_CHAN_TOP_FRONT_LEFT, AV_CHAN_TOP_FRONT_RIGHT, AV_CHAN_NONE },
84 { AV_CHAN_UNUSED, AV_CHAN_TOP_SIDE_LEFT, AV_CHAN_TOP_SIDE_RIGHT, AV_CHAN_NONE, AV_CHAN_NONE, AV_CHAN_TOP_CENTER},
85 { AV_CHAN_UNUSED, AV_CHAN_NONE, AV_CHAN_NONE, AV_CHAN_TOP_BACK_LEFT, AV_CHAN_TOP_BACK_RIGHT, AV_CHAN_TOP_BACK_CENTER},
86 { AV_CHAN_NONE, AV_CHAN_NONE, AV_CHAN_NONE, AV_CHAN_NONE, AV_CHAN_NONE, AV_CHAN_NONE},
87 },
88 {
89 { AV_CHAN_BOTTOM_FRONT_CENTER, AV_CHAN_NONE, AV_CHAN_NONE, AV_CHAN_BOTTOM_FRONT_LEFT, AV_CHAN_BOTTOM_FRONT_RIGHT, AV_CHAN_NONE },
90 { AV_CHAN_NONE, AV_CHAN_NONE, AV_CHAN_NONE, AV_CHAN_NONE, AV_CHAN_NONE, AV_CHAN_NONE },
91 { AV_CHAN_NONE, AV_CHAN_NONE, AV_CHAN_NONE, AV_CHAN_NONE, AV_CHAN_NONE, AV_CHAN_NONE },
92 { AV_CHAN_NONE, AV_CHAN_NONE, AV_CHAN_NONE, AV_CHAN_NONE, AV_CHAN_NONE, AV_CHAN_NONE },
93 },
94 };
95
96 const AVChannelLayout ff_aac_ch_layout[] = {
97 AV_CHANNEL_LAYOUT_MONO,
98 AV_CHANNEL_LAYOUT_STEREO,
99 AV_CHANNEL_LAYOUT_SURROUND,
100 AV_CHANNEL_LAYOUT_4POINT0,
101 AV_CHANNEL_LAYOUT_5POINT0_BACK,
102 AV_CHANNEL_LAYOUT_5POINT1_BACK,
103 AV_CHANNEL_LAYOUT_7POINT1_WIDE_BACK,
104 AV_CHANNEL_LAYOUT_6POINT1_BACK,
105 AV_CHANNEL_LAYOUT_7POINT1,
106 AV_CHANNEL_LAYOUT_22POINT2,
107 AV_CHANNEL_LAYOUT_7POINT1_TOP_BACK,
108 { 0 },
109 };
110
111 VLCElem ff_vlc_scalefactors[352];
112 const VLCElem *ff_vlc_spectral[11];
113
114 /// Huffman tables for SBR
115
116 static const uint8_t sbr_huffman_tab[][2] = {
117 /* t_huffman_env_1_5dB - 121 entries */
118 { 60, 2 }, { 59, 2 }, { 61, 3 }, { 58, 3 }, { 62, 4 },
119 { 57, 4 }, { 63, 5 }, { 56, 5 }, { 64, 6 }, { 55, 6 },
120 { 65, 7 }, { 54, 7 }, { 66, 8 }, { 53, 8 }, { 67, 9 },
121 { 52, 9 }, { 51, 10 }, { 68, 10 }, { 50, 11 }, { 69, 12 },
122 { 49, 12 }, { 70, 13 }, { 48, 13 }, { 47, 13 }, { 71, 14 },
123 { 46, 14 }, { 72, 14 }, { 45, 14 }, { 44, 15 }, { 73, 15 },
124 { 41, 16 }, { 42, 16 }, { 43, 16 }, { 74, 16 }, { 36, 16 },
125 { 40, 16 }, { 76, 16 }, { 34, 17 }, { 39, 17 }, { 75, 17 },
126 { 37, 17 }, { 35, 18 }, { 38, 18 }, { 0, 18 }, { 1, 18 },
127 { 2, 18 }, { 3, 18 }, { 4, 18 }, { 5, 18 }, { 6, 19 },
128 { 7, 19 }, { 8, 19 }, { 9, 19 }, { 10, 19 }, { 11, 19 },
129 { 12, 19 }, { 13, 19 }, { 14, 19 }, { 15, 19 }, { 16, 19 },
130 { 17, 19 }, { 18, 19 }, { 19, 19 }, { 20, 19 }, { 21, 19 },
131 { 22, 19 }, { 23, 19 }, { 24, 19 }, { 25, 19 }, { 26, 19 },
132 { 27, 19 }, { 28, 19 }, { 29, 19 }, { 30, 19 }, { 31, 19 },
133 { 32, 19 }, { 33, 19 }, { 77, 19 }, { 78, 19 }, { 79, 19 },
134 { 80, 19 }, { 81, 19 }, { 82, 19 }, { 83, 19 }, { 84, 19 },
135 { 85, 19 }, { 86, 19 }, { 87, 19 }, { 88, 19 }, { 89, 19 },
136 { 90, 19 }, { 91, 19 }, { 92, 19 }, { 93, 19 }, { 94, 19 },
137 { 95, 19 }, { 96, 19 }, { 97, 19 }, { 98, 19 }, { 99, 19 },
138 { 100, 19 }, { 101, 19 }, { 102, 19 }, { 103, 19 }, { 104, 19 },
139 { 105, 19 }, { 106, 19 }, { 107, 19 }, { 108, 19 }, { 109, 19 },
140 { 110, 19 }, { 111, 19 }, { 112, 19 }, { 113, 19 }, { 114, 19 },
141 { 115, 19 }, { 116, 19 }, { 117, 19 }, { 118, 19 }, { 119, 19 },
142 { 120, 19 },
143 /* f_huffman_env_1_5dB - 121 entries */
144 { 60, 2 }, { 59, 2 }, { 61, 3 }, { 58, 3 }, { 57, 4 },
145 { 62, 4 }, { 56, 5 }, { 63, 5 }, { 55, 6 }, { 64, 6 },
146 { 54, 7 }, { 65, 8 }, { 53, 8 }, { 66, 8 }, { 52, 9 },
147 { 67, 9 }, { 51, 9 }, { 68, 10 }, { 50, 10 }, { 69, 11 },
148 { 49, 11 }, { 70, 11 }, { 71, 11 }, { 48, 12 }, { 72, 12 },
149 { 47, 12 }, { 73, 12 }, { 74, 13 }, { 46, 13 }, { 45, 13 },
150 { 75, 13 }, { 76, 14 }, { 77, 14 }, { 44, 14 }, { 43, 15 },
151 { 42, 15 }, { 41, 16 }, { 78, 16 }, { 79, 16 }, { 40, 16 },
152 { 39, 16 }, { 80, 17 }, { 81, 17 }, { 36, 17 }, { 37, 17 },
153 { 38, 17 }, { 34, 17 }, { 32, 18 }, { 82, 18 }, { 83, 18 },
154 { 85, 18 }, { 19, 18 }, { 35, 18 }, { 86, 18 }, { 87, 18 },
155 { 30, 18 }, { 33, 18 }, { 84, 18 }, { 88, 18 }, { 104, 18 },
156 { 9, 19 }, { 14, 19 }, { 16, 19 }, { 17, 19 }, { 23, 19 },
157 { 27, 19 }, { 29, 19 }, { 31, 19 }, { 90, 19 }, { 97, 19 },
158 { 102, 19 }, { 107, 19 }, { 108, 19 }, { 0, 19 }, { 1, 19 },
159 { 2, 20 }, { 3, 20 }, { 4, 20 }, { 5, 20 }, { 6, 20 },
160 { 7, 20 }, { 8, 20 }, { 10, 20 }, { 11, 20 }, { 12, 20 },
161 { 13, 20 }, { 15, 20 }, { 18, 20 }, { 20, 20 }, { 21, 20 },
162 { 22, 20 }, { 24, 20 }, { 25, 20 }, { 26, 20 }, { 28, 20 },
163 { 89, 20 }, { 91, 20 }, { 92, 20 }, { 93, 20 }, { 94, 20 },
164 { 95, 20 }, { 96, 20 }, { 98, 20 }, { 99, 20 }, { 100, 20 },
165 { 101, 20 }, { 103, 20 }, { 105, 20 }, { 106, 20 }, { 109, 20 },
166 { 110, 20 }, { 111, 20 }, { 112, 20 }, { 113, 20 }, { 114, 20 },
167 { 115, 20 }, { 116, 20 }, { 117, 20 }, { 118, 20 }, { 119, 20 },
168 { 120, 20 },
169 /* t_huffman_env_bal_1_5dB - 49 entries */
170 { 24, 1 }, { 25, 2 }, { 23, 3 }, { 26, 4 }, { 22, 5 },
171 { 27, 6 }, { 21, 7 }, { 28, 8 }, { 20, 9 }, { 19, 11 },
172 { 29, 11 }, { 18, 12 }, { 30, 12 }, { 31, 15 }, { 17, 16 },
173 { 32, 16 }, { 0, 16 }, { 1, 16 }, { 2, 16 }, { 3, 16 },
174 { 4, 16 }, { 5, 16 }, { 6, 16 }, { 7, 16 }, { 8, 16 },
175 { 9, 16 }, { 10, 16 }, { 11, 16 }, { 12, 16 }, { 13, 16 },
176 { 14, 16 }, { 15, 16 }, { 16, 16 }, { 33, 16 }, { 34, 16 },
177 { 35, 16 }, { 36, 16 }, { 37, 16 }, { 38, 16 }, { 39, 17 },
178 { 40, 17 }, { 41, 17 }, { 42, 17 }, { 43, 17 }, { 44, 17 },
179 { 45, 17 }, { 46, 17 }, { 47, 17 }, { 48, 17 },
180 /* f_huffman_env_bal_1_5dB - 49 entries */
181 { 24, 1 }, { 23, 2 }, { 25, 3 }, { 22, 4 }, { 26, 5 },
182 { 27, 6 }, { 21, 7 }, { 20, 8 }, { 28, 9 }, { 19, 11 },
183 { 29, 11 }, { 18, 11 }, { 30, 12 }, { 17, 14 }, { 31, 15 },
184 { 32, 16 }, { 15, 16 }, { 16, 17 }, { 0, 18 }, { 1, 18 },
185 { 2, 18 }, { 3, 18 }, { 4, 18 }, { 5, 18 }, { 6, 18 },
186 { 7, 18 }, { 8, 18 }, { 9, 18 }, { 10, 18 }, { 11, 18 },
187 { 12, 18 }, { 13, 18 }, { 14, 18 }, { 33, 18 }, { 34, 18 },
188 { 35, 18 }, { 36, 18 }, { 37, 18 }, { 38, 18 }, { 39, 18 },
189 { 40, 18 }, { 41, 18 }, { 42, 18 }, { 43, 18 }, { 44, 18 },
190 { 45, 18 }, { 46, 18 }, { 47, 19 }, { 48, 19 },
191 /* t_huffman_env_3_0dB - 63 entries */
192 { 31, 1 }, { 30, 2 }, { 32, 3 }, { 29, 4 }, { 33, 5 },
193 { 28, 6 }, { 34, 7 }, { 27, 8 }, { 35, 9 }, { 26, 11 },
194 { 36, 11 }, { 25, 12 }, { 24, 13 }, { 37, 13 }, { 23, 14 },
195 { 38, 14 }, { 22, 14 }, { 21, 14 }, { 39, 14 }, { 40, 15 },
196 { 41, 16 }, { 18, 16 }, { 20, 16 }, { 19, 16 }, { 17, 17 },
197 { 42, 17 }, { 43, 18 }, { 0, 18 }, { 1, 18 }, { 2, 19 },
198 { 3, 19 }, { 4, 19 }, { 5, 19 }, { 6, 19 }, { 7, 19 },
199 { 8, 19 }, { 9, 19 }, { 10, 19 }, { 11, 19 }, { 12, 19 },
200 { 13, 19 }, { 14, 19 }, { 15, 19 }, { 16, 19 }, { 44, 19 },
201 { 45, 19 }, { 46, 19 }, { 47, 19 }, { 48, 19 }, { 49, 19 },
202 { 50, 19 }, { 51, 19 }, { 52, 19 }, { 53, 19 }, { 54, 19 },
203 { 55, 19 }, { 56, 19 }, { 57, 19 }, { 58, 19 }, { 59, 19 },
204 { 60, 19 }, { 61, 19 }, { 62, 19 },
205 /* f_huffman_env_3_0dB - 63 entries */
206 { 31, 1 }, { 30, 2 }, { 32, 3 }, { 29, 4 }, { 33, 5 },
207 { 28, 6 }, { 34, 8 }, { 27, 8 }, { 35, 9 }, { 26, 9 },
208 { 36, 10 }, { 25, 10 }, { 37, 11 }, { 24, 11 }, { 38, 12 },
209 { 23, 12 }, { 39, 13 }, { 40, 14 }, { 22, 14 }, { 21, 15 },
210 { 41, 15 }, { 42, 15 }, { 20, 16 }, { 19, 16 }, { 43, 16 },
211 { 44, 16 }, { 18, 17 }, { 16, 17 }, { 45, 17 }, { 46, 17 },
212 { 17, 18 }, { 49, 18 }, { 13, 18 }, { 7, 18 }, { 12, 18 },
213 { 47, 18 }, { 48, 18 }, { 9, 19 }, { 10, 19 }, { 15, 19 },
214 { 51, 19 }, { 52, 19 }, { 53, 19 }, { 56, 19 }, { 8, 19 },
215 { 11, 19 }, { 55, 19 }, { 0, 20 }, { 1, 20 }, { 2, 20 },
216 { 3, 20 }, { 4, 20 }, { 5, 20 }, { 6, 20 }, { 14, 20 },
217 { 50, 20 }, { 54, 20 }, { 57, 20 }, { 58, 20 }, { 59, 20 },
218 { 60, 20 }, { 61, 20 }, { 62, 20 },
219 /* t_huffman_env_bal_3_0dB - 25 entries */
220 { 12, 1 }, { 13, 2 }, { 11, 3 }, { 10, 4 }, { 14, 5 },
221 { 15, 6 }, { 9, 7 }, { 8, 8 }, { 16, 9 }, { 7, 12 },
222 { 0, 13 }, { 1, 13 }, { 2, 13 }, { 3, 13 }, { 4, 13 },
223 { 5, 13 }, { 6, 13 }, { 17, 13 }, { 18, 13 }, { 19, 13 },
224 { 20, 13 }, { 21, 13 }, { 22, 13 }, { 23, 14 }, { 24, 14 },
225 /* f_huffman_env_bal_3_0dB - 25 entries */
226 { 12, 1 }, { 11, 2 }, { 13, 3 }, { 10, 4 }, { 14, 5 },
227 { 15, 6 }, { 9, 7 }, { 8, 8 }, { 16, 9 }, { 7, 11 },
228 { 17, 12 }, { 18, 13 }, { 0, 13 }, { 1, 13 }, { 2, 13 },
229 { 3, 13 }, { 4, 13 }, { 5, 14 }, { 6, 14 }, { 19, 14 },
230 { 20, 14 }, { 21, 14 }, { 22, 14 }, { 23, 14 }, { 24, 14 },
231 /* t_huffman_noise_3_0dB - 63 entries */
232 { 31, 1 }, { 32, 2 }, { 30, 3 }, { 29, 4 }, { 33, 5 },
233 { 28, 6 }, { 34, 8 }, { 27, 8 }, { 35, 10 }, { 26, 11 },
234 { 36, 13 }, { 42, 13 }, { 0, 13 }, { 1, 13 }, { 2, 13 },
235 { 3, 13 }, { 4, 13 }, { 5, 13 }, { 6, 13 }, { 7, 13 },
236 { 8, 13 }, { 9, 13 }, { 10, 13 }, { 11, 13 }, { 12, 13 },
237 { 13, 13 }, { 14, 13 }, { 15, 13 }, { 16, 13 }, { 17, 13 },
238 { 18, 13 }, { 19, 13 }, { 20, 13 }, { 21, 13 }, { 22, 13 },
239 { 23, 13 }, { 24, 13 }, { 25, 13 }, { 37, 13 }, { 38, 13 },
240 { 39, 13 }, { 40, 13 }, { 41, 13 }, { 43, 13 }, { 44, 13 },
241 { 45, 13 }, { 46, 13 }, { 47, 13 }, { 48, 13 }, { 49, 13 },
242 { 50, 13 }, { 51, 13 }, { 52, 13 }, { 53, 13 }, { 54, 13 },
243 { 55, 13 }, { 56, 13 }, { 57, 13 }, { 58, 13 }, { 59, 13 },
244 { 60, 13 }, { 61, 14 }, { 62, 14 },
245 /* t_huffman_noise_bal_3_0dB - 25 entries */
246 { 12, 1 }, { 11, 2 }, { 13, 3 }, { 10, 5 }, { 14, 6 },
247 { 0, 8 }, { 1, 8 }, { 2, 8 }, { 3, 8 }, { 4, 8 },
248 { 5, 8 }, { 6, 8 }, { 7, 8 }, { 8, 8 }, { 9, 8 },
249 { 15, 8 }, { 16, 8 }, { 17, 8 }, { 18, 8 }, { 19, 8 },
250 { 20, 8 }, { 21, 8 }, { 22, 8 }, { 23, 8 }, { 24, 8 },
251 };
252
253 static const uint8_t sbr_huffman_nb_codes[] = {
254 121, 121, 49, 49, 63, 63, 25, 25, 63, 25
255 };
256
257 static const int8_t sbr_vlc_offsets[10] = {
258 -60, -60, -24, -24, -31, -31, -12, -12, -31, -12
259 };
260
261 const VLCElem *ff_aac_sbr_vlc[10];
262
263 172 static av_cold void aacdec_common_init(void)
264 {
265 static VLCElem vlc_buf[(304 + 270 + 550 + 300 + 328 +
266 294 + 306 + 268 + 510 + 366 + 462) +
267 (1098 + 1092 + 768 + 1026 + 1058 +
268 1052 + 544 + 544 + 592 + 512)];
269 172 VLCInitState state = VLC_INIT_STATE(vlc_buf);
270 172 const uint8_t (*tab)[2] = sbr_huffman_tab;
271
272
2/2
✓ Branch 0 taken 1892 times.
✓ Branch 1 taken 172 times.
2064 for (unsigned i = 0; i < 11; i++) {
273 #define TAB_WRAP_SIZE(name) name[i], sizeof(name[i][0]), sizeof(name[i][0])
274 1892 ff_vlc_spectral[i] =
275 1892 ff_vlc_init_tables_sparse(&state, 8, ff_aac_spectral_sizes[i],
276 1892 TAB_WRAP_SIZE(ff_aac_spectral_bits),
277 1892 TAB_WRAP_SIZE(ff_aac_spectral_codes),
278 1892 TAB_WRAP_SIZE(ff_aac_codebook_vector_idx),
279 0);
280 }
281
282 172 VLC_INIT_STATIC_TABLE(ff_vlc_scalefactors, 7,
283 FF_ARRAY_ELEMS(ff_aac_scalefactor_code),
284 ff_aac_scalefactor_bits,
285 sizeof(ff_aac_scalefactor_bits[0]),
286 sizeof(ff_aac_scalefactor_bits[0]),
287 ff_aac_scalefactor_code,
288 sizeof(ff_aac_scalefactor_code[0]),
289 sizeof(ff_aac_scalefactor_code[0]), 0);
290
291 // SBR VLC table initialization
292
2/2
✓ Branch 0 taken 1720 times.
✓ Branch 1 taken 172 times.
1892 for (int i = 0; i < FF_ARRAY_ELEMS(ff_aac_sbr_vlc); i++) {
293 1720 ff_aac_sbr_vlc[i] =
294 1720 ff_vlc_init_tables_from_lengths(&state, 9, sbr_huffman_nb_codes[i],
295 1720 &tab[0][1], 2,
296 1720 &tab[0][0], 2, 1,
297 1720 sbr_vlc_offsets[i], 0);
298 1720 tab += sbr_huffman_nb_codes[i];
299 }
300
301 172 ff_ps_init_common();
302 172 }
303
304 304 av_cold void ff_aacdec_common_init_once(void)
305 {
306 static AVOnce init_static_once = AV_ONCE_INIT;
307 304 ff_thread_once(&init_static_once, aacdec_common_init);
308 304 }
309

lam是什么意思 小蛮腰什么意思 甲亢病是什么原因引起的 次长是什么职位 雀子是什么意思
紫罗兰是什么颜色 o什么意思 什么是早恋 淀粉和面粉有什么区别 总是口腔溃疡是什么原因
喝酒拉肚子吃什么药 大便呈绿色是什么原因 肚脐有分泌物还发臭是什么原因 腿疼挂什么科 发烧流鼻血是什么原因
存脐带血有什么用 阿胶适合什么人吃 部分是什么意思 芊芊是什么颜色 阿司匹林肠溶片什么时候吃
倪字五行属什么hcv9jop3ns2r.cn 母亲节送妈妈什么礼物好hcv8jop4ns9r.cn 漂白粉是什么hcv7jop9ns0r.cn 规培生是什么意思jasonfriends.com 积食吃什么药hcv8jop6ns9r.cn
农历10月是什么月hcv8jop1ns5r.cn 左心室强光点是什么意思hcv9jop5ns4r.cn 什么是化疗hanqikai.com 正月初八是什么星座hcv8jop7ns3r.cn 多普勒超声检查是什么hcv7jop7ns4r.cn
什么水果补血效果最好hcv8jop3ns7r.cn 踩指压板有什么好处hcv9jop0ns1r.cn 三月十九是什么星座hcv9jop1ns0r.cn 75年属什么hcv7jop7ns1r.cn 余沧海为什么是两个人hcv9jop4ns0r.cn
男人后背有痣代表什么hcv8jop7ns5r.cn pd990是什么金hcv8jop9ns6r.cn 天花是什么病hcv8jop8ns0r.cn 护士一般是什么学历hcv8jop6ns0r.cn 来月经量少吃什么可以增加月经量hcv9jop4ns0r.cn
百度