I don't understand how you can create a slider with the db range -infinity to 0, how can the user lower it to half as loud (-10db) if the slider also has to linearly go to -infinity as than -10 would be almost no change to the slider?
So you need to remap the range in some way to get a usable slider.
Using 10 ^ (decibel / 33)
and 33 * log10(interval)
gives me the range of 0-1 and feels like I can set volume in a intuitive manner.
But maybe I am missing something.