如何将 PCM 转换为 MP3?

Posted

技术标签:

【中文标题】如何将 PCM 转换为 MP3?【英文标题】:How to convert PCM to MP3? 【发布时间】:2020-04-09 08:30:34 【问题描述】:

我正在将 PCM 转换为 MP3 播放器。将 20KHz 的 PCM 文件转换为 MP3 效果不佳。有什么问题?

这是我的代码:

using (var retMs = new MemoryStream())
        using (var ms = new MemoryStream(File.ReadAllBytes(filename)))
        using (var rdr = new WaveFileReader(ms))
        using (var wtr = new LameMP3FileWriter(retMs, rdr.WaveFormat, 128))
        
            rdr.CopyTo(wtr);
            File.WriteAllBytes(Environment.CurrentDirectory + @"\Mix.mp3", retMs.ToArray());
        

【问题讨论】:

【参考方案1】:

在 128k 时,MP3 编码器使用大约 17 kHz 的低通滤波器。它上面的任何东西都会被丢弃。

如果在音频的最末端保留频率很重要,那么您根本不应该使用有损编解码器……当然也不应该使用 MP3。

【讨论】:

以上是关于如何将 PCM 转换为 MP3?的主要内容,如果未能解决你的问题,请参考以下文章

高分求一将音频格式修改MP3格式转换为PCM的软件

使用 Tritonus AudioSystem:将 PCM byte[] 数组转换为 mp3 byte[] 数组

在 Kotlin/Android Studio 中无法将 mp3 转换为 pcm - UnsupportedAudioFileException

如何使用 naudio 将立体声 pcm 样本转换为单声道样本

从 PCM 转换为 WAV。是不是可以?

请提供一个可以将PCM格式转化为其他格式的软件