annotate aux/loudnesstest.m @ 5:85bff3d1b6fe
Equalise loudness in prepare2listen.m
author |
Brecht De Man <b.deman@qmul.ac.uk> |
date |
Sun, 23 Nov 2014 23:24:35 +0000 |
parents |
|
children |
ed0a8621b96a |
rev |
line source |
b@5
|
1 % test loudness mod
|
b@5
|
2
|
b@5
|
3 % target loudness and test file
|
b@5
|
4 target_loudness = -18; % dBLU
|
b@5
|
5 filename = '';
|
b@5
|
6
|
b@5
|
7 % import sound file
|
b@5
|
8 [audio, fs] = audioread(filename);
|
b@5
|
9
|
b@5
|
10 % measure and display loudness
|
b@5
|
11 initial_loudness = getloudness(audio, fs, 'ITU', 0);
|
b@5
|
12 disp(['Initial loudness: ' num2str(initial_loudness)]);
|
b@5
|
13
|
b@5
|
14 % apply gain
|
b@5
|
15 difference_loudness = target_loudness - initial_loudness;
|
b@5
|
16 disp(['Difference in loudness: ' num2str(difference_loudness)]);
|
b@5
|
17 audio = 10^(difference_loudness/10) .* audio;
|
b@5
|
18 disp(['Gain: ' num2str(10^(difference_loudness/10))]);
|
b@5
|
19
|
b@5
|
20 % measure and display loudness (should be equal to target loudness)
|
b@5
|
21 resulting_loudness = getloudness(audio, fs, 'ITU', 0);
|
b@5
|
22 disp(['Resulting loudness: ' num2str(resulting_loudness)]); |