/****************************************************************************** * * * Copyright (C) 2018 The Android Open Source Project * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at: * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. * ***************************************************************************** * Originally developed and contributed by Ittiam Systems Pvt. Ltd, Bangalore */ #include #include "ixheaacd_type_def.h" #include "ixheaacd_interface.h" #include "ixheaacd_bitbuffer.h" #include "ixheaacd_info.h" const ia_huff_code_word_struct ixheaacd_huff_book_scl[] = { {60, 1, 0}, {59, 3, 4}, {61, 4, 10}, {58, 4, 11}, {62, 4, 12}, {57, 5, 26}, {63, 5, 27}, {56, 6, 56}, {64, 6, 57}, {55, 6, 58}, {65, 6, 59}, {66, 7, 120}, {54, 7, 121}, {67, 7, 122}, {53, 8, 246}, {68, 8, 247}, {52, 8, 248}, {69, 8, 249}, {51, 8, 250}, {70, 9, 502}, {50, 9, 503}, {49, 9, 504}, {71, 9, 505}, {72, 10, 1012}, {48, 10, 1013}, {73, 10, 1014}, {47, 10, 1015}, {74, 10, 1016}, {46, 10, 1017}, {76, 11, 2036}, {75, 11, 2037}, {77, 11, 2038}, {78, 11, 2039}, {45, 11, 2040}, {43, 11, 2041}, {44, 12, 4084}, {79, 12, 4085}, {42, 12, 4086}, {41, 12, 4087}, {80, 12, 4088}, {40, 12, 4089}, {81, 13, 8180}, {39, 13, 8181}, {82, 13, 8182}, {38, 13, 8183}, {83, 13, 8184}, {37, 14, 16370}, {35, 14, 16371}, {85, 14, 16372}, {33, 14, 16373}, {36, 14, 16374}, {34, 14, 16375}, {84, 14, 16376}, {32, 14, 16377}, {87, 15, 32756}, {89, 15, 32757}, {30, 15, 32758}, {31, 15, 32759}, {86, 16, 65520}, {29, 16, 65521}, {26, 16, 65522}, {27, 16, 65523}, {28, 16, 65524}, {24, 16, 65525}, {88, 16, 65526}, {25, 17, 131054}, {22, 17, 131055}, {23, 17, 131056}, {90, 18, 262114}, {21, 18, 262115}, {19, 18, 262116}, {3, 18, 262117}, {1, 18, 262118}, {2, 18, 262119}, {0, 18, 262120}, {98, 19, 524242}, {99, 19, 524243}, {100, 19, 524244}, {101, 19, 524245}, {102, 19, 524246}, {117, 19, 524247}, {97, 19, 524248}, {91, 19, 524249}, {92, 19, 524250}, {93, 19, 524251}, {94, 19, 524252}, {95, 19, 524253}, {96, 19, 524254}, {104, 19, 524255}, {111, 19, 524256}, {112, 19, 524257}, {113, 19, 524258}, {114, 19, 524259}, {115, 19, 524260}, {116, 19, 524261}, {110, 19, 524262}, {105, 19, 524263}, {106, 19, 524264}, {107, 19, 524265}, {108, 19, 524266}, {109, 19, 524267}, {118, 19, 524268}, {6, 19, 524269}, {8, 19, 524270}, {9, 19, 524271}, {10, 19, 524272}, {5, 19, 524273}, {103, 19, 524274}, {120, 19, 524275}, {119, 19, 524276}, {4, 19, 524277}, {7, 19, 524278}, {15, 19, 524279}, {16, 19, 524280}, {18, 19, 524281}, {20, 19, 524282}, {17, 19, 524283}, {11, 19, 524284}, {12, 19, 524285}, {14, 19, 524286}, {13, 19, 524287}}; const WORD32 ixheaacd_book_scl_index[33] = { 0x00000000, 0x10100004, 0x2040000c, 0x00a0003b, 0x30d0007a, 0x412000fa, 0x516001f9, 0x61c003f9, 0x722007f9, 0x82800ff9, 0x92d01ff8, 0xa3503ff9, 0xb400fff6, 0xc431fff0, 0x0687ffef, 0x0707fff7, 0x0747fffb, 0x0767fffd, 0x0777fffe, 0x0787ffff, 0x0030000b, 0x0060001b, 0x00f000f7, 0x014001f7, 0x01a003f7, 0x020007f7, 0x02600ff7, 0x02c01ff7, 0x03303ff7, 0x03907ff7, 0x0421ffef, 0x14a3ffe8, 0x0587ffdf}; const WORD16 ixheaacd_book_scl_code_book[122] = { 0x0013, 0x0781, 0x0763, 0x07a4, 0x0744, 0x07c4, 0x0725, 0x07e5, 0x0706, 0x0806, 0x06e6, 0x0826, 0x0847, 0x06c7, 0x0867, 0x06a8, 0x0888, 0x0688, 0x08a8, 0x0668, 0x08c9, 0x0649, 0x0629, 0x08e9, 0x090a, 0x060a, 0x092a, 0x05ea, 0x094a, 0x05ca, 0x098b, 0x096b, 0x09ab, 0x09cb, 0x05ab, 0x056b, 0x058c, 0x09ec, 0x054c, 0x052c, 0x0a0c, 0x050c, 0x0a2d, 0x04ed, 0x0a4d, 0x04cd, 0x0a6d, 0x04ae, 0x046e, 0x0aae, 0x042e, 0x048e, 0x044e, 0x0a8e, 0x040e, 0x0aef, 0x0b2f, 0x03cf, 0x03ef, 0x0ad0, 0x03b0, 0x0350, 0x0370, 0x0390, 0x0310, 0x0b10, 0x0331, 0x02d1, 0x02f1, 0x0b52, 0x02b2, 0x0272, 0x0072, 0x0032, 0x0052, 0x0012, 0x0c53, 0x0c73, 0x0c93, 0x0cb3, 0x0cd3, 0x0eb3, 0x0c33, 0x0b73, 0x0b93, 0x0bb3, 0x0bd3, 0x0bf3, 0x0c13, 0x0d13, 0x0df3, 0x0e13, 0x0e33, 0x0e53, 0x0e73, 0x0e93, 0x0dd3, 0x0d33, 0x0d53, 0x0d73, 0x0d93, 0x0db3, 0x0ed3, 0x00d3, 0x0113, 0x0133, 0x0153, 0x00b3, 0x0cf3, 0x0f13, 0x0ef3, 0x0093, 0x00f3, 0x01f3, 0x0213, 0x0253, 0x0293, 0x0233, 0x0173, 0x0193, 0x01d3, 0x01b3};