Method and apparatus for automatically normalizing a perceived volume level in a digitally encoded file
View Patent ↗Automatically normalizing a perceived loudness for a digitally encoded audio track formed of a number of channels during playback on a multimedia asset player is described. A number of auditory selectivity frequency bands are selected and for each channel in the track, a power value for each of the number of selectivity frequency bands is computed. Each of the power values is weighted by a sensitivity weighting factor and a sum value of all the weighted power values is then calculated. For the track, a perceived acoustic power value is calculated based upon the sum value for each of the channels and a normalization gain factor based upon the perceived acoustic power is calculated and associated with the track. During playback, the normalization gain factor is applied to the track.
1. A method for automatically normalizing a perceived loudness for a digitally encoded audio track formed of a number of channels during playback on a multimedia asset player, comprising:
selecting a number of auditory selectivity frequency bands;
for each channel in the track,
computing a power value for each of the number of selectivity frequency bands;
weighting each of the power values by a sensitivity weighting factor;
calculating a sum value of all the weighted power values;
for the track,
calculating a perceived acoustic power value based upon the sum value for each of the channels;
calculating a normalization gain factor based upon the perceived acoustic power;
associating the normalization gain factor with the track; and during playback,
applying the normalization gain factor to the track.
2. A method as recited in claim 1 , wherein the auditory selectivity frequency bands are based upon a spectral selectivity of the human auditory system.
3. A method as recited in claim 1 , wherein the computing a power value for each of the number of selectivity frequency bands comprises:
generating Fast Fourier Transform (FFT) lines for each of the frequency bands;
calculating an instantaneous energy for each of the FFT lines; and
summing the instantaneous energies of the FFT lines within a particular frequency band.
4. A method as recited in claim 1 , wherein the sensitivity weighting factor is based upon an Absolute Threshold of Hearing (ATH) curve.
5. A method as recited in claim 1 wherein the sum value is an average sum value.
6. A method as recited in claim 5 , wherein the calculating a perceived acoustic power value, comprises:
determining a maximum average sum value for all channels; and
dividing the maximum average sum for all channels by a power scale factor used to map the perceived acoustic power value to a predefined range.
7. A method as recited in claim 6 wherein the predefined range is approximately 0 to approximately 10,000.
8. A method as recited in claim 1 , wherein the calculating a normalization gain factor Gn comprises:
calculating an inverse value of the perceived acoustic power value; and
calculating a square root value of the inverse value.
9. A method as recited in claim 8 , further comprising:
calculating a scaled normalization gain factor by,
multiplying the normalization gain factor by a normalization scaling factor (NSF) wherein the normalization scale factor takes on a value such that the scaled normalization gain factor is substantially equal to 1.0 representative of a no change condition for an average track.
10. A method as recited in claim 9 , wherein a value of the NSF is in the range of approximately 0 to approximately 10000.
11. A method as recited in claim 9 , wherein the associating comprises:
incorporating the scaled normalization gain factor into a tag;
associating the tag with the track.
12. A method as recited in claim 9 , wherein applying comprises:
multiplying each sample of the track by the associated scaled normalization gain factor.
13. A method as recited in claim 9 , wherein applying comprises:
multiplying selected samples of the track by the associated scaled normalization gain factor.
14. A method as recited in claim 1 , wherein the digitally encoded audio track is an MP3 type audio track.
15. In a digital audio system, a method of automatically normalizing a loudness level of a digitally encoded audio track having one or more channels, comprising:
generating a characteristic loudness factor representing a power value associated with an audio track, weighted on a selectivity model of a human ear, wherein the characteristic loudness factor for a particular track is obtained by
calculating a power value for a band of frequencies,
generating a sensitivity-weighted power value based upon a frequency based power sensitivity factors, and
summing the sensitivity weighted power values over a duration of the track to provide a characteristic loudness factor;
calculating a normalization gain factor G N based on the characteristic loudness factor of each channel;
normalizing the loudness level of the audio track based upon the normalization gain factor G N ; and
applying the normalization gain factor G N to every sample on the audio track.
16. A method as recited in claim 15 , wherein the band of frequencies comprises human auditory system selectivity frequency bands.
17. A method of normalizing volume as recited in claim 15 , where the sum of the sensitivity-weighted power values is calculated over the entire digitally encoded audio track.
18. A method of normalizing volume as recited in claim 15 , where the sum of the sensitivity-weighted power values is calculated by periodically sampling the digitally encoded audio track.
19. A method as recited in claim 15 , wherein the associated selectivity weighing factors are based upon a Robinson-Dadson curve.
20. In a digital audio system, a method of automatically normalizing a loudness level of a digitally encoded audio track having one or more channels, comprising:
generating a characteristic loudness factor representing a power value associated with an audio track, weighted on a selectivity model of a human ear;
calculating a normalization gain factor G N based on the characteristic loudness factor of each channel;
normalizing the loudness level of the audio track based upon the normalization gain factor G N ; and
applying the normalization gain factor G N to every sample on the audio track, wherein the digitally encoded audio track comprises a left channel having an Average Weighted Power for Left Channel (AWP L ) and a right channel having an Average Weighted Power for Right Channel (AWP R ), and wherein a perceptual power P power for each track is determined by,
calculating the maximum value (MAX) of the Left Average Weighted Power AWP L and the Right Average Weighted Power AWP R to form a resulting power;
dividing the resulting power by a Normalization Power Scale Factor PSF N , wherein the Normalization Power Scale Factor PSF N is selected to be a scaling factor used to map an overall perceptual power to a predefined range of frequencies.
21. A method of normalizing volume as recited in claim 20 , wherein the range of scale factors is approximately 0 to approximately 10,000.
22. A method of normalizing volume as recited in claim 20 , wherein a perceptual power P power for each track is determined by:
calculating a root mean square value (RMS) of the Left Average Weighted Power AWP L and the Right Average Weighted Power AWP R to form a resulting power;
dividing the resulting power by the Normalization Power Scale Factor PSF N , which is selected to be a scaling factor used to map the overall perceptual power to a predefined range.
23. In a digital audio system, a method of automatically normalizing a loudness level of a digitally encoded audio track having one or more channels, comprising:
generating a characteristic loudness factor representing a power value associated with an audio track, weighted on a selectivity model of a human ear;
calculating a normalization gain factor G N based on the characteristic loudness factor of each channel;
normalizing the loudness level of the audio track based upon the normalization gain factor G N ; and
applying the normalization gain factor G N to every sample on the audio track, wherein the digitally encoded audio track comprises a left channel having an Average Weighted Power for Left Channel (AWP L ) and a right channel having an Average Weighted Power for Right Channel (AWP R ), and wherein a perceptual power P power for each track is determined by:
calculating the average value (AVG) of the Left Average Weighted Power AWP L and the Right Average Weighted Power AWP R ;
dividing the result by a Normalization Power Scale Factor PSF N , which is selected to be a scaling factor used to map the overall perceptual power to a predefined range.
24. A method as recited in claim 23 , wherein the normalization gain G N is calculated based upon the inverse of the square root of the waveform's perceptual power P power .
25. A method of normalizing volume as recited in claim 23 , further comprising:
calculating the inverse of the perceptual power P power ;
calculating a scaled normalization gain factor G N by multiplying the inverse of the perceptual power P power by a scaling factor NSF such that the normalization gain of an average track is 1.
26. A method of normalizing volume as recited in claim 25 , further comprising:
associating the scaled normalization gain factor G N with the selected digitally encoded audio track.
27. A method as recited in claim 26 , wherein the associating comprises:
forming an ID tag corresponding to the track; and
incorporating the scale factor into the ID tag.
28. An apparatus for automatically normalizing a perceived loudness for a digitally encoded audio track formed of a number of channels during playback on a multimedia asset player, comprising:
means for selecting a number of auditory selectivity frequency bands;
means for computing a power value for each of the number of selectivity frequency bands
means for weighting each of the power values by a sensitivity weighting factor for each channel in the track;
means for calculating a sum value of all the weighted power values for each channel in the track;
means for calculating a perceived acoustic power value based upon the sum value for each of the channels for the track;
means for calculating a normalization gain factor based upon the perceived acoustic power for the track;
means for associating the normalization gain factor with the track; and
means for applying the normalization gain factor to the track during playback.