Humans don't perceive sound linearly. We perceive sound on a logarithmic scale like so:
Linear Scale 0 1 2 3 4 5 6 7 8 9 10 (+1)
Logarithmic Scale 1 2 4 8 16 32 64 128 256 512 1024 (x2)
This creates a problem when trying to use an <input type="range" />
as an audio fader because the quiet sound takes up most of the scale and then gets loud super fast at the end.
Anyone know how to implement a logarithmic scale on a range input? I made this audio mixer but I was never able to figure out how to implement a logarithmic range slider. https://codesandbox.io/s/audio-mixer-linear-35cl7k?file=/src/components/ChannelStrip.js