Phillip Stearns wrote:
Ok so I have been curious about this ever since I've been messing around with PD:
What does the dB represent?
What is its reference?
Why not use the dBfs scale (0dB is the clipping ceiling and everything below is measured negative) if we're running digital?
the most important reason to not use technical dB but dB with an offset is (i think) because of MIDI: MIDI gives us values between 0..127; it is very hard to express negatice numbers with MIDI-values. pd is a child of max (on next-computers) which was the first patcher-language and which was a lot about MIDI (please forgive me...); to stay compatible with old patches (*.pat loader) and (more important) an established paradigm, pd still uses "midi-dB"
another important thing is, that "0" midi-dB means "-infinity" technical dB (this is: absolute silence); "-infinity" is very impractical within a technical system. "100" midi-dB equals "0" technical dB (unity gain), and is a very easy to remember value (something like "100%") (and to talk about real MIDI-values again: you still have a headroom of +27dB for amplification of low signals)
in musical applications -100dB can normally considered to be silent, thus the narrowing of the scale does not really matter.
the conversion is:
{ 100 - dB(midi) : dB(midi)>0
dB(techn) = { { -inf : dB(midi)<=0
{ 100 + dB(techn) : -100<dB(techn)
dB(midi) = { { 0 : -100>=dB(techn)
mfg.a.sdr IOhannes