The attenuation on the reverb tail is by design to avoid clipping.

It is better to change the reverb preset values (sReverbPresets[]) in
EffectReverb.cpp.

Thanks.

Eric.


On Aug 1, 8:05 pm, brian <brianbang.c...@gmail.com> wrote:
> Hi All:
>
> I found the signal level will be dropped about -14dB after applied the
> PresetReverb with "small room" while playing mp3 file.
>
> So, I enabled the LVM_PCM @ EffercReverb.h to record input/output pcm
> data into SD card and compared the singal level of input and output.
>
> After studying the source code in ReverbBlock( ) @ LVREV_Process.c, it
> will reserve 12dB
> headroom before processing thereverbeffect
>
>     Mult3s_32x16(pIn,
>                  (LVM_INT16)LVREV_HEADROOM,
>                  pTemp,
>                  (LVM_INT16)NumSamples);
>
> But I can’t find the code which compensate the 12dB back.
> I think it’s the reason why the signal level is dropped.
> Now I compensate the 12dB back in the last of ReverBlock()
>
>     /* Apply Gain*/
>     Shift_Sat_v32xv32 (LVREV_OUTPUTGAIN_SHIFT,
>                        pOutput,
>                        pOutput,
>                        size);
>
> Just change the definition of LVREV_OUTPUTGAIN_SHIFT from 5 to 7, and
> it sounds great.
> Is my patch right ?

-- 
unsubscribe: android-porting+unsubscr...@googlegroups.com
website: http://groups.google.com/group/android-porting

Reply via email to