Compress WAV PCM to Microsoft GSM 6.10 Audio Codec using C#

和自甴很熟 提交于 2020-01-06 04:32:47

问题


Does any one know how to convert a uncompressed wave file in PCM format to a wav file compressed in GSM 6.10 Audio Codec?


回答1:


Try How to convert to Gsm Wav file

    static void ToWavWithGsm()
    {
        string fileName = @"e:\Down\male.wav";
        WaveReader wr = new WaveReader(File.OpenRead(fileName));
        IntPtr format = wr.ReadFormat();
        IntPtr formatGsm = AudioCompressionManager.GetCompatibleFormat(format,
            AudioCompressionManager.Gsm610FormatTag);
        byte[] dataGsm = AudioCompressionManager.ToFormat(wr, formatGsm);
        WaveWriter ww = new WaveWriter(File.Create(fileName + ".wav"),
            AudioCompressionManager.FormatBytes(formatGsm));
        ww.WriteData(dataGsm);
        ww.Close();
        wr.Close();
    }



回答2:


IIRC, if you have the codec installed, naudio should be able to encode with it using WaveFormatConversionStream



来源:https://stackoverflow.com/questions/9415358/compress-wav-pcm-to-microsoft-gsm-6-10-audio-codec-using-c-sharp

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!