跨平台问题(将C#中的2通道wav转换为单通道wav)
下面的代码只适用于Windows server。但我希望它也适用于Linux server。将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))
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中。