在之前本人进行的Ogg Vorbis测试中,已经发现不同的编解码器在解码(播放)时会在音频流的前端增加一段空白(参见Ogg Vorbis 测试报告)。现在,外国也有人发现了这个情况,并总结出不同的编码/解码器组合下会产生的延时,见下表(资料来源:ff123.net)。
编码器 | 解码器 | 延时 (毫秒) |
lame 3.92 --alt-preset standard | lame 3.92 --decode | 0 |
Blade 0.94.2, 256 kbit/s | lame 3.92 --decode | 0 |
Thompson mp3pro 1.04, 64 kbit/s | Thompson mp3pro 1.04 | 105 |
MMJB 7.2 mp3pro, 64 kbit/s | MMJB 7.2 | 79 |
wm8eutil 8.0.0.0343, 64 kbit/s | in_wm.dll from Winamp 2.6 | 46 |
oggenc 0.9 (rc3), (-q 3) | in_vorbis.dll from Winamp 2.80 | 0 |
mppenc 1.04 (--standard) | mppdec 1.04 | 0 |
Quicktime 6 AAC, 64 kbit/s | Quicktime 6 | 66 |
导致出现延时的原因在编码器和解码器两方面都有可能。但总的来说,作为音频编码算法本身是没有定义这种多余的输出的,所有的这些延时都是由于算法的实现(也就是程序本身)不佳导致。在之前进行Ogg Vorbis测试时,可以发现当时的Lame会在生成的mp3文件开头加上一段空白。但现在的Lame已经不会再出现这样的错误。在这一点上,开源软件的滚动发展相对商业软件封闭、突进式的发展更有效率。
- END -
本文版权所有,未经作者本人(苏信东)许可不得转载于任何媒体。
本站微信订阅号:
本页网址二维码: