[Speex-dev] decode problem

Stefano Falasca fala70 at alice.it
Wed Apr 30 03:59:52 PDT 2008


I am using first time speex library, and this is my first problem. I need to
decode AMR-NB packet to PCM. I read all manual instruction and I wrote these
simple lines of code.


bool CMMediaObj::AmrInit()



            destate = speex_decoder_init(&speex_nb_mode);

            int tmp=1;

            speex_decoder_ctl(destate, SPEEX_SET_ENH, &tmp);

            return true;


void CMMediaObj::AmrFreeMemory()


            if (destate){





#define FRAME_SIZE 320

int CMMediaObj::AmrDecodeOneFrame(char *src,char *dst) 


            speex_bits_read_from(&bits, src, 14);

            speex_decode_int(destate, &bits, (short*)dst);

            return FRAME_SIZE;



My problem is that I hear only strange sound. I receive packet of 14 bytes
for each frame and I call AmrDecodeOneFrame for each frame. Then 14 bytes
amr packet should be 320 bytes uncompress data. speex_decode_int return 0
then good result.

Where is the problem ????




-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.xiph.org/pipermail/speex-dev/attachments/20080430/0c8f682a/attachment.htm 

More information about the Speex-dev mailing list