【发布时间】:2015-10-14 07:56:22
【问题描述】:
我希望能够将麦克风输出与 mp3 文件混合,并将其输出到特定设备。
我可以在特定设备上播放 mp3 文件:
Mp3FileReader reader = new Mp3FileReader("C:\\Users\\Victor\\Music\\Musik\\Attack.mp3");
var waveOut = new WaveOut();// or WaveOutEvent()
waveOut.DeviceNumber = deviceId; //deviceId, like 0 or 1
waveOut.Init(reader);
waveOut.Play();
所以我希望能够做的基本上是始终将麦克风输出发送到特定输出,并在按下按钮时用 mp3 文件的声音将该输出覆盖到该特定设备。 现在我正在尝试用 naudio 做些什么,如果是这样,我将如何去做?
谢谢!
【问题讨论】:
-
您需要查看
MixingWaveProvider32,它允许将多个通道混合到一个输出中。然后将WaveIn.StartRecording()与您的 Mp3FileReader 的流混合。我希望这能让你朝着正确的方向前进! -
感谢您的评论 - 不幸的是,我不确定如何获得适合 MixingWaveProvider32 构造函数的对象,该构造函数需要具有实现 IEnumerable
的类型的对象。我如何从 mp3filereader 中获取它和麦克风输入?