我正在尝试使用NAudio将多个音频文件连接在一起。
我有字节数组的集合,其中字节数组代表各个音频轨道。
var samples = new List<ISampleProvider>();
foreach (var item in collection) {
ISampleProvider tempAudio = new RawSourceWaveStream(new MemoryStream(item), new WaveFormat()).ToSampleProvider();
samples.Add(tempAudio);
}
var playlist = new ConcatenatingSampleProvider(samples);
WaveFileWriter.CreateWaveFile("playlist.wav", playlist.ToWaveProvider());
但是,保存到文件“playlist.wav”的音频在尝试连接之前听起来不像音频。音频听起来更快,更不连贯。
集合中的“项目”是什么音频格式?你提供给WaveFormat
的RawSourceWaveStream
必须与item
中的音频完全匹配。你只是创建一个默认的WaveFormat
,IIRC将是44.1kHz 16位立体声