15、无损音频编码与心理声学滤波技术解析

无损音频编码与心理声学滤波技术解析

1. 无损音频编码与解码

1.1 无损音频编码

在无损音频编码过程中,首先计算 Rice 系数,代码如下:

ricecoeffc=np.clip(np.ceil(np.log2((meanabs+1)*2/3)),0,None)
ricecoeff=np.round((ricecoeffc+ricecoefff)/2.0).astype(np.int8) #integer, 8bit
print("ricecoeff=", ricecoeff)
s=struct.pack('b'*int(len(ricecoeff)),*ricecoeff)
pickle.dump(s, codedfile, protocol=-1)

接着,使用这些 Rice 系数对各子带值进行 Golomb - Rice 编码并写入文件:

for k in range(N): #loop across subbands:
    if (k%100==0): print("Subband:",k)
    #m=2**b
    signedrice=rice(b=ricecoeff[k],signed=True)
    yrice= BitStream(ychan[chan,k,:].astype(np.int32), signedrice)
    #see: http://boisgera.github.io/bitstream/
    #Turn bitstream format into sequ
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值