如何将 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?的主要内容,如果未能解决你的问题,请参考以下文章
使用 Tritonus AudioSystem:将 PCM byte[] 数组转换为 mp3 byte[] 数组
在 Kotlin/Android Studio 中无法将 mp3 转换为 pcm - UnsupportedAudioFileException