Re: Maximum 50 dB gain in ALSA softvol plugin

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Fri, 12 Jan 2018, Takashi Iwai wrote:

> > The ALSA softvol plugin has a maximum gain of 50 dB (MAX_DB_UPPER_LIMIT is 
> > fixed to 50 in pcm/pcm_softvol.c). Is there some technical reason for this 
> > limit? These days when >16 bit audio is becoming common, it's not 
> > unreasonable to have large gain figures, and that is in fact a usecase I 
> > have right now.
> > 
> > I'm looking through the CONVERT_AREA and MULTI_DIV_foo macros to see if 
> > there's something there that degenerates when the gain factor becomes too 
> > large, but I'd thought I'd ask too rather than just do reverse 
> > engineering.
> 
> There is no more reason than "some reasonable limit".

Ok, my suggestion would be set MAX_DB_UPPER_LIMIT to 90 dB. 90 dB comes 
out as 31622, which still is manageable when shifted up by VOL_SCALE_SHIFT 
(= 16), fitting in a 32-bit int. Thus it works in MULTI_DIV_short() too, 
where it is multiplied with the 16-bit sample value yielding an int.

I'll try it out and prepare a patch.

/Ricard
-- 
Ricard Wolf Wanderlöf                           ricardw(at)axis.com
Axis Communications AB, Lund, Sweden            www.axis.com
Phone +46 46 272 2016                           Fax +46 46 13 61 30
_______________________________________________
Alsa-devel mailing list
Alsa-devel@xxxxxxxxxxxxxxxx
http://mailman.alsa-project.org/mailman/listinfo/alsa-devel




[Index of Archives]     [ALSA User]     [Linux Audio Users]     [Kernel Archive]     [Asterisk PBX]     [Photo Sharing]     [Linux Sound]     [Video 4 Linux]     [Gimp]     [Yosemite News]

  Powered by Linux