1 /* 2 ** Copyright 2003-2010, VisualOn, Inc. 3 ** 4 ** Licensed under the Apache License, Version 2.0 (the "License"); 5 ** you may not use this file except in compliance with the License. 6 ** You may obtain a copy of the License at 7 ** 8 ** http://www.apache.org/licenses/LICENSE-2.0 9 ** 10 ** Unless required by applicable law or agreed to in writing, software 11 ** distributed under the License is distributed on an "AS IS" BASIS, 12 ** WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 ** See the License for the specific language governing permissions and 14 ** limitations under the License. 15 */ 16 17 18 /*--------------------------------------------------------------------------* 19 * BITS.H * 20 *--------------------------------------------------------------------------* 21 * Number of bits for different modes * 22 *--------------------------------------------------------------------------*/ 23 24 #ifndef __BITS_H__ 25 #define __BITS_H__ 26 27 #include <stdio.h> 28 #include "typedef.h" 29 #include "cnst.h" 30 #include "cod_main.h" 31 32 #define NBBITS_7k 132 /* 6.60k */ 33 #define NBBITS_9k 177 /* 8.85k */ 34 #define NBBITS_12k 253 /* 12.65k */ 35 #define NBBITS_14k 285 /* 14.25k */ 36 #define NBBITS_16k 317 /* 15.85k */ 37 #define NBBITS_18k 365 /* 18.25k */ 38 #define NBBITS_20k 397 /* 19.85k */ 39 #define NBBITS_23k 461 /* 23.05k */ 40 #define NBBITS_24k 477 /* 23.85k */ 41 42 #define NBBITS_SID 35 43 #define NB_BITS_MAX NBBITS_24k 44 45 #define BIT_0 ((Word16)-127) 46 #define BIT_1 (Word16)127 47 #define BIT_0_ITU (Word16)0x007F 48 #define BIT_1_ITU (Word16)0x0081 49 50 #define SIZE_MAX1 (3+NB_BITS_MAX) /* serial size max */ 51 #define TX_FRAME_TYPE (Word16)0x6b21 52 #define RX_FRAME_TYPE (Word16)0x6b20 53 54 static const Word16 nb_of_bits[NUM_OF_MODES] = { 55 NBBITS_7k, 56 NBBITS_9k, 57 NBBITS_12k, 58 NBBITS_14k, 59 NBBITS_16k, 60 NBBITS_18k, 61 NBBITS_20k, 62 NBBITS_23k, 63 NBBITS_24k, 64 NBBITS_SID 65 }; 66 67 /*typedef struct 68 { 69 Word16 sid_update_counter; 70 Word16 sid_handover_debt; 71 Word16 prev_ft; 72 } TX_State; 73 */ 74 75 //typedef struct 76 //{ 77 // Word16 prev_ft; 78 // Word16 prev_mode; 79 //} RX_State; 80 81 int PackBits(Word16 prms[], Word16 coding_mode, Word16 mode, Coder_State *st); 82 83 84 void Parm_serial( 85 Word16 value, /* input : parameter value */ 86 Word16 no_of_bits, /* input : number of bits */ 87 Word16 ** prms 88 ); 89 90 91 #endif //__BITS_H__ 92 93