aboutsummaryrefslogtreecommitdiffstats
path: root/codecs/ilbc/packing.c
diff options
context:
space:
mode:
authorkpfleming <kpfleming@f38db490-d61c-443f-a65b-d21fe96a405b>2008-03-26 17:10:28 +0000
committerkpfleming <kpfleming@f38db490-d61c-443f-a65b-d21fe96a405b>2008-03-26 17:10:28 +0000
commitadfd7f5f1374a6b0d8b60a43684d5ec4dff51874 (patch)
treeed528d6e40b53ec5f3c552e8397f98e471c489db /codecs/ilbc/packing.c
parent97619eccb1ddd6771755f632ace40f4119743c60 (diff)
Merged revisions 110880 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4 ................ r110880 | kpfleming | 2008-03-26 09:42:35 -0700 (Wed, 26 Mar 2008) | 10 lines Merged revisions 110869 via svnmerge from https://origsvn.digium.com/svn/asterisk/branches/1.2 ........ r110869 | kpfleming | 2008-03-26 08:53:46 -0700 (Wed, 26 Mar 2008) | 2 lines due to licensing restrictions, we cannot distribute the source code for iLBC encoding and decoding... so remove it, and add instructions on how the user can obtain it themselves ........ ................ git-svn-id: http://svn.digium.com/svn/asterisk/trunk@110881 f38db490-d61c-443f-a65b-d21fe96a405b
Diffstat (limited to 'codecs/ilbc/packing.c')
-rw-r--r--codecs/ilbc/packing.c175
1 files changed, 0 insertions, 175 deletions
diff --git a/codecs/ilbc/packing.c b/codecs/ilbc/packing.c
deleted file mode 100644
index 3071032e0..000000000
--- a/codecs/ilbc/packing.c
+++ /dev/null
@@ -1,175 +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 "packing.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;
- }
- }
-}
-
-