History

aacdec_usac: use correct TNS values

The standard slightly modified the maximum TNS bands allowed.

Lynne committed 2 years ago

Commit 72235231 parent 9b41cc03 files · +13 −2Browse files

Unified · Split

3 files
  1. libavcodec/aac/aacdec_usac.c +2 −2
  2. libavcodec/aactab.c +8 −0
  3. libavcodec/aactab.h +3 −0
libavcodec/aac/aacdec_usac.c+2−2
@@ -757,7 +757,7 @@ static int setup_sce(AACDecContext *ac, SingleChannelElement *sce, · 756 unmodified lines
757757 ics->swb_offset = ff_swb_offset_128[usac->rate_idx];
758758 ics->num_swb = ff_aac_num_swb_128[usac->rate_idx];
759759 }
760− ics->tns_max_bands = ff_tns_max_bands_128[usac->rate_idx];
760+ ics->tns_max_bands = ff_tns_max_bands_usac_128[usac->rate_idx];
761761
762762 /* Setup scalefactor grouping. 7 bit mask. */
763763 ics->num_window_groups = 0;
@@ -780,7 +780,7 @@ static int setup_sce(AACDecContext *ac, SingleChannelElement *sce, · 16 unmodified lines
780780 ics->swb_offset = ff_swb_offset_1024[usac->rate_idx];
781781 ics->num_swb = ff_aac_num_swb_1024[usac->rate_idx];
782782 }
783− ics->tns_max_bands = ff_tns_max_bands_1024[usac->rate_idx];
783+ ics->tns_max_bands = ff_tns_max_bands_usac_1024[usac->rate_idx];
784784
785785 ics->group_len[0] = 1;
786786 ics->num_window_groups = 1;
libavcodec/aactab.c+8−0
@@ -1985,6 +1985,10 @@ const uint8_t ff_tns_max_bands_1024[] = { · 1984 unmodified lines
19851985 31, 31, 34, 40, 42, 51, 46, 46, 42, 42, 42, 39, 39
19861986 };
19871987
1988+const uint8_t ff_tns_max_bands_usac_1024[] = {
1989+ 31, 31, 34, 40, 42, 51, 47, 47, 43, 43, 43, 40, 40
1990+};
1991+
19881992 const uint8_t ff_tns_max_bands_512[] = {
19891993 0, 0, 0, 31, 32, 37, 31, 31, 0, 0, 0, 0, 0
19901994 };
@@ -1996,6 +2000,10 @@ const uint8_t ff_tns_max_bands_480[] = { · 5 unmodified lines
19962000 const uint8_t ff_tns_max_bands_128[] = {
19972001 9, 9, 10, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14
19982002 };
2003+
2004+const uint8_t ff_tns_max_bands_usac_128[] = {
2005+ 9, 9, 10, 14, 14, 14, 15, 15, 15, 15, 15, 15, 15
2006+};
19992007 // @}
20002008
20012009 const uint8_t ff_usac_noise_fill_start_offset[2][2] = {
libavcodec/aactab.h+3−0
@@ -115,6 +115,9 @@ extern const uint8_t ff_tns_max_bands_512 [13]; · 114 unmodified lines
115115 extern const uint8_t ff_tns_max_bands_480 [13];
116116 extern const uint8_t ff_tns_max_bands_128 [13];
117117
118+extern const uint8_t ff_tns_max_bands_usac_1024[13];
119+extern const uint8_t ff_tns_max_bands_usac_128[13];
120+
118121 /* [x][y], x == 1 -> frame len is 768 frames, y == 1 -> is eight_short */
119122 extern const uint8_t ff_usac_noise_fill_start_offset[2][2];
120123

Keyboard shortcuts

General

Show keyboard shortcuts
?
Focus the current search
/

Issues and pull requests

Open filters
f

Issues, pull requests and Inbox

Select next item
j↓
Select previous item
k↑
Open selected item
Enter
Dismiss filters or clear selection
Esc

Repository code

Go to file
t