Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/delphi/9.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#中的2通道wav转换为单通道wav)_C#_Asp.net Core_Audio_Wav_Naudio - Fatal编程技术网

跨平台问题(将C#中的2通道wav转换为单通道wav)

跨平台问题(将C#中的2通道wav转换为单通道wav),c#,asp.net-core,audio,wav,naudio,C#,Asp.net Core,Audio,Wav,Naudio,下面的代码只适用于Windows server。但我希望它也适用于Linux server。将2通道wav转换为单通道wav。请帮助 public static byte[] ConvertWavTo8000Hz16BitMonoWav(byte[] inArray) { using (var mem = new MemoryStream(inArray)) { using (var reader = new WaveFileReader(mem))

下面的代码只适用于Windows server。但我希望它也适用于Linux server。将2通道wav转换为单通道wav。请帮助

public static byte[] ConvertWavTo8000Hz16BitMonoWav(byte[] inArray)
{
    using (var mem = new MemoryStream(inArray))
    {
        using (var reader = new WaveFileReader(mem))
        {
            using (var converter = 
              WaveFormatConversionStream.CreatePcmStream(reader))
            {
                using (var upsampler = new WaveFormatConversionStream(new 

                  WaveFormat(8000, 16, 1), converter))
                {
                    byte[] data;
                    using (var m = new MemoryStream())
                    {
                        upsampler.CopyTo(m);
                        data = m.ToArray();
                    }
                    using (var m = new MemoryStream())
                    {
                        // to create a propper WAV header (44 bytes), 
                        //which begins with RIFF 
                        var w = new WaveFileWriter(m, upsampler.WaveFormat);
                        // append WAV data body
                        w.Write(data,0,data.Length);
                        return m.ToArray();
                    }   
                }
            }
        }
    }
}

您可以通过添加有关测试方式和结果的信息来提高此问题的质量。在Linux服务器上出现错误“msacm32.dll未加载或其相关资源”msacm32.dll仅存在于Windows server中。您可以通过添加有关测试方式和结果的信息来提高此问题的质量。它在Linux服务器上出现错误“msacm32.dll未加载或其依赖资源”msacm32.dll仅存在于Windows server中。