Changeset 2975:5ea4bfd9167f in roaraudio


Ignore:
Timestamp:
10/21/09 23:01:02 (15 years ago)
Author:
phi
Branch:
default
Phase:
public
Message:

support for some common codec options

File:
1 edited

Legend:

Unmodified
Added
Removed
  • roard/codecfilter_speex.c

    r2973 r2975  
    4040#define _FS (_16BIT * (self->stereo ? 2 : 1)) 
    4141 
     42#define _HAVE_CCFG(x) (self->codec_config != NULL && (self->codec_config->para_set & (x))) 
     43 
    4244int cf_speex_open(CODECFILTER_USERDATA_T * inst, int codec, 
    4345                                            struct roar_stream_server * info, 
     
    305307   return -1; 
    306308 
    307   tmp = 8; 
    308   speex_encoder_ctl(self->encoder, SPEEX_SET_QUALITY,    &tmp); 
     309  if ( _HAVE_CCFG(ROAR_LIBROAR_CONFIG_PSET_COMPLEXITY) ) { 
     310   tmp = self->codec_config->complexity / 256; 
     311  } else { 
     312   tmp = 8; 
     313  } 
     314  speex_encoder_ctl(self->encoder, SPEEX_SET_COMPLEXITY,    &tmp); 
     315 
     316  if ( _HAVE_CCFG(ROAR_LIBROAR_CONFIG_PSET_Q) ) { 
     317   tmp = self->codec_config->q / 256; 
     318   speex_encoder_ctl(self->encoder, SPEEX_SET_QUALITY,      &tmp); 
     319  } 
     320 
     321  if ( _HAVE_CCFG(ROAR_LIBROAR_CONFIG_PSET_VBR) ) { 
     322   tmp = self->codec_config->vbr ? 1 : 0; 
     323   speex_encoder_ctl(self->encoder, SPEEX_SET_VBR,          &tmp); 
     324  } 
     325 
     326  if ( _HAVE_CCFG(ROAR_LIBROAR_CONFIG_PSET_DTX) ) { 
     327   tmp = self->codec_config->dtx ? 1 : 0; 
     328   speex_encoder_ctl(self->encoder, SPEEX_SET_DTX,          &tmp); 
     329  } 
     330 
    309331  speex_encoder_ctl(self->encoder, SPEEX_GET_FRAME_SIZE, &(self->frame_size)); 
    310332 
Note: See TracChangeset for help on using the changeset viewer.