Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/270.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 使用NAudio在特定频道播放声音_C#_.net_Audio_Naudio - Fatal编程技术网

C# 使用NAudio在特定频道播放声音

C# 使用NAudio在特定频道播放声音,c#,.net,audio,naudio,C#,.net,Audio,Naudio,我用NAudio做音响工作。我有具体的任务。我有8声道的声卡。如何仅在1个、2个或更多特定频道中播放声音。例如,我有以下代码: Device = new WaveOut(); var provider = new SineWaveProvider32(); provider.SetWaveFormat(44100, 1); provider.Frequency = 10

我用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();
此代码在所有频道上播放声音。
在这方面我需要改变什么?

您可以使用一个
MultiplexingWaveProvider
并为一个通道传递一个静音产生波提供程序,为另一个通道传递一个正弦波提供程序32


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

您可以使用
MultiplexingWaveProvider
,并为一个声道传入静音生成波形提供程序,为另一个声道传入正弦波提供程序32


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

非常感谢,@MarkHeath非常感谢,@MarkHeath