Changeset 586:86cf0fedfa63 in roaraudio
- Timestamp:
- 08/19/08 16:34:00 (16 years ago)
- Branch:
- default
- Phase:
- public
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
roard/codecfilter_vorbis.c
r584 r586 106 106 ogg_packet header_comm; 107 107 ogg_packet header_code; 108 float ** encbuf; 109 int i, c; 110 int chans; 111 int end; 112 int16_t * data = (int16_t *) buf; 108 113 109 114 if ( ! self->opened ) { 110 } else {111 115 vorbis_analysis_headerout(&(self->encoder.vd), &(self->encoder.vc), &header, &header_comm, &header_code); 112 116 … … 123 127 } 124 128 self->opened = 1; 129 } else { 130 encbuf = vorbis_analysis_buffer(&(self->encoder.vd), len /* TODO: need to lookup the menaing of this */); 131 chans = s->info.channels; 132 end = len/(2*chans); 133 134 if ( chans == 1 ) { // use optimized code 135 for (i = 0; i < end; i++) 136 encbuf[0][i] = data[i]/32768.0; 137 138 } else if ( chans == 2 ) { // use optimized code 139 for (i = 0; i < end; i++) { 140 encbuf[0][i] = data[2*i ]/32768.0; 141 encbuf[1][i] = data[2*i+1]/32768.0; 142 } 143 } else { // use generic multi channel code 144 for (i = 0; i < end; i++) { 145 for (c = 0; c < chans; c++) { 146 encbuf[c][i] = data[chans*i+c]/32768.0; 147 } 148 } 149 } 125 150 } 126 151
Note: See TracChangeset
for help on using the changeset viewer.