有谁知道如何通过C#将GSM音频转换为PCM WAV?我试图在互联网上找到一个可行的解决方案无济于事。
答案 0 :(得分:2)
另一种选择是SoX(命令行/库)
答案 1 :(得分:1)
这是指向编码和解码GSM文件的C库的链接:
http://user.cs.tu-berlin.de/~jutta/gsm/gsm-1.0.13.tar.gz
以及指向该主题的更多信息的链接:
http://user.cs.tu-berlin.de/~jutta/toast.html
应该可以将C代码编译为DLL并使用PInvoke从C#应用程序调用它,或者将这些方法直接合并到C#app中。
将GSM数据解码为样本数据后,将其写入WAV文件非常简单。
答案 2 :(得分:0)
这适用于java,但它应该适用于C#:
答案 3 :(得分:0)
请参阅以下http://alvas.net/alvas.audio,articles.aspx#mp3-to-wav-without-desktop-experience
中的代码void AnyToWav(string fileName)
{
DsReader dr1 = new DsReader(fileName);
if (dr1.HasAudio)
{
WaveWriter ww = new WaveWriter(File.Create(fileName + ".wav"),
AudioCompressionManager.FormatBytes(dr1.ReadFormat()));
ww.WriteData(dr1.ReadData());
ww.Close();
Console.WriteLine("Done!");
}
else
{
Console.WriteLine("Has no audio");
}
}