Мне нужно извлечь образцы одного канала из wav файла, который будет содержать до 12 (11,1-формат) каналов. Я знаю, что в обычных стереофайлах образцы чередуются, сначала слева, а затем вправо, например,
[1st L] [1st R] [2nd L] [2nd R]...
Итак, чтобы прочитать левый канал, я бы сделал это,
for (var i = 0; i < myByteArray.Length; i += (bitDepth / 8) * 2)
{
// Get bytes and convert to actual samples.
}
И чтобы получить правильный канал, я просто выполнил for (var i = (bitDepth / 8)...
.
Но какой порядок используется для файлов с более чем двумя каналами?