Ho lottato con questo per un po 'di tempo e non sono riuscito a trovare una soluzione funzionante.Il modo più semplice per leggere i campioni a 2 canali nell'array da WaveStream
Ho un file wav (16 bit PCM: 44kHz 2 canali) e voglio estrarre campioni in due array per ciascuno dei due canali. Per quanto ne so, il metodo diretto per questo non esiste nella libreria NAudio, quindi ho provato a eseguire il seguente codice per leggere alcuni campioni interlacciati ma l'array del buffer rimane vuoto (solo un gruppo di zeri):
using (WaveFileReader pcm = new WaveFileReader(@"file.wav"))
{
byte[] buffer = new byte[10000];
using (WaveStream aligned = new BlockAlignReductionStream(pcm))
{
aligned.Read(buffer, 0, 10000);
}
}
Qualsiasi aiuto su questo sarà molto apprezzato.
Hai visto questo: http://mark-dot-net.blogspot.com.au/2012/01/handling-multi-channel-audio-in-naudio.html – yamen