On Wed, 18 Apr 2018 17:03:09 +0200, Ricard Wanderlof wrote: > > > The gain algorithm used in softvol can handle gain factors of up to > 32767 which is slightly more than 90 dB, so allow a max_dB of 90 dB. > This doesn't affect existing asound.conf files, but does allow a > max_dB of up to 90 dB when needed. > > Tested using Audacity that there is no undue distorsion or other > artefacts when 90 dB of gain is applied to a suitable signal (i.e. > a signal quiet enough not be clipped whan applying 90 dB of gain). > > Signed-off-by: Ricard Wanderlof <ricardw@xxxxxxxx> > --- > > I discussed this with Takashi and Jaroslav back in January, but the > discussion petered out and didn't reach a conclusion on which maximum gain > would be acceptable, so I thought I'd send an actual patch and we can take > it from here. Ah, this ended up to null just because I went to my vacation... > We have a couple of usecases where we are using digital microphones, which > have 24 bit resolution, and with an acoustic overload point of about 120 > dB SPL, the output level can be quite low when the sound source is a fair > distance form the microphone. The current softvol limit of 50 dB is > therefore a bit restrictive. > > When studying the code, it becomes apparent that the limit of the actual > gain function is a gain factor of 32767, which corresponds to 90.3 dB. So > it makes sense to set the MAX_DB_UPPER_LIMIT (whose only function is to > cause _snd_pcm_softvol_open() to bail out and emit an error message if the > gain is set higher than this limit) to 90 dB as it corresponds to the > technical limitations of the gain algorithm. Granted, 90 dB is probably > more than most people need, but there's no real harm in allowing a large > gain; the user gain limit in a given application is still set by the > max_dB parameter in asound.conf . The worst that can happen is that the > signal becomes clipped as would happen with any signal if the applied gain > drives it over 0 dB. If in fact a signal is close to 0 dB to start with, > then the resulting clipping when increased by 90 dB is not much worse than > when increased by 50 dB. Honestly speaking, I still don't like to change something just because the number can reach. But this is a minor issue and if any damage happens, it can be said to be self-responsibility, so I applied as is. thanks, Takashi _______________________________________________ Alsa-devel mailing list Alsa-devel@xxxxxxxxxxxxxxxx http://mailman.alsa-project.org/mailman/listinfo/alsa-devel