added suffix to real fft. The celtclient can now be built with an unmodified
authorJean-Marc Valin <jean-marc.valin@usherbrooke.ca>
Mon, 3 Mar 2008 11:28:23 +0000 (22:28 +1100)
committerJean-Marc Valin <jean-marc.valin@usherbrooke.ca>
Mon, 3 Mar 2008 11:28:23 +0000 (22:28 +1100)
speexdsp library.

libcelt/kiss_fftr.h
tools/celtclient.c

index 7cc5bc6..32fda67 100644 (file)
@@ -6,7 +6,13 @@
 extern "C" {
 #endif
 
-    
+#define kiss_fftr_alloc SUF(kiss_fftr_alloc,KF_SUFFIX)
+
+#define kiss_fftr_alloc SUF(kiss_fftr_alloc,KF_SUFFIX)
+#define kiss_fftr_twiddles SUF(kiss_fftr_twiddles,KF_SUFFIX)
+#define kiss_fftr SUF(kiss_fftr,KF_SUFFIX)
+#define kiss_fftri SUF(kiss_fftri,KF_SUFFIX)
+
 /* 
  
  Real optimized version can save about 45% cpu time vs. complex fft of a real seq.
@@ -38,6 +44,7 @@ kiss_fftr_cfg kiss_fftr_alloc(int nfft,void * mem, size_t * lenmem);
  input timedata has nfft scalar points
  output freqdata has nfft/2+1 complex points, packed into nfft scalar points
 */
+void kiss_fftr_twiddles(kiss_fftr_cfg st,kiss_fft_scalar *freqdata);
 
 void kiss_fftr(kiss_fftr_cfg st,const kiss_fft_scalar *timedata,kiss_fft_scalar *freqdata);
 
index 5da6029..08c612d 100644 (file)
@@ -121,8 +121,9 @@ int main(int argc, char *argv[])
    /* Setup the encoder and decoder in wideband */
    CELTEncoder *enc_state;
    CELTDecoder *dec_state;
-   enc_state = celt_encoder_new(celt_mono);   
-   dec_state = celt_decoder_new(celt_mono);   
+   CELTMode *mode = celt_mode_create(48000, 2, 256, 128, NULL);
+   enc_state = celt_encoder_create(mode);   
+   dec_state = celt_decoder_create(mode);   
    struct sched_param param;
    /*param.sched_priority = 40; */
    param.sched_priority = sched_get_priority_min(SCHED_FIFO);
@@ -142,7 +143,8 @@ int main(int argc, char *argv[])
    /* Setup jitter buffer using decoder */
    JitterBuffer *jitter;
    jitter = jitter_buffer_init(FRAME_SIZE);
-   
+   tmp = FRAME_SIZE;
+   jitter_buffer_ctl(jitter, JITTER_BUFFER_SET_MARGIN, &tmp);
    /* Echo canceller with 200 ms tail length */
    SpeexEchoState *echo_state = speex_echo_state_init(FRAME_SIZE, 10*FRAME_SIZE);
    tmp = SAMPLING_RATE;