我使用NAudio在運行時生成並播放聲波。使用NAudio混合WaveProviders
我已經成功地得到使用本教程中產生的正弦波: http://mark-dot-net.blogspot.com/2009/10/playback-of-sine-wave-in-naudio.html
但是 - 我真正需要的是能夠對許多個別波添加到WaveMixerStream,在運行時。
我明白要做到這一點,我需要單獨的WaveStreams,但我不知道如何將WaveProvider的輸出轉換爲WaveStream以添加到WaveMixerStream。
我認爲這是不可能的,所以改變了代碼來給出派生的WaveStream類。
我說:
public override long Length
{
get { return long.MaxValue; }
}
但我不知道怎麼去的位置:
public override long Position
{
get
{
return //What here?
}
set
{
// What here? = value;
}
}
所以,問題是:1。將這項工作? 2.我如何獲得/設置職位?
在此先感謝。
謝謝你的快速和有用的幫助。我想我已經明白了,但如果它變得醜陋,可能會回到這個問題!再次感謝。 – jwddixon
昨天晚上我確實在一個(完全未測試的)MixingWaveProvider32中進行了檢查,所以如果你想要去IWaveProvider路由,你可以看看。 –
@MarkHeath:你有關於使用ISampleProvider和MixingSampleProvider的教程嗎? – user523234