Mercurial > libavcodec.hg
annotate ac3tab.h @ 11575:5a7797213359 libavcodec
Reduce the size of the bidir refine hashtable from 4096 to 256 and
change the hash function to something more sane and simple.
about 1/3 faster, no meassureable change in psnr or size and i gues
its even same md5 with my test file but i forgot testing that.
author | michael |
---|---|
date | Fri, 02 Apr 2010 11:06:29 +0000 |
parents | ba5d9a97ab2f |
children |
rev | line source |
---|---|
782 | 1 /* |
7470
1a93d3bbe3ee
cosmetics: make all references to AC-3 capitalized and hyphenated
jbr
parents:
6763
diff
changeset
|
2 * AC-3 tables |
8629
04423b2f6e0b
cosmetics: Remove pointless period after copyright statement non-sentences.
diego
parents:
7760
diff
changeset
|
3 * Copyright (c) 2000, 2001, 2002 Fabrice Bellard |
782 | 4 * |
3947
c8c591fe26f8
Change license headers to say 'FFmpeg' instead of 'this program/this library'
diego
parents:
3036
diff
changeset
|
5 * This file is part of FFmpeg. |
c8c591fe26f8
Change license headers to say 'FFmpeg' instead of 'this program/this library'
diego
parents:
3036
diff
changeset
|
6 * |
c8c591fe26f8
Change license headers to say 'FFmpeg' instead of 'this program/this library'
diego
parents:
3036
diff
changeset
|
7 * FFmpeg is free software; you can redistribute it and/or |
782 | 8 * modify it under the terms of the GNU Lesser General Public |
9 * License as published by the Free Software Foundation; either | |
3947
c8c591fe26f8
Change license headers to say 'FFmpeg' instead of 'this program/this library'
diego
parents:
3036
diff
changeset
|
10 * version 2.1 of the License, or (at your option) any later version. |
782 | 11 * |
3947
c8c591fe26f8
Change license headers to say 'FFmpeg' instead of 'this program/this library'
diego
parents:
3036
diff
changeset
|
12 * FFmpeg is distributed in the hope that it will be useful, |
782 | 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 | |
3947
c8c591fe26f8
Change license headers to say 'FFmpeg' instead of 'this program/this library'
diego
parents:
3036
diff
changeset
|
18 * License along with FFmpeg; if not, write to the Free Software |
3036
0b546eab515d
Update licensing information: The FSF changed postal address.
diego
parents:
2967
diff
changeset
|
19 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA |
782 | 20 */ |
21 | |
7760 | 22 #ifndef AVCODEC_AC3TAB_H |
23 #define AVCODEC_AC3TAB_H | |
782 | 24 |
6763 | 25 #include "libavutil/common.h" |
4648 | 26 |
6002 | 27 extern const uint16_t ff_ac3_frame_size_tab[38][3]; |
28 extern const uint8_t ff_ac3_channels_tab[8]; | |
9512
ba5d9a97ab2f
Add channel layout support to the AC-3 decoder and AC-3 parser.
jbr
parents:
9454
diff
changeset
|
29 extern const uint16_t ff_ac3_channel_layout_tab[8]; |
9452 | 30 extern const uint8_t ff_ac3_enc_channel_map[8][2][6]; |
9454
7db61b0d21f9
ac3dec: reorder output channels to SMPTE channel order
jbr
parents:
9452
diff
changeset
|
31 extern const uint8_t ff_ac3_dec_channel_map[8][2][6]; |
6002 | 32 extern const uint16_t ff_ac3_sample_rate_tab[3]; |
33 extern const uint16_t ff_ac3_bitrate_tab[19]; | |
4880 | 34 extern const int16_t ff_ac3_window[256]; |
6002 | 35 extern const uint8_t ff_ac3_log_add_tab[260]; |
36 extern const uint16_t ff_ac3_hearing_threshold_tab[50][3]; | |
37 extern const uint8_t ff_ac3_bap_tab[64]; | |
38 extern const uint8_t ff_ac3_slow_decay_tab[4]; | |
39 extern const uint8_t ff_ac3_fast_decay_tab[4]; | |
40 extern const uint16_t ff_ac3_slow_gain_tab[4]; | |
41 extern const uint16_t ff_ac3_db_per_bit_tab[4]; | |
42 extern const int16_t ff_ac3_floor_tab[8]; | |
43 extern const uint16_t ff_ac3_fast_gain_tab[8]; | |
44 extern const uint8_t ff_ac3_critical_band_size_tab[50]; | |
6671
2d0b86dfe5bb
add a ff_ac3_parse_header_full() which calls ff_ac3_parse_header()
bwolowiec
parents:
6002
diff
changeset
|
45 extern const uint16_t ff_eac3_default_chmap[8]; |
2d0b86dfe5bb
add a ff_ac3_parse_header_full() which calls ff_ac3_parse_header()
bwolowiec
parents:
6002
diff
changeset
|
46 |
2d0b86dfe5bb
add a ff_ac3_parse_header_full() which calls ff_ac3_parse_header()
bwolowiec
parents:
6002
diff
changeset
|
47 /** Custom channel map locations bitmask |
2d0b86dfe5bb
add a ff_ac3_parse_header_full() which calls ff_ac3_parse_header()
bwolowiec
parents:
6002
diff
changeset
|
48 * Other channels described in documentation: |
2d0b86dfe5bb
add a ff_ac3_parse_header_full() which calls ff_ac3_parse_header()
bwolowiec
parents:
6002
diff
changeset
|
49 * Lc/Rc pair, Lrs/Rrs pair, Ts, Lsd/Rsd pair, |
2d0b86dfe5bb
add a ff_ac3_parse_header_full() which calls ff_ac3_parse_header()
bwolowiec
parents:
6002
diff
changeset
|
50 * Lw/Rw pair, Lvh/Rvh pair, Cvh, Reserved, LFE2 |
2d0b86dfe5bb
add a ff_ac3_parse_header_full() which calls ff_ac3_parse_header()
bwolowiec
parents:
6002
diff
changeset
|
51 */ |
2d0b86dfe5bb
add a ff_ac3_parse_header_full() which calls ff_ac3_parse_header()
bwolowiec
parents:
6002
diff
changeset
|
52 enum CustomChannelMapLocation{ |
2d0b86dfe5bb
add a ff_ac3_parse_header_full() which calls ff_ac3_parse_header()
bwolowiec
parents:
6002
diff
changeset
|
53 AC3_CHMAP_L= 1<<(15-0), |
2d0b86dfe5bb
add a ff_ac3_parse_header_full() which calls ff_ac3_parse_header()
bwolowiec
parents:
6002
diff
changeset
|
54 AC3_CHMAP_C= 1<<(15-1), |
2d0b86dfe5bb
add a ff_ac3_parse_header_full() which calls ff_ac3_parse_header()
bwolowiec
parents:
6002
diff
changeset
|
55 AC3_CHMAP_R= 1<<(15-2), |
2d0b86dfe5bb
add a ff_ac3_parse_header_full() which calls ff_ac3_parse_header()
bwolowiec
parents:
6002
diff
changeset
|
56 AC3_CHMAP_L_SUR= 1<<(15-3), |
2d0b86dfe5bb
add a ff_ac3_parse_header_full() which calls ff_ac3_parse_header()
bwolowiec
parents:
6002
diff
changeset
|
57 AC3_CHMAP_R_SUR = 1<<(15-4), |
2d0b86dfe5bb
add a ff_ac3_parse_header_full() which calls ff_ac3_parse_header()
bwolowiec
parents:
6002
diff
changeset
|
58 AC3_CHMAP_C_SUR= 1<<(15-7), |
2d0b86dfe5bb
add a ff_ac3_parse_header_full() which calls ff_ac3_parse_header()
bwolowiec
parents:
6002
diff
changeset
|
59 AC3_CHMAP_LFE = 1<<(15-15) |
2d0b86dfe5bb
add a ff_ac3_parse_header_full() which calls ff_ac3_parse_header()
bwolowiec
parents:
6002
diff
changeset
|
60 }; |
4684
6ec0afffc572
split ac3_parametric_bit_allocation into 3 separate functions
jbr
parents:
4679
diff
changeset
|
61 |
7760 | 62 #endif /* AVCODEC_AC3TAB_H */ |