Changeset 2087:30d3653999b9 in roaraudio for roard/codecfilter_vorbis.c


Ignore:
Timestamp:
07/20/09 16:47:55 (15 years ago)
Author:
phi
Branch:
default
Phase:
public
Message:

added some debug outputs and got setting of quality for vorbis working :)

File:
1 edited

Legend:

Unmodified
Added
Removed
  • roard/codecfilter_vorbis.c

    r2084 r2087  
    9292#ifdef ROAR_HAVE_LIBVORBISENC 
    9393  // set up the encoder here 
     94// this is delayed to the write function 
     95/* 
    9496 if ( cf_vorbis_encode_start(self) == -1 ) { 
    9597  free(self); 
    9698  return -1; 
    9799 } 
     100*/ 
    98101#else 
    99102 free(self); 
     
    141144 
    142145 if ( ! self->opened ) { 
     146  if ( !self->encoding ) { 
     147   if ( cf_vorbis_encode_start(self) == -1 ) { 
     148    return -1; 
     149   } 
     150  } 
     151 
    143152  vorbis_analysis_headerout(&(self->encoder.vd), &(self->encoder.vc), &header, &header_comm, &header_code); 
    144153 
     
    338347#endif 
    339348 int sid = ROAR_STREAM(self->stream)->id; 
     349 float v_base_quality = self->encoder.v_base_quality; 
    340350 char val[LIBROAR_BUFFER_MSGDATA]; 
    341351 
     
    345355 
    346356  self->encoding = 1; 
    347   self->encoder.srn = srn + 1;; 
     357  self->encoder.srn = srn + 1; 
     358  self->encoder.v_base_quality = v_base_quality; 
    348359 
    349360  vorbis_info_init(&(self->encoder.vi)); 
     
    362373#endif 
    363374 
     375  ROAR_DBG("cf_vorbis_encode_start(*): q=%f", v_base_quality); 
     376 
    364377  if( vorbis_encode_init_vbr(&(self->encoder.vi), (long) ROAR_STREAM(self->stream)->info.channels, 
    365378                                                  (long) ROAR_STREAM(self->stream)->info.rate, 
    366                                                   self->encoder.v_base_quality) != 0 ) { 
     379                                                  v_base_quality) != 0 ) { 
    367380   ROAR_ERR("cf_vorbis_encode_start(*): Can not vorbis_encode_init_vbr(*)!"); 
    368381   vorbis_info_clear(&(self->encoder.vi)); // TODO: do we need to free vc also? 
     
    456469     return -1; 
    457470 
    458     self->encoder.v_base_quality = *(float*)data; 
     471    ROAR_DBG("cf_vorbis_ctl(*): setting quality to q=%f", *(float*)data); 
     472 
     473    self->encoder.v_base_quality = *(float*)data / 10; 
    459474 
    460475    if ( self->encoding ) { 
     
    471486   break; 
    472487  default: 
     488    ROAR_DBG("cf_vorbis_ctl(*): Unknown command: cmd=0x%.8x, type=0x%.8x, pcmd=0x%.8x", 
     489                    cmd, type, ROAR_CODECFILTER_CTL2CMD(cmd)); 
    473490    return -1; 
    474491 } 
Note: See TracChangeset for help on using the changeset viewer.