一、计算公式
Size = ((Rate * 1000 * Precision * Channels * Length) / 8) + 44
参数说明:
Size : 文件大小,Byte
Rate :采样率,kHz
Precision : 采样位数,bit
Channels : 声道数量
Length : 音频长度,s(秒)
那么根据反过来根据文件大小计算播放长度公式就是:
Length = (Size - 44) * 8 / (Rate * 1000 * Precision * Channerls)
比特率的计算:
bit_rate = Rate * Precision * Channels
注意:Precision可以通过字节长度*8获取
使用wave读取的结果如下
source = wave.open(file_path)
params = source.getparams()
""
output:
_wave_params(nchannels=2, sampwidth=2, framerate=44100,
nframes=3670977, comptype='NONE', compname='not compressed')
解释:
size:可以通过os模块获取
Rate对应framerate,文件的是hz,所以需要除以1k
Precision对应sampwidth,这里是单位量,所以需要乘以单位数8,这个例子中就是2*8
Channels对应nchannels.
Length:视频时间
""