Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/331.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#_Naudio - Fatal编程技术网

C# 使用NAudio创建静默波流

C# 使用NAudio创建静默波流,c#,naudio,C#,Naudio,作为NAudio和音频应用程序的新手,我不知道如何实现以下功能: 我想制作一个空(静默)波流并将其转换为WaveChannel32,以便将其馈送到MultiplexingWaveProvider并使一个输出通道静音。 我尝试了一个静音wav文件,并成功地静音了输出通道,但最后我不想在应用程序中使用文件,而是“在运行中”使用它。 有什么想法吗?你可以很容易地制作一个静默IWaveProvider。创建一个实现IWaveProvider的类,并在Read方法中始终返回请求的字节数。也用零填充缓冲区

作为NAudio和音频应用程序的新手,我不知道如何实现以下功能:

我想制作一个空(静默)波流并将其转换为
WaveChannel32
,以便将其馈送到
MultiplexingWaveProvider
并使一个输出通道静音。 我尝试了一个静音wav文件,并成功地静音了输出通道,但最后我不想在应用程序中使用文件,而是“在运行中”使用它。
有什么想法吗?

你可以很容易地制作一个静默
IWaveProvider
。创建一个实现
IWaveProvider
的类,并在
Read
方法中始终返回请求的字节数。也用零填充缓冲区

对于
Read
方法,这样做可以:

public int Read(byte[] buffer, int offset, int count)
{
   for(int n = 0; n < count; n++) buffer[offset++] = 0;
   return count;
}
公共整数读取(字节[]缓冲区、整数偏移量、整数计数)
{
对于(int n=0;n
Thx标记。这个解决方案可能就是我想要的!看起来Mark忽略了自己的NAudio.Wave.SilenceProvider,它已经提供了这个实现