[Csnd] question to decibel
Date | 2013-03-14 11:45 |
From | Stefan Thomas |
Subject | [Csnd] question to decibel |
Dear community, I would like to know the following (very basic) thing if I define 0dbfs = 1in an orchestra header, then the loudest possible dynamic in decibels is 0, am I right? What is the advantage of using decibel-values? |
Date | 2013-03-14 11:52 |
From | peiman khosravi |
Subject | Re: [Csnd] question to decibel |
No, in the digital domain the highest possible level is always 0dbfs (full scale). This statement means that the linear amplitude of 1 corresponds with 0dbfs. Also, the highest amplitude level doesn't necessarily mean the 'loudest'. A sinewave at 1000 Hz will not have the same loudness as 100Hz sinewave, even if they have the same objective amplitude.
P On 14 March 2013 11:45, Stefan Thomas <kontrapunktstefan@gmail.com> wrote: Dear community, |
Date | 2013-03-14 12:01 |
From | peiman khosravi |
Subject | Re: [Csnd] question to decibel |
The advantage is that you can scale all your linear amplitude values between zero and one. So the amplitude value of .5 is the same as -6dbfs, .25 is the same as -12dbfs, and 0 value equals -inf in the decibel scale. P On 14 March 2013 11:52, peiman khosravi <peimankhosravi@gmail.com> wrote: No, in the digital domain the highest possible level is always 0dbfs (full scale). This statement means that the linear amplitude of 1 corresponds with 0dbfs. |
Date | 2013-03-14 12:12 |
From | Bernt Isak Wærstad |
Subject | Re: [Csnd] question to decibel |
Use the amdbfs converter if you want to use dB values in score
On Thu, Mar 14, 2013 at 1:01 PM, peiman khosravi <peimankhosravi@gmail.com> wrote: The advantage is that you can scale all your linear amplitude values between zero and one. So the amplitude value of .5 is the same as -6dbfs, .25 is the same as -12dbfs, and 0 value equals -inf in the decibel scale. Mvh. Bernt Isak Wærstad |
Date | 2013-03-14 12:32 |
From | Richard Dobson |
Subject | Re: [Csnd] question to decibel |
On 14/03/2013 11:45, Stefan Thomas wrote: > Dear community, > I would like to know the following (very basic) thing > if I define > > 0dbfs = 1 > > in an orchestra header, then the loudest possible dynamic in decibels is > 0, am I right? > What is the advantage of using decibel-values? There are two fundamental aspects of the answer: 1. the ear's response to loudness is approximately logarithmic, just as it is for frequency. We use a log scale for the latter (octaves, semitones, rather than raw frequencies), and the decibel is the equivalent for loudness. Instead of comparing a maximum level of 1 against a moderately quiet level of 0.0001, we use a "scale" where a doubling of amplitude is defined as an increase of approx 6dB. So 6dB defines, so to speak, our "loudness octave". 2. We cannot meaningfully define the dB value of silence (amplitude - 0), the value would be "infinity". So we measure loudness relative to an agreed maximum value. For a digital signal that is especially easy - amplitude 1 is the normalised full-scale value. By convention we (i.e. the whole global audio community) define that to be the value of 0dB (recall that raising any number to the power zero gives the value 1), and all lower levels are therefore negative numbers. As the precision of the sample value increases (e.g. from 16bit to 24 bit to float to double), lower and lower negative values become relevant. So while we still cannot give a value to digital zero, we can meaningfully refer to -96dB, -144dB and so on. Beyond this, there are many subtleties and difficulties in relating arithmetical loudness to subjective (psycho-acoustic) loudness, not least the problem Peiman described - we are not equally sensitive to loudness over the whole auditory frequency range. We have things relatively easy in a digital environment, as most of the time we just use dB to indicate the simple numeric level of a signal. Analogue engineers have to worry about relative voltage levels, acoustic pressure and all sorts of other things. So analogue mixing desks define 0dB to be some given voltage level. As engineers like to have a little "headroom " to play with, mixer faders offer a range of positive dB levels above 0dB. A digital desk emulating an analogue one therefore decides that the mixer's 0dB mark will correspond to (say ) -24dBFS (i.e. 24dB below digital peak). Not all desks necessarily agree about this, so typically some degree of calibration or negotiation is involved. So, one way and another, "0dB" is a matter of convention. There is a whole extra history relating to the creation (by me0 of the "0dbFS" opcode; suffice it to say it was done to reconcile Csound to these industry standard representations of level. In its earliest incarnation, amplitude values were understood to correspond directly to the sample values stored in a file. Thus the "default" matches the 16bit sample range. This is no longer either relevant or useful, all sample formats are generated appropriatewly accoding to the 0dBFS value. You can choose any positive value for 0dbfs: 1 is the "standard" value, but you can choose any other positive value you like. Needless to say, many Csounders have found tweaking the 0dbfs value a quick way of hacking/finessing the overall amplitude range of a performance. Richard Dobson |