ref: 65108666ab0c42175d4218c752c56612b3d8509c
parent: dc7f2cc1aa7189d5e4ccab4803282a162ead6afc
author: Paul Brossier <piem@piem.org>
date: Mon Apr 8 06:27:02 EDT 2013
src/io/source_sndfile.c: mono to stereo, copying last channel of file to all remaining output matrix channels
--- a/src/io/source_sndfile.c
+++ b/src/io/source_sndfile.c
@@ -204,6 +204,15 @@
data[i][j] = (smpl_t)s->scratch_data[input_channels*j+i];
}
}
+ // if read_data has more channels than the file
+ if (read_data->height > input_channels) {
+ // copy last channel to all additional channels
+ for (j = 0; j < read_samples / input_channels; j++) {
+ for (i = input_channels; i < read_to->height; i++) {
+ data[i][v] = s->scratch_data[ j * input_channels + (input_channels - 1)];
+ }
+ }
+ }
#ifdef HAVE_SAMPLERATE
if (s->resampler) {