.ogg 里面到底装的是什么
这个扩展名指的是容器,不是编码,这一点常常把人绕进去。.ogg 文件里通常装的是 Vorbis,也就是大家说"OGG"时心里想的那个编码。但它同样可以装 Opus、FLAC, 甚至古老的 Speex。这些在这里都能读,所以你不需要事先搞清楚手上是哪一种。
区别只在一处:你该对结果抱什么预期。Vorbis 和 Opus 都是有损的, 所以这两种情况下 OGG 转 MP3 都是第二次有损编码。如果容器里恰好装的是 FLAC, 那就变成了首次编码,码率可以给足。
用兼容性换来的那笔交易
Vorbis 是个好编码。它没有专利负担,这也是它成为游戏引擎默认格式的原因; 同码率下多数听音测试也把它排在 MP3 前面一点。但这些优点, 在你需要播放它的那台设备根本没听说过它的时候,一点用都没有。
这就是这一页存在的全部理由。车机、老手机、DJ 软件、硬件采样器、 导入格式列表固定的视频剪辑软件,以及数量不少的广播系统,都会收下 MP3 而拒绝 OGG。 这次转换让你付出一点保真度,换回一个能用的文件。
码率要和源文件匹配
这是最值得避开的错误。把一个有损文件用高得多的码率重新编码,不会让它变好, 只会让它变大。MP3 编码器看不到 Vorbis 已经丢掉的细节, 所以多出来的那些比特全都花在了更精确地描述压缩后的结果上。
源是 128 kbps 就选 128 或 160;是 192 就选 192 或 256; 320 留给那些本来就是无损的源。不确定源文件是多少码率的话, 把文件体积除以时长就能大致算出来,误差不大。
所有过程都在你自己的机器上完成,用的是编译成 WebAssembly 的 ffmpeg, 第一个文件之后就被浏览器缓存下来。