=========== S c i l a b =========== Scilab-2.4 (July 12, 1998) Copyright (C) 1989-98 INRIA Startup execution: loading initial environment -->horn_mf_B2 = loadwave('horn_mf_B2.wav'); Reading Wave file: Microsoft PCM format, 1 channel, 44100 samp/sec 88200 byte/sec, 2 block align, 16 bits/samp, 256338 data bytes Input file: using sample rate 44100 size shorts, style signed (2's complement), 1 channel -->plot2d(horn_mf_B2(1:5000)); -->xbasc() -->mapsound(horn_mf_B2); -->horn_corr = corr(horn_mf_B2, horn_mf_B2, 2000); -->xbasc() -->plot2d(horn_corr) -->getf('time-freq.sci') -->horn_corr_peaks = find_corr_peaks(horn_corr, 0.05) horn_corr_peaks = ! 1. 359. 716. 1074. 1431. 1789. ! -->horn_periods = horn_corr_peaks(2:6) - horn_corr_peaks(1:5) horn_periods = ! 358. 357. 358. 357. 358. ! -->horn_tf_graph = time_freq_analyze(horn_mf_B2, 358); -->size(horn_tf_graph) ans = ! 358. 359. ! -->xbasc() -->getf('fourier_demo.sci') -->xbasc() -->plot_spectrum(horn_tf_graph(20,1:20), 0, 19*44100/358) -->xbasc() -->plot2d(horn_tf_graph(:,1)) !--error 202 Argument 1 of plot2d : wrong type argument, expecting a real matrix -->plot2d(abs(horn_tf_graph(:,1))) -->xbasc() -->plot2d(abs(horn_tf_graph(1:40,1))) -->plot2d(abs(horn_tf_graph(1:40,2))) -->plot2d(abs(horn_tf_graph(1:40,3))) -->plot2d(abs(horn_tf_graph(1:40,4))) -->plot2d(abs(horn_tf_graph(1:40,5))) -->plot2d(abs(horn_tf_graph(1:40,6))) -->plot2d(abs(horn_tf_graph(1:40,7))) -->plot2d(abs(horn_tf_graph(1:40,8))) -->plot2d(abs(horn_tf_graph(1:40,9))) -->plot2d(abs(horn_tf_graph(1:40,10))) -->plot2d(abs(horn_tf_graph(1:40,11))) -->plot2d(abs(horn_tf_graph(1:40,12))) -->plot2d(abs(horn_tf_graph(1:40,13))) -->plot2d(abs(horn_tf_graph(1:40,14))) -->plot2d(abs(horn_tf_graph(1:40,15))) -->plot2d(abs(horn_tf_graph(1:40,16))) -->plot2d(abs(horn_tf_graph(1:40,17))) -->plot2d(abs(horn_tf_graph(1:40,18))) -->plot2d(abs(horn_tf_graph(1:40,19))) -->plot2d(abs(horn_tf_graph(1:40,20))) -->xbasc() -->plot2d(abs(horn_tf_graph(1:40,:))) -->xbasc() -->plot2d(abs(horn_tf_graph(1,:))) -->xbasc() -->plot2d(abs(horn_tf_graph(2,:))) -->plot2d(abs(horn_tf_graph(3,:))) -->plot2d(abs(horn_tf_graph(4,:))) -->plot2d(abs(horn_tf_graph(5,:))) -->plot2d(abs(horn_tf_graph(6,:))) -->plot2d(abs(horn_tf_graph(7,:))) -->plot2d(abs(horn_tf_graph(8,:))) -->plot2d(abs(horn_tf_graph(9,:))) -->plot2d(abs(horn_tf_graph(10,:))) -->plot2d(abs(horn_tf_graph(11,:))) -->plot2d(abs(horn_tf_graph(12,:))) -->xbasc() -->plot2d(abs(horn_tf_graph(2,1:30))) -->plot2d(abs(horn_tf_graph(3,1:30))) -->plot2d(abs(horn_tf_graph(4,1:30))) -->plot2d(abs(horn_tf_graph(5,1:30))) -->plot2d(abs(horn_tf_graph(6,1:30))) -->plot2d(abs(horn_tf_graph(7,1:30))) -->plot2d(abs(horn_tf_graph(8,1:30))) -->plot2d(abs(horn_tf_graph(9,1:30))) -->plot2d(abs(horn_tf_graph(10,1:30))) -->plot2d(abs(horn_tf_graph(11,1:30))) -->plot2d(abs(horn_tf_graph(12,1:30))) -->xbasc() -->plot2d(abs(horn_tf_graph(2:12,1:30))) -->xbasc() -->plot2d(abs(horn_tf_graph(2:12,1:30)')) xbasc() -->plot2d(abs(horn_tf_graph(1+1,1:30))) -->bp1 = [1 3 4 6 9 12 20] bp1 = ! 1. 3. 4. 6. 9. 12. 20. ! -->bpv1 = abs(breakpoint_values(horn_tf_graph, 1, bp1)) bpv1 = column 1 to 5 ! .0219584 1.9329936 1.1262063 6.5218908 4.4275374 ! column 6 to 7 ! 8.4635776 8.8525378 ! -->bpt1 = breakpoint_times(bp1, 358) bpt1 = column 1 to 5 ! 0. .0162358 .0243537 .0405896 .0649433 ! column 6 to 7 ! .0892971 .1542404 ! -->bpd1 = bpt1(2:7) - bpt1(1:6) bpd1 = column 1 to 5 ! .0162358 .0081179 .0162358 .0243537 .0243537 ! column 6 ! .0649433 ! -->linseg_params(horn_tf_graph, 1, bp1, 358) ans = column 1 to 5 ! 0. .0162358 .2183547 .0081179 .1272185 ! column 6 to 10 ! .0162358 .7367255 .0243537 .5001433 .0243537 ! column 11 to 14 ! .9560623 .0649433 1. 8.8525378 ! -->plot2d(abs(horn_tf_graph(2+1,1:30))) -->bp2 = [1 5 7 8 11 20] bp2 = ! 1. 5. 7. 8. 11. 20. ! -->linseg_params(horn_tf_graph, 2, bp2, 358) ans = column 1 to 5 ! 0. .0324717 .1404555 .0162358 .6616603 ! column 6 to 10 ! .0081179 .5423246 .0243537 .9933131 .0730612 ! column 11 to 12 ! 1. 30.707137 ! -->plot2d(abs(horn_tf_graph(3+1,1:30))) -->bp3 = [1 5 10 20] bp3 = ! 1. 5. 10. 20. ! -->linseg_params(horn_tf_graph, 3, bp3, 358) ans = column 1 to 5 ! 0. .0324717 .0129012 .0405896 .8719548 ! column 6 to 8 ! .0811791 1. 40.555107 ! -->