对于计算CBR的MP3的播放时间,其是Constant Bitrate,固定的比特率,每一帧的比特率也都是固定的同样的大小,所以,相对来说,很容易想得到,用文件大小,直接除于比特率,就可以得到文件的播放时间了,即就用如下公式可以计算MP3的播放时间:
公式 4.1. CBR播放时间(CBR Duration)
CBR Duration
= File Size(Byte) × 8 bit/Byte ÷ (Bitrate(K bit/s)× 1000 bit/Kbit )
CBR播放时间
= 文件大小(字节)× 8比特/字节 ÷(比特率 千比特/秒 ×1000 比特/千比特)
其中:
- 文件大小:
严格地说,应该是MP3的文件总大小,减去MP3的Tag的大小,即
文件大小 = 总的MP3文件大小 – MP3的Tag大小
其中,MP3的Tag,往往和MP3文件总大小相比,几乎可以忽略不计,所以,一般也可以直接用总的MP3为文件大小,直接来计算:
文件大小 = 总的MP3文件大小
- 比特率:
可以通过解析MP3文件的第一帧的MPEG的帧头,得到比特率的索引值,然后查比特率索引表,即可得到比特率是多少。
所以,可以看出,对于CBR的文件,可以用上面的公式,获得MP3文件大小后,再去解析第一帧的MPEG帧头,得到比特率索引值,查表得到比特率的值,然后就算出整个CBR MP3文件的播放时间。