Audio Volume Question

0 favourites
  • 6 posts
From the Asset Store
126 audio files divided in: music, radio voices, SFX
  • If 0 dB is system volume, and -10 dB is perceptively half that, I'm assuming -20 dB would be half again, thus it would take negative infinity to actually reach "silent".

    I understand perceptible "silence" is actually around 30 dB.

    How should I set my scale for a volume slider if I don't know what the system volume is? Ideally I would want to have volume at 0% = 30dB and 100% = system volume dB. (under 0% I would use mute)

    If I use flat numbers for a decibel scale, it doesn't take into account the target systems volume. For example, if I set 0% volume to -100 dB and 100% to 0dB and have it scale linearly, the audio might already be silent at 90% volume if the system was outputting sound at 40 dB to begin with.

    I found this example in the arcade.

    Moving the music slider around the bottom 40% does pretty much nothing (-60 to -100 dB), the sound is already effectively silent at around -60dB. This is more pronounced when the system volume is lower, and probably varies across systems.

    The opposite problem occurs when the scale is set too small. If my 0% volume is -40dB, this might still be quite loud if the system volume was really high to begin with.

    Is there any way around this or is this a limitation of not knowing the volume of the target system?

    For now I'm setting my lowest volume to -60 dB, but I hope there is a better way.

  • Try Construct 3

    Develop games in your browser. Powerful, performant & highly capable.

    Try Now Construct 3 users don't see these ads
  • 0 dB is the volume of the system!

    Generally dB is a much more useful unit of measure for volume, since if you try to treat it linearly (like a percentage) then you'll find it barely changes at all at the top of the slider, and changes really quickly at the bottom, due to the logarithmic nature of volume perception.

  • I've lost the thread, but the other day R0J0hound showed an algorithm to convert the db scale to a linear scale, using log().

  • Understood! I'd like to stick with dB, for its properties, I just don't know how much to attenuate at the low side. -50 dB, -60 dB, -100dB?

  • andreyin, thanks! I'll have to bookmark it.

    oosyrag, sorry I couldn't answer your question. I don't know much about this ;)

Jump to:
Active Users
There are 1 visitors browsing this topic (0 users and 1 guests)