summaryrefslogtreecommitdiff
path: root/pjmedia/src/pjmedia-codec/ilbc/packing.c
diff options
context:
space:
mode:
Diffstat (limited to 'pjmedia/src/pjmedia-codec/ilbc/packing.c')
-rw-r--r--pjmedia/src/pjmedia-codec/ilbc/packing.c182
1 files changed, 0 insertions, 182 deletions
diff --git a/pjmedia/src/pjmedia-codec/ilbc/packing.c b/pjmedia/src/pjmedia-codec/ilbc/packing.c
deleted file mode 100644
index b7496a48..00000000
--- a/pjmedia/src/pjmedia-codec/ilbc/packing.c
+++ /dev/null
@@ -1,182 +0,0 @@
-
- /******************************************************************
-
- iLBC Speech Coder ANSI-C Source Code
-
- packing.c
-
- Copyright (C) The Internet Society (2004).
- All Rights Reserved.
-
- ******************************************************************/
-
- #include <math.h>
- #include <stdlib.h>
-
- #include "iLBC_define.h"
- #include "constants.h"
- #include "helpfun.h"
- #include "string.h"
-
- /*----------------------------------------------------------------*
- * splitting an integer into first most significant bits and
- * remaining least significant bits
- *---------------------------------------------------------------*/
-
- void packsplit(
- int *index, /* (i) the value to split */
- int *firstpart, /* (o) the value specified by most
- significant bits */
- int *rest, /* (o) the value specified by least
- significant bits */
-
-
-
-
-
- int bitno_firstpart, /* (i) number of bits in most
- significant part */
- int bitno_total /* (i) number of bits in full range
- of value */
- ){
- int bitno_rest = bitno_total-bitno_firstpart;
-
- *firstpart = *index>>(bitno_rest);
- *rest = *index-(*firstpart<<(bitno_rest));
- }
-
- /*----------------------------------------------------------------*
- * combining a value corresponding to msb's with a value
- * corresponding to lsb's
- *---------------------------------------------------------------*/
-
- void packcombine(
- int *index, /* (i/o) the msb value in the
- combined value out */
- int rest, /* (i) the lsb value */
- int bitno_rest /* (i) the number of bits in the
- lsb part */
- ){
- *index = *index<<bitno_rest;
- *index += rest;
- }
-
- /*----------------------------------------------------------------*
- * packing of bits into bitstream, i.e., vector of bytes
- *---------------------------------------------------------------*/
-
- void dopack(
- unsigned char **bitstream, /* (i/o) on entrance pointer to
- place in bitstream to pack
- new data, on exit pointer
- to place in bitstream to
- pack future data */
- int index, /* (i) the value to pack */
- int bitno, /* (i) the number of bits that the
- value will fit within */
- int *pos /* (i/o) write position in the
- current byte */
- ){
- int posLeft;
-
- /* Clear the bits before starting in a new byte */
-
- if ((*pos)==0) {
-
-
-
-
-
- **bitstream=0;
- }
-
- while (bitno>0) {
-
- /* Jump to the next byte if end of this byte is reached*/
-
- if (*pos==8) {
- *pos=0;
- (*bitstream)++;
- **bitstream=0;
- }
-
- posLeft=8-(*pos);
-
- /* Insert index into the bitstream */
-
- if (bitno <= posLeft) {
- **bitstream |= (unsigned char)(index<<(posLeft-bitno));
- *pos+=bitno;
- bitno=0;
- } else {
- **bitstream |= (unsigned char)(index>>(bitno-posLeft));
-
- *pos=8;
- index-=((index>>(bitno-posLeft))<<(bitno-posLeft));
-
- bitno-=posLeft;
- }
- }
- }
-
- /*----------------------------------------------------------------*
- * unpacking of bits from bitstream, i.e., vector of bytes
- *---------------------------------------------------------------*/
-
- void unpack(
- unsigned char **bitstream, /* (i/o) on entrance pointer to
- place in bitstream to
- unpack new data from, on
- exit pointer to place in
- bitstream to unpack future
- data from */
- int *index, /* (o) resulting value */
- int bitno, /* (i) number of bits used to
- represent the value */
- int *pos /* (i/o) read position in the
- current byte */
-
-
-
-
-
- ){
- int BitsLeft;
-
- *index=0;
-
- while (bitno>0) {
-
- /* move forward in bitstream when the end of the
- byte is reached */
-
- if (*pos==8) {
- *pos=0;
- (*bitstream)++;
- }
-
- BitsLeft=8-(*pos);
-
- /* Extract bits to index */
-
- if (BitsLeft>=bitno) {
- *index+=((((**bitstream)<<(*pos)) & 0xFF)>>(8-bitno));
-
- *pos+=bitno;
- bitno=0;
- } else {
-
- if ((8-bitno)>0) {
- *index+=((((**bitstream)<<(*pos)) & 0xFF)>>
- (8-bitno));
- *pos=8;
- } else {
- *index+=(((int)(((**bitstream)<<(*pos)) & 0xFF))<<
- (bitno-8));
- *pos=8;
- }
- bitno-=BitsLeft;
- }
- }
- }
-