Audio toolbox: using acousticLoudness() in reverse for "normalizing" audio signal
3 vues (au cours des 30 derniers jours)
Afficher commentaires plus anciens
Frederik Desaulniers
le 19 Avr 2021
Commenté : Jimmy Lapierre
le 3 Mai 2021
Edited for clarity.
I have a set of speech signals that were peak normalized. I want to adjust the gain of each signal so they have an equal loudness (same idea as replay gain).
I am calling the function :
acousticLoudness()
The signal I'm passing to the function is the original recording.
First I wanted to use the ISO 532-2 method, since the sound presentation will be done with headphones, but my signal is time-varying (speech signal), so I must use the ISO 532-1 method instead. How would I compensate for the non-linearity of the headphones and the fact that the sound will not be presented in a free field? I thought of just building a filter to pre-process the signal before feeding it to acousticLoudness() but I'm not sure where to start.
One I have a "replay gain" value for each signal based on an arbitrary reference, I will calibrate the amplifier by measuring the dBSPL output of a 1kHz signal.
Thank you!
0 commentaires
Réponse acceptée
Jimmy Lapierre
le 28 Avr 2021
If you want average perceived loudness, consider omitting the time-varying option even though the signal isn't stationary.
Otherwise, one way to apply a frequency response (besides the obvious filtering of the signal) would be to compute octave SPL first (see the example in the acousticLoudness doc) and compensate for the headphone response in each band using the table you provided before giving those SPL values to acousticLoudness.
6 commentaires
Jimmy Lapierre
le 3 Mai 2021
Sounds great, I'm interested in getting a follow-up on your application!
Plus de réponses (0)
Voir également
Catégories
En savoir plus sur Audio Processing Algorithm Design dans Help Center et File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!
