@@ -29,65 +29,37 @@ function sof_example_two_beams()
2929for fs = [16e3 48e3 ]
3030 %% Close all plots to avoid issues with large number of windows
3131 close all ;
32+ a1 = az ; % Azimuth +az deg
33+ a2 = - az ; % Azimuth -az deg
3234
3335 %% 2 mic 50 mm array
34- fn.tplg1_fn = sprintf(' coef_line2_50mm_pm%s deg_%d khz.m4' , azstr , fs / 1e3 );
35- fn.sofctl3_fn = sprintf(' coef_line2_50mm_pm%s deg_%d khz.txt' , azstr , fs / 1e3 );
36- fn.tplg2_fn = sprintf(' line2_50mm_pm%s deg_%d khz.conf' , azstr , fs / 1e3 );
37- fn.sofctl4_fn = sprintf(' line2_50mm_pm%s deg_%d khz.txt' , azstr , fs / 1e3 );
3836 d = 50e-3 ; % 50 mm spacing
39- a1 = az ; % Azimuth +az deg
40- a2 = - az ; % Azimuth -az deg
37+ fn = export_names_helper(' line2' , azstr , d , fs );
4138 sof_bf_line2_two_beams(fs , d , a1 , a2 , fn , prm );
4239
4340 %% 2 mic 68 mm array
44- fn.tplg1_fn = sprintf(' coef_line2_68mm_pm%s deg_%d khz.m4' , azstr , fs / 1e3 );
45- fn.sofctl3_fn = sprintf(' coef_line2_68mm_pm%s deg_%d khz.txt' , azstr , fs / 1e3 );
46- fn.tplg2_fn = sprintf(' line2_68mm_pm%s deg_%d khz.conf' , azstr , fs / 1e3 );
47- fn.sofctl4_fn = sprintf(' line2_68mm_pm%s deg_%d khz.txt' , azstr , fs / 1e3 );
4841 d = 68e-3 ; % 68 mm spacing
49- a1 = az ; % Azimuth +az deg
50- a2 = - az ; % Azimuth -az deg
42+ fn = export_names_helper(' line2' , azstr , d , fs );
5143 sof_bf_line2_two_beams(fs , d , a1 , a2 , fn , prm );
5244
5345 %% 2 mic 73.5 mm array
54- fn.tplg1_fn = sprintf(' coef_line2_74mm_pm%s deg_%d khz.m4' , azstr , fs / 1e3 );
55- fn.sofctl3_fn = sprintf(' coef_line2_74mm_pm%s deg_%d khz.txt' , azstr , fs / 1e3 );
56- fn.tplg2_fn = sprintf(' line2_74mm_pm%s deg_%d khz.conf' , azstr , fs / 1e3 );
57- fn.sofctl4_fn = sprintf(' line2_74mm_pm%s deg_%d khz.txt' , azstr , fs / 1e3 );
5846 d = 73.5e-3 ; % 73.5 mm spacing
59- a1 = az ; % Azimuth +az deg
60- a2 = - az ; % Azimuth -az deg
47+ fn = export_names_helper(' line2' , azstr , d , fs );
6148 sof_bf_line2_two_beams(fs , d , a1 , a2 , fn , prm );
6249
6350 %% 4 mic 28 mm spaced array
64- fn.tplg1_fn = sprintf(' coef_line4_28mm_pm%s deg_%d khz.m4' , azstr , fs / 1e3 );
65- fn.sofctl3_fn = sprintf(' coef_line4_28mm_pm%s deg_%d khz.txt' , azstr , fs / 1e3 );
66- fn.tplg2_fn = sprintf(' line4_28mm_pm%s deg_%d khz.conf' , azstr , fs / 1e3 );
67- fn.sofctl4_fn = sprintf(' line4_28mm_pm%s deg_%d khz.txt' , azstr , fs / 1e3 );
6851 d = 28e-3 ; % 28 mm spacing
69- a1 = az ; % Azimuth +az deg
70- a2 = - az ; % Azimuth -az deg
52+ fn = export_names_helper(' line4' , azstr , d , fs );
7153 sof_bf_line4_two_beams(fs , d , a1 , a2 , fn , prm );
7254
7355 %% 4 mic 68 mm spaced array
74- fn.tplg1_fn = sprintf(' coef_line4_68mm_pm%s deg_%d khz.m4' , azstr , fs / 1e3 );
75- fn.sofctl3_fn = sprintf(' coef_line4_68mm_pm%s deg_%d khz.txt' , azstr , fs / 1e3 );
76- fn.tplg2_fn = sprintf(' line4_68mm_pm%s deg_%d khz.conf' , azstr , fs / 1e3 );
77- fn.sofctl4_fn = sprintf(' line4_68mm_pm%s deg_%d khz.txt' , azstr , fs / 1e3 );
7856 d = 68e-3 ; % 68 mm spacing
79- a1 = az ; % Azimuth +az deg
80- a2 = - az ; % Azimuth -az deg
57+ fn = export_names_helper(' line4' , azstr , d , fs );
8158 sof_bf_line4_two_beams(fs , d , a1 , a2 , fn , prm );
8259
8360 %% 4 mic 78 mm spaced array
84- fn.tplg1_fn = sprintf(' coef_line4_78mm_pm%s deg_%d khz.m4' , azstr , fs / 1e3 );
85- fn.sofctl3_fn = sprintf(' coef_line4_78mm_pm%s deg_%d khz.txt' , azstr , fs / 1e3 );
86- fn.tplg2_fn = sprintf(' line4_78mm_pm%s deg_%d khz.conf' , azstr , fs / 1e3 );
87- fn.sofctl4_fn = sprintf(' line4_78mm_pm%s deg_%d khz.txt' , azstr , fs / 1e3 );
8861 d = 78e-3 ; % 78 mm spacing
89- a1 = az ; % Azimuth +az deg
90- a2 = - az ; % Azimuth -az deg
62+ fn = export_names_helper(' line4' , azstr , d , fs );
9163 sof_bf_line4_two_beams(fs , d , a1 , a2 , fn , prm );
9264end
9365
@@ -268,3 +240,17 @@ function line_xyz(fs)
268240sof_bf_export(bfm );
269241
270242end
243+
244+ function fn = export_names_helper(arrayname , azstr , d , fs )
245+
246+ mmstr = sprintf(' %d mm' , round(d * 1e3 ));
247+ fsstr = sprintf(' %d khz' , round(fs / 1e3 ));
248+ fn.tplg1_fn = sprintf(' coef_%s _%s _pm%s deg_%s .m4' , arrayname , mmstr , azstr , fsstr );
249+ fn.tplg2_fn = sprintf(' %s _%s _pm%s deg_%s .conf' , arrayname , mmstr , azstr , fsstr );
250+ fn.sofctl3_fn = sprintf(' %s _%s _pm%s deg_%s .txt' , arrayname , mmstr , azstr , fsstr );
251+ fn.sofctl4_fn = sprintf(' %s _%s _pm%s deg_%s .txt' , arrayname , mmstr , azstr , fsstr );
252+ fn.ucmbin3_fn = sprintf(' %s _%s _pm%s deg_%s .bin' , arrayname , mmstr , azstr , fsstr );
253+ fn.ucmbin4_fn = sprintf(' %s _%s _pm%s deg_%s .bin' , arrayname , mmstr , azstr , fsstr );
254+
255+ end
256+
0 commit comments