【问题标题】:Play sound on specific channel with NAudio使用 NAudio 在特定频道上播放声音
【发布时间】:2014-03-07 10:55:18
【问题描述】:

我正在使用 NAudio 进行声音工作。我有特定的任务。我有8声道声卡。如何仅在 1、2 或更多特定通道中播放声音。例如我有这个代码:

                Device = new WaveOut();
                var provider = new SineWaveProvider32();
                provider.SetWaveFormat(44100, 1);
                provider.Frequency = 1000f;
                provider.Amplitude = 1f;
                Device.DeviceNumber = number;
                Device.Init(provider);
                Device.Play();

此代码在所有频道上播放声音。 我需要改变什么?

【问题讨论】:

    标签: c# .net audio naudio


    【解决方案1】:

    您可以使用MultiplexingWaveProvider 并为一个通道传入一个产生静音的波形提供程序,为另一个通道传入一个 SineWaveProvider32。

    另请注意,您的声卡可能不一定支持通过 WaveOut API 的多声道音频。

    【讨论】:

    • 非常感谢@MarkHeath
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-11-10
    • 1970-01-01
    相关资源
    最近更新 更多