Remix.run Logo
skrebbel 2 days ago

To be frank, your comment just reads to me as a "stockholm syndrome" type reaction to a needlessly complex unit that you're intimately familiar with.

You see the same in HN threads where people complain that eg Git or Rust are needlessly complex, there's a swath of people who are so emotionally invested in how well they understand the ins and outs of Git resp Rust that any suggestion that maybe things could be better makes them angry.

It's possible for decibels to be usable and generally fine and also for them to needlessly complex, ie for there to exist better alternatives in each place they're used.

As an example, it makes no sense to me that eg in audio software, volume sliders start at 0 dB and then go down to negative $MUCHO, until complete silence at -Infinity. And then this same unit is also used to measure how loud my coffee machine is, somehow, but then it's suddenly positive and not a relative number at all? That's just weird shit, it's like expressing the luminosity of a pixel (in HSL terms) in lumen instead of a unitless percentage.

In the audio software context, it would be much more intuitive for "no sound" to be 0, and "full volume" to be 100, a bit like percentages. The "but volume needs to be logarithmic because that's how we hear it!" argument doesn't disallow that at all. Just because a slider goes from 0 to 100 doesn't mean that a 10 must mean 10% of the power output. Decibels are ridiculous.

klodolph 2 days ago | parent | next [-]

If you want 0 = no sound, then you can’t use a logarithmic scale. You end up with sound being measured as Pascals in the micro to unit range.

“0 dB SPL” is 20 micro pascals which is roughly the threshold of hearing. A loud rock concert at 120 dB SPL is 20 pascals (no micro). The dB figures are a lot more convenient to work with.

It’s intuitive for 0 to be silent and 100 to be full, but if you work with audio you learn that dB are more convenient. Long-term convenience for experts tends to win out over short-term intuition for non-experts. This is why musicians continue to use sheet music and all of its seemingly ridiculous conventions—and likewise, decibels only seem ridiculous to people who don’t work in audio.

I don’t know what more usable alternative there would be, to decibels.

_kb 2 days ago | parent | prev | next [-]

> volume sliders start at 0 dB and then go down to negative $MUCHO, until complete silence at -Infinity. And then this same unit is also used to measure how loud my coffee machine is.

They're not the same unit, at all.

The audio software is a skeuomorphism from an analogue mixing console that is applying a change to a signal. 0 is unity gain and deviation from this describes an amplitude variation. This is important, as it means you are either discarding information by lowering the level and reducing dynamic range, or interpolating new information (/ decreasing SNR) by applying gain. This is less important today with floating point, but has strong historical reasons for existence across both analogue and digital domains.

If you look at an audio power amp, you will likely have some form of positive number as this is applying gain. Depending on the context this may have some specific meaning or it may be a screen print of a Spinal Tap logo and the numbers 1..11. These are all just UI decisions and part of doing that well is presenting coherent information for the target user group.

When you're talking about an acoustic noise source this is dB SPL which is a quantifier against a physical reference. That reference level quantifier is omitted a lot, which leads us to a lot of the angst in this post and the comments here. These are precise measurements, with very specific meaning. Their expression is often sloppy, but the units aren't to blame.

(excuse me while I got "full HN" here - I appreciate the irony in this response noting your first few sentences)

The reason people respond strongly to comments like this (or those about Git, or Rust) is because details matter. When you immerse in a domain, you learn the reason for those details. That does not mean things can't be improved, but this also does not imply those details can be removed or are wrong. A lot of the world, particularly when working outside of the bounds of a computer, depends on necessary complexity.

lxgr 2 days ago | parent [-]

> They're not the same unit, at all.

Exactly, so why label two different things using the exact same letters in a potentially ambiguous context.

jwagenet 2 days ago | parent | next [-]

How about using kg for both mass and weight? At least as an American we learn lb is actually lb_f and lb_m or slug is used for mass. The weirdness is consistent with the rest of the system. In metric Newton exists as a separate and sane measure of force…

_kb 2 days ago | parent | prev [-]

Because it’s not ambiguous.

If I pay for something in Australia and the bill comes to $50 this has meaning within that context.

I receive a bill in Zimbabwe for $50 this also has meaning within that context.

These values are not equivalent.

Ditto if I were to say it’s 30 degrees out. You may interpret that as either a good day for the beach, nice weather for ice skating, or we need to bear north-northeast depending on what context we share.

Language is messy.

skrebbel a day ago | parent [-]

This is unnecessary complexity. My rant is against that exactly. You're defending confusing shit that doesn't get any better from being confusing. If all countries had a different currency, things would be clearer too. Ask any Australian shopping for digital products on international sites. Half of the sites write $ but forget to specify whether it's "we geolocated you and guessed AUD" or "haha it's USD but we just wrote $ because we forgot that there's a world outside the US". If Switzerland would rename the CHF to Euro but not change its value to match the existing Euro, everybody would agree that that's a terrible idea. There wouldn't be edgy HN commenters explaining that well, actually, there's precedent so it's fine! No, it'd just be bad. The dB ambiguity is a mess for the same reason. The situation has no benefit and in the world of units, where most other things (eg the most of the SI) are actually relatively usable and non-ambiguous, it's a fuckup. And the power vs voltage aspect of it makes it even worse than the $ situation.

Your argument that it isn't so bad in practice doesn't change the fact that it has no benefits whatsoever.

It's just ambiguity for the sake of it, because way back when people started measuring sound stuff, nobody bothered to go "but wait is this actually handy?" and then we got stuck with whatever the first guy came up with. It's just like the whole kilobyte/kibibyte crap and the whole Wh vs mAh vs kilojoule soup. It's all downside.

amluto 2 days ago | parent | prev | next [-]

> As an example, it makes no sense to me that eg in audio software, volume sliders start at 0 dB and then go down to negative $MUCHO, until complete silence at -Infinity.

This one doesn’t bother me. Those sliders, and especially the real analog sliders they’re modeled after, don’t have an absolute scale — they are attenuators that reduce voltage. So 0dB is the same as no slider at all, -20dB reduces voltage by a factor of 10, etc.

davrosthedalek 2 days ago | parent | prev | next [-]

Ok, I bite. Please come up with a mapping of 0 to 100 to -inf dB to 0 dB attenuation.

And then put two in series. Is there a simple formula to calculate the total attenuation?

This works flawlessly with dB. Just add. And it doesn't matter how you break it: -20dB and -20 dB in series is the same as -40dB and 0dB.

nyeah 2 days ago | parent | prev | next [-]

It makes perfect sense that the sliders start at 0dB and go down to -inf. Maybe you don't understand it, but it definitely makes sense. Everyone who uses dB has also tried a % scale with 100% as 0dB, and then later made a conscious choice to figure out how dB work.

Maybe they're all in a conspiracy to make things needlessly complex. But that's not the only possibility.

viraptor 2 days ago | parent [-]

> and then later made a conscious choice to figure out how dB work.

You're just projecting your ideas here. I've not made that choice, it's just the only option in a lot of software - I'd like my % slider back.

seba_dos1 2 days ago | parent | next [-]

% slider sounds like a good idea until you actually have to use it.

formerly_proven 2 days ago | parent | prev | next [-]

Windows has 0-100 volume sliders if you like that better.

They are still some kind of faux-logarithmic*

*behavior depends on drivers/hardware.**

**for some hardware 50 in Windows will be neutral and 100 will be something like a +30 dB digital gain, that's probably in part because Windows is mapping the 0-100 range in some way to the USB audio control range, which is at most +-127 dB or something like that.***

***with some audio interfaces (the non-USB-Audio-class kind) the 0-100 actually becomes a linear factor of 0-1, making the windows controls very useless indeed, as 70% of the slider range does approximately nothing.

nyeah 2 days ago | parent | prev [-]

Right. Decibels are my idea.

viraptor 2 days ago | parent [-]

Projecting in that context means you claimed what other people think/do, because it's what you think/do. It's about describing the conscious choices of others (where my experience disagrees for example) not about decibels specifically.

nyeah a day ago | parent [-]

Agreed, you are using the word "projecting" fine. But you're ignoring the actual behavior of people using dB in the real world.

regularjack 2 days ago | parent | prev | next [-]

There is no such thing as full volume, and there is not such thing as zero volume.

nyeah 2 days ago | parent | next [-]

To be fair, since we can go to +3dB out of 0dB, we could also go to 200% on a 100% scale. In the era of software it would not be completely insane to allow users to choose how their faders are marked. (It would be insane to use 3/4 of a slider's travel for the range 100% to 400%. So the locations of the markings on usable sliders would remain mysterious to %-only folks.)

Ultimately people who use this a lot would choose to become familiar with dB, as they always have. But there's no rush.

jameshart a day ago | parent | prev | next [-]

‘There is no such thing as zero volume’ - can you expand on that?

Surely constant unchanging air pressure has zero volume?

Volume is the range of variation in air pressure, right? That can surely go down to zero.

It can also only meaningfully go up to about double the absolute mean air pressure, before what you are talking about becomes shockwaves of overpressure.

tadfisher a day ago | parent [-]

Air pressure is a statistical measure; given a room with zero net variation in pressure, I can always find a volume in that room with positive pressure, down to measuring Brownian motion of atoms. Now try to design a measurement apparatus that can only sample a small volume to measure variations in pressure, and you can understand why (sound) volume can never go to zero.

jameshart a day ago | parent [-]

Over meaningful statistical sampling areas, like an eardrum, say, pressure can be effectively constant, surely?

Volume can be a statistical property, like temperature.

crazygringo a day ago | parent | prev | next [-]

I don't know what you're talking about. Both of those exist.

Zero volume is when a speaker's diaphragm is still. On an 8-bit PCM audio file, it corresponds to a value of zero.

In the context of a signal, full volume corresponds to the 127 value in an 8-but PCM audio file (or arguably -128). In the context of a speaker, those values should push the diaphragm no further than how far it can travel linearly without distortion. Obviously the user may want to turn down the volume from this full volume.

I hope you understand that even when using an audio editor that displays values in dB, the underlying values are integers (or floats) that absolutely have zero and "full volume" meanings, and conventionally map respectively to -∞ dB and 0 dB.

DonHopkins 2 days ago | parent | prev [-]

There such a thing as going to 11.

https://www.youtube.com/watch?v=uMSV4OteqBE

CamperBob2 2 days ago | parent | prev [-]

dB is always relative, even when it appears to be an absolute unit. The 0 dB marking at the top of the volume slider on pro audio gear (more likely +3 or +6 or something similar to leave some headroom) means "0 dB relative to the maximum rated power level." In pro gear this will be an absolute industry standard of some sort, likely one where the load impedance is also defined. 1 milliwatt into 600 ohms or something like that. The distinction between voltage and power is always going to confuse people, but that's not the dB's fault.

A major reason decibels are used is to make it easy to assess the overall gain or loss of an entire chain of processing stages: you simply add the numbers. The equipment's output can only go down from 0 dB, so the rest of the scale is negative.

As for sound pressure levels in dB, those are given relative to a 0-dB point that corresponded originally to the faintest sound people were generally considered capable of perceiving. These days "0 dB" refers to a specific amount of acoustic power, which I don't know off the top of my head, and that might or might not be near the threshold of perception for a given listener. But the reasoning still applies: amplification or attenuation of power levels is a simple matter of addition when expressed in dB. Arbitrarily defining a system's reference level to be 100 dB instead of 0 dB would be of no use to anyone.

drob518 2 days ago | parent [-]

Exactly. dB is just a way to apply a logarithmic scale on a quantity that would have orders of magnitude range if working with a linear scale. It allows an engineer to quickly add up all the amplification and attenuation through a series of amps and filters without having to do a lot of uglier math. It’s not really a physical unit. It’s a marker that says that we’re working in the domain of logarithmic quantities of some other units.