Speex stereo encoding

Денис Ромашенко <[email protected]>
Newsgroups gmane.comp.audio.compression.speex.devel
Message-ID <[email protected]>
Hi.
 I trying to encode PCM16 8000Hz stereo data to speex and put it into the .flv file format. But at the output I can hear only noise. What I doing wrong? Here is the code:
void main()
{
    SpeexBits bits; 
    void *enc_state; 
    int frame_size;
    int quality = 10;
    char cbits[MAX_FRAME_BYTES];
    FILE *fin, *speex;
    short input[MAX_FRAME_SIZE];
    int nbBytes;
    int channels = 0;
    int format = 0;
    int rate = 0;
    spx_int32_t fileSize;

//Open input wav file and read wav header
    fin = fopen("StereoPcm.wav", "rb");
    read_wav_header(fin, &rate, &channels, &format, &fileSize);

//Initialize bits and encoder
    speex_bits_init(&bits);
    enc_state = speex_encoder_init(&speex_nb_mode); 

//Set quality and get framesize
    speex_encoder_ctl(enc_state,SPEEX_SET_QUALITY,&quality); 
    speex_encoder_ctl(enc_state,SPEEX_GET_FRAME_SIZE,&frame_size);

//Create output .flv file
    FlvFileFormat flvFile(8, "StereoSpeex.flv", 11, 1, 1, channels - 1);

//Encode frame by frame
    while (nbBytes > 0)
    {
        nbBytes = fread(input, 1, frame_size * 2, fin);
        speex_bits_reset(&bits);

//If the input file is stereo calling to speex_encode_stereo_int
        if (channels==2)
        {
            speex_encode_stereo_int(input, frame_size, &bits);
        }

//Encode the input data and write it to the cbits
        speex_encode_int(enc_state, input, &bits);
        nbBytes = speex_bits_write(&bits, cbits, MAX_FRAME_BYTES);

//Add encoded frame to .flv file
        flvFile.AddTag(nbBytes, (unsigned char*)cbits);
    }

//Close the files and destroy encoder
    fclose(fin);
    fclose(speex);
    speex_bits_destroy(&bits);
    speex_encoder_destroy(enc_state);
}

And another question. Is the libspeex thread safe?
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.