File: plot_spectrum.m

package info (click to toggle)
alsa-tools 1.0.16-2
  • links: PTS, VCS
  • area: main
  • in suites: lenny
  • size: 11,820 kB
  • ctags: 5,229
  • sloc: ansic: 25,472; cpp: 14,137; sh: 9,710; pascal: 1,140; asm: 1,053; xml: 988; makefile: 698
file content (17 lines) | stat: -rw-r--r-- 323 bytes parent folder | download | duplicates (4)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17

window_size = 2048;
f = 0:48000/window_size:48000 * (1 - 1/window_size);
w = transpose(hamming(1536));
n = size(foo,1);

spectrum = zeros(1,window_size);

for i = [1:n] 
	data = w .* foo(i,:);	
	spectrum = spectrum + abs(fft(data,window_size));
end

plot(f,10*log10(spectrum/max(spectrum)));
grid;
axis([0 24000 -40 0]);