Libav
|
00001 /* 00002 * AC-3 and E-AC-3 decoder tables 00003 * Copyright (c) 2007 Bartlomiej Wolowiec <bartek.wolowiec@gmail.com> 00004 * 00005 * This file is part of FFmpeg. 00006 * 00007 * FFmpeg is free software; you can redistribute it and/or 00008 * modify it under the terms of the GNU Lesser General Public 00009 * License as published by the Free Software Foundation; either 00010 * version 2.1 of the License, or (at your option) any later version. 00011 * 00012 * FFmpeg is distributed in the hope that it will be useful, 00013 * but WITHOUT ANY WARRANTY; without even the implied warranty of 00014 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 00015 * Lesser General Public License for more details. 00016 * 00017 * You should have received a copy of the GNU Lesser General Public 00018 * License along with FFmpeg; if not, write to the Free Software 00019 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA 00020 */ 00021 00027 #include "ac3dec_data.h" 00028 #include "ac3.h" 00029 00035 const uint8_t ff_ac3_ungroup_3_in_5_bits_tab[32][3] = { 00036 { 0, 0, 0 }, { 0, 0, 1 }, { 0, 0, 2 }, { 0, 1, 0 }, 00037 { 0, 1, 1 }, { 0, 1, 2 }, { 0, 2, 0 }, { 0, 2, 1 }, 00038 { 0, 2, 2 }, { 1, 0, 0 }, { 1, 0, 1 }, { 1, 0, 2 }, 00039 { 1, 1, 0 }, { 1, 1, 1 }, { 1, 1, 2 }, { 1, 2, 0 }, 00040 { 1, 2, 1 }, { 1, 2, 2 }, { 2, 0, 0 }, { 2, 0, 1 }, 00041 { 2, 0, 2 }, { 2, 1, 0 }, { 2, 1, 1 }, { 2, 1, 2 }, 00042 { 2, 2, 0 }, { 2, 2, 1 }, { 2, 2, 2 }, { 3, 0, 0 }, 00043 { 3, 0, 1 }, { 3, 0, 2 }, { 3, 1, 0 }, { 3, 1, 1 } 00044 }; 00045 00050 const uint8_t ff_ac3_rematrix_band_tab[5] = { 13, 25, 37, 61, 253 }; 00051 00052 const uint8_t ff_eac3_hebap_tab[64] = { 00053 0, 1, 2, 3, 4, 5, 6, 7, 8, 8, 00054 8, 8, 9, 9, 9, 10, 10, 10, 10, 11, 00055 11, 11, 11, 12, 12, 12, 12, 13, 13, 13, 00056 13, 14, 14, 14, 14, 15, 15, 15, 15, 16, 00057 16, 16, 16, 17, 17, 17, 17, 18, 18, 18, 00058 18, 18, 18, 18, 18, 19, 19, 19, 19, 19, 00059 19, 19, 19, 19, 00060 }; 00061 00065 const uint8_t ff_eac3_default_cpl_band_struct[18] = 00066 { 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 1, 1, 0, 1, 1, 1, 1, 1 }; 00067 00071 const uint8_t ff_eac3_default_spx_band_struct[17] = 00072 { 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1 };