EAC3 Transient Pre-Noise Processing

本文介绍了一种瞬态预噪声处理方法,该方法通过使用位于瞬态材料之前的PCM信号覆盖预噪声部分,来减少预噪声长度及改善听觉体验。在编码过程中,通过对瞬态位置进行检测,并将相关信息嵌入比特流,以降低解码器的复杂度。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Transient pre-noise processing用于减少pre-noise的长度,pre-noise产生于low bitrate 编码存在transient matiral的场景。

当使用transient pre-noise processing时,使用位于transient matiral之前的PCM来覆盖transient pre-noise的部分,从而减少pre-noise带来的不好的听觉体验。

 

为减少decoder的复杂度,在encoder会检测transient的位置,做time scale synthesis analysis,并将信息压到bitstream.

Transproce 标识在当前frame中的任意fbw channel是否存在transient pre-noise time scaling synthesis processing information.

如果transproce为1,每个fbw channel的chintransproc[ch]都会设置为1,每个fbw channel的transprocloc[ch](transient 位置),transproclen[ch](time scale length)都可以从bitstream中读出来。

如果一个frame存在transient,那么transprocloc[ch]标识transient相对于当前frame第一个sample的位置。为减少传送transient location所需的data rate, transprocloc是4 samples为单位,表示transient的位置为当前frame的第4*transprocloc[ch]个sample.

transproclen[ch]表示的是time scale length,以sample为单位,假设transient存在于第4个block(做MDCT transform时使用的block),那么transproclen是3个block的前沿之前的长度。

PN表示pre-noise的长度,pre-noise位于第3个block的前沿和transient location之间。

 

下图描述了transient pre-noise process的过程:

 

 

图中Synthesis buffer长度为2*TC1 + PN , TC1为256 samples.synthesis buffer的第一个sample的位置为transient location前的(2*TC+2*PN)个sample

使用synthesis buffer中的数据与位于transient location之前transprolen[ch]+PN+TC1的decode出来的原始数据做cross fade. 然后synthesis buffer中的数据overwrite transient location之前的数据,包括transient pre-noise. overwrite在transient location 前TC2(TC2=128 samples) sample结束,然后和原始数据再做cross fade.

伪代码如下:

win_fade_out1 = TC1 sample length cross-fade out window (unity to zero in value)
win_fade_in1 = TC1 sample length cross-fade in window (zero to unity in value)
win_fade_out2 = TC2 sample length cross-fade out window (unity to zero in value)
win_fade_in2 = TC2 sample length cross-fade in window (zero to unity in value)

 

转载于:https://www.cnblogs.com/fellow1988/p/8910769.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值