Changeset 2816:b9e357b0dc43 in roaraudio for roard/codecfilter_vorbis.c


Ignore:
Timestamp:
09/29/09 18:04:39 (15 years ago)
Author:
phi
Branch:
default
Phase:
public
Message:

added prethru support and updated list of codecs a bit

File:
1 edited

Legend:

Unmodified
Added
Removed
  • roard/codecfilter_vorbis.c

    r2107 r2816  
    144144 int chans; 
    145145 int end; 
     146 int sid; 
     147 void * prethrubuf; 
    146148#if ROAR_VORBIS_BITS == 8 
    147149 int8_t  * data = (int8_t  *) buf; 
     
    161163  } 
    162164 
     165  sid = ROAR_STREAM(self->stream)->id; 
     166 
    163167  vorbis_analysis_headerout(&(self->encoder.vd), &(self->encoder.vc), &header, &header_comm, &header_code); 
    164168 
     
    166170  ogg_stream_packetin(&(self->encoder.os), &header_comm); 
    167171  ogg_stream_packetin(&(self->encoder.os), &header_code); 
     172 
     173  stream_prethru_destroy(sid); 
    168174 
    169175  while (ogg_stream_flush(&(self->encoder.os), &(self->encoder.og))) { 
     
    174180    free(self); // TODO: do we need addional cleanup? 
    175181    return -1; 
     182   } 
     183   // we ignore errors at the moment... 
     184   if ( stream_prethru_add_data(sid, &prethrubuf, self->encoder.og.header_len + self->encoder.og.body_len) != -1 ) { 
     185    memcpy(prethrubuf,                               self->encoder.og.header, self->encoder.og.header_len); 
     186    memcpy(prethrubuf + self->encoder.og.header_len, self->encoder.og.body,   self->encoder.og.body_len  ); 
    176187   } 
    177188  } 
Note: See TracChangeset for help on using the changeset viewer.