/* | |
** Copyright 2003-2010, VisualOn, Inc. | |
** | |
** 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. | |
*/ | |
/*--------------------------------------------------------------------------* | |
* BITS.H * | |
*--------------------------------------------------------------------------* | |
* Number of bits for different modes * | |
*--------------------------------------------------------------------------*/ | |
#ifndef __BITS_H__ | |
#define __BITS_H__ | |
#include <stdio.h> | |
#include "typedef.h" | |
#include "cnst.h" | |
#include "cod_main.h" | |
#define NBBITS_7k 132 /* 6.60k */ | |
#define NBBITS_9k 177 /* 8.85k */ | |
#define NBBITS_12k 253 /* 12.65k */ | |
#define NBBITS_14k 285 /* 14.25k */ | |
#define NBBITS_16k 317 /* 15.85k */ | |
#define NBBITS_18k 365 /* 18.25k */ | |
#define NBBITS_20k 397 /* 19.85k */ | |
#define NBBITS_23k 461 /* 23.05k */ | |
#define NBBITS_24k 477 /* 23.85k */ | |
#define NBBITS_SID 35 | |
#define NB_BITS_MAX NBBITS_24k | |
#define BIT_0 (Word16)-127 | |
#define BIT_1 (Word16)127 | |
#define BIT_0_ITU (Word16)0x007F | |
#define BIT_1_ITU (Word16)0x0081 | |
#define SIZE_MAX1 (3+NB_BITS_MAX) /* serial size max */ | |
#define TX_FRAME_TYPE (Word16)0x6b21 | |
#define RX_FRAME_TYPE (Word16)0x6b20 | |
static const Word16 nb_of_bits[NUM_OF_MODES] = { | |
NBBITS_7k, | |
NBBITS_9k, | |
NBBITS_12k, | |
NBBITS_14k, | |
NBBITS_16k, | |
NBBITS_18k, | |
NBBITS_20k, | |
NBBITS_23k, | |
NBBITS_24k, | |
NBBITS_SID | |
}; | |
/*typedef struct | |
{ | |
Word16 sid_update_counter; | |
Word16 sid_handover_debt; | |
Word16 prev_ft; | |
} TX_State; | |
*/ | |
//typedef struct | |
//{ | |
// Word16 prev_ft; | |
// Word16 prev_mode; | |
//} RX_State; | |
int PackBits(Word16 prms[], Word16 coding_mode, Word16 mode, Coder_State *st); | |
void Parm_serial( | |
Word16 value, /* input : parameter value */ | |
Word16 no_of_bits, /* input : number of bits */ | |
Word16 ** prms | |
); | |
#endif //__BITS_H__ | |