Postby ikonomov » 25 Sep 2013 05:09
I have been looking for an option to limit the volume at 100% from day 1 since I started to use VLC. I love the player, except for this one feature. I understand that there are uses for digital attenuation beyond 0 dB. However, it makes absolutely no sense whatsoever that the player has a default volume slider going beyond 100%. The ability to have a gain beyond 0 dB should be ONLY possible through the use of the equalizer, for the sake of ease of use and simplicity. The equalizer is EASILY accessible from the interface, it is one click away, and offers the tool to modify the replay gain for those that need it. When the need comes for it, I'm sure the people that want to boost their volume a little bit more will find it. That's why that Reply gain slider is there for, inside the equalizer, it is not for decoration. Currently enabling the equalizer causes about -11db to -11.7db at all sliders at 0 dB.
Most soundcards today have DACs with very high SNR at their output, with plenty of room to allow lower signals to be amplified by the amp/speakers without any perceivable noise. The noise is there, but only on theory. In other words digital attenuation from within the OS/sound interface controller/media player is a perfectly acceptable way to control the output volume. In an ideal world we would have properly mixed audio sources, with a full dynamic range, the volume set at 0 dB inside VLC using ASIO output, control the volume with an analogue attenuator after the DAC and before the preamps, but we don't live in a perfect world. What wins every time is having flexibility to suit the needs for all users.
I understand that true 0 dB is not possible, since Windows DirectX doesn't output "bit perfect" stream to the sound card. And having ASIO output is neither needed, nor necessary for any and all practical purposes, as far as music/video player is concerned. Some approximation is necessary, and every player does that. But most do it better, when it comes to numbers, and some come very close to 0 dB with their volume parameters (volume slider, equalizers, replay gain sliders, etc). Volume at 256/100% is 0 dB as far as DirectX is concerned.
I understand that enabling the equalizer causes another process and algorithms, in theory degrading the sound quality. How about taking the replay gain slider out of the "equalizer" process. This way a digital attenuation beyond 0 dB will still be possible without engaging the equalizer. The slider will act as a second "volume control", but logically will be placed in the right place, with a clear dB indicator below it.
So please:
- Limit the volume slider at ~0dB (100%)
- Make all settings inside the options that operate all the time at 0 dB as their defaults
- Increase equalizer replay gain, about +11 dB should be safe, and will prevent clipping at the 0 dB possitions
- Make the Replay Gain slider available for use even when the equalizer is disabled
Right now the workaround is enabling the equalizer and dropping the replay gain slider at about -6.8 dB. And no, this is NOT ideal workaround for people that are concerned about this. It does the job, but it is not elegant, it makes an awesome program look bad. I wrote this not because I can't change the output method, or I can't do what I suggested above, but because many of us here care deeply for this program, love it very much and use it every day.