diff --git a/externals/iem/iem_bin_ambi/src/bin_ambi_calc_HRTF.c b/externals/iem/iem_bin_ambi/src/bin_ambi_calc_HRTF.c index f2ea70f8a012a8fd947f2174f199f673b793d939..b20836c95f3b23d6e0253d8146813e88a5eb1261 100644 --- a/externals/iem/iem_bin_ambi/src/bin_ambi_calc_HRTF.c +++ b/externals/iem/iem_bin_ambi/src/bin_ambi_calc_HRTF.c @@ -470,9 +470,26 @@ static void *bin_ambi_calc_HRTF_new(t_symbol *s, int argc, t_atom *argv) char buf[400]; int i, j, fftok; int n_ls, fftsize; - t_symbol *s_hrir; - t_symbol *s_hrtf_re; - t_symbol *s_hrtf_im; + t_symbol *s_hrir = gensym("L_HRIR"); + t_symbol *s_hrtf_re = gensym("HRTF_re"); + t_symbol *s_hrtf_im = gensym("HRTF_im"); + t_atom sane_defaults[6]; + + if(!argc) + { + post("bin_ambi_calc_HRTF: warning: no arguments provided: " + "setting to [bin_ambi_calc_HRTF L_HRIR HRTF_re HRTF_im " + "HRIR_win 1 512]"); + SETSYMBOL(sane_defaults, s_hrir); + SETSYMBOL(sane_defaults+1, s_hrtf_re); + SETSYMBOL(sane_defaults+2, s_hrtf_im); + SETSYMBOL(sane_defaults+3, gensym("HRIR_win")); + SETFLOAT(sane_defaults+4, 1.); + SETFLOAT(sane_defaults+5, 512.); + argc = 6; + argv = sane_defaults; + } + if((argc >= 6) && IS_A_SYMBOL(argv,0) && diff --git a/externals/iem/iem_bin_ambi/src/bin_ambi_reduced_decode.c b/externals/iem/iem_bin_ambi/src/bin_ambi_reduced_decode.c index ee1abd6162ed0240b5db8c2cfff2b00e0d2b21a4..44188e08bddd64ad427305ba14d1d4440be7ee0a 100644 --- a/externals/iem/iem_bin_ambi/src/bin_ambi_reduced_decode.c +++ b/externals/iem/iem_bin_ambi/src/bin_ambi_reduced_decode.c @@ -1086,11 +1086,28 @@ static void *bin_ambi_reduced_decode_new(t_symbol *s, int argc, t_atom *argv) t_symbol *s_hrir=gensym("L_HRIR"); t_symbol *s_hrtf_re=gensym("HRTF_re"); t_symbol *s_hrtf_im=gensym("HRTF_im"); - t_symbol *s_fade_out_hrir=gensym("HRIR_win"); + t_symbol *s_fade_out_hrir=gensym("HRIR_win"); + t_atom sane_defaults[8]; + + if(!argc) + { + post("bin_ambi_reduced_decode: warning: no arguments provided: " + "setting to [bin_ambi_reduced_decode 1 2 1]"); + SETFLOAT(sane_defaults, 0.); + SETSYMBOL(sane_defaults+1, s_hrir); + SETSYMBOL(sane_defaults+2, s_hrtf_re); + SETSYMBOL(sane_defaults+3, s_hrtf_im); + SETSYMBOL(sane_defaults+4, s_fade_out_hrir); + SETFLOAT(sane_defaults+5, 1.); + SETFLOAT(sane_defaults+6, 2.); + SETFLOAT(sane_defaults+7, 512.); + argc = 8; + argv = sane_defaults; + } if((argc >= 8) && IS_A_FLOAT(argv,0) && - IS_A_SYMBOL(argv,1) && + IS_A_SYMBOL(argv,1) && IS_A_SYMBOL(argv,2) && IS_A_SYMBOL(argv,3) && IS_A_SYMBOL(argv,4) && @@ -1100,10 +1117,10 @@ static void *bin_ambi_reduced_decode_new(t_symbol *s, int argc, t_atom *argv) { prefix = (int)atom_getintarg(0, argc, argv); - s_hrir = (t_symbol *)atom_getsymbolarg(1, argc, argv); - s_hrtf_re = (t_symbol *)atom_getsymbolarg(2, argc, argv); - s_hrtf_im = (t_symbol *)atom_getsymbolarg(3, argc, argv); - s_fade_out_hrir = (t_symbol *)atom_getsymbolarg(4, argc, argv); + s_hrir = (t_symbol *)atom_getsymbolarg(1, argc, argv); + s_hrtf_re = (t_symbol *)atom_getsymbolarg(2, argc, argv); + s_hrtf_im = (t_symbol *)atom_getsymbolarg(3, argc, argv); + s_fade_out_hrir = (t_symbol *)atom_getsymbolarg(4, argc, argv); n_order = (int)atom_getintarg(5, argc, argv); n_dim = (int)atom_getintarg(6, argc, argv); @@ -1113,7 +1130,7 @@ static void *bin_ambi_reduced_decode_new(t_symbol *s, int argc, t_atom *argv) } else if((argc >= 8) && IS_A_FLOAT(argv,0) && - IS_A_FLOAT(argv,1) && + IS_A_FLOAT(argv,1) && IS_A_FLOAT(argv,2) && IS_A_FLOAT(argv,3) && IS_A_FLOAT(argv,4) && @@ -1123,13 +1140,13 @@ static void *bin_ambi_reduced_decode_new(t_symbol *s, int argc, t_atom *argv) { prefix = (int)atom_getintarg(0, argc, argv); - s_hrir = gensym("L_HRIR"); - s_hrtf_re = gensym("HRTF_re"); - s_hrtf_im = gensym("HRTF_im"); - s_fade_out_hrir = gensym("HRIR_win"); + s_hrir = gensym("L_HRIR"); + s_hrtf_re = gensym("HRTF_re"); + s_hrtf_im = gensym("HRTF_im"); + s_fade_out_hrir = gensym("HRIR_win"); n_order = (int)atom_getintarg(5, argc, argv); - n_dim = (int)atom_getintarg(6, argc, argv); + n_dim = (int)atom_getintarg(6, argc, argv); fftsize = (int)atom_getintarg(7, argc, argv); ok = 1; @@ -1168,20 +1185,20 @@ static void *bin_ambi_reduced_decode_new(t_symbol *s, int argc, t_atom *argv) if(!fftok) { - fftsize = 512; + fftsize = 512; post("bin_ambi_reduced_decode-WARNING: fftsize not equal to 2 ^ n !!!"); post(" fftsize set to %d", fftsize); } - x->x_n_dim = n_dim; - x->x_n_ambi = n_ambi; - x->x_n_order = n_order; - x->x_fftsize = fftsize; + x->x_n_dim = n_dim; + x->x_n_ambi = n_ambi; + x->x_n_order = n_order; + x->x_fftsize = fftsize; - x->x_hrir_filename = (t_symbol **)getbytes(x->x_n_ambi * sizeof(t_symbol *)); - x->x_s_hrir = (t_symbol **)getbytes(x->x_n_ambi * sizeof(t_symbol *)); - x->x_s_hrtf_re = (t_symbol **)getbytes(x->x_n_ambi * sizeof(t_symbol *)); - x->x_s_hrtf_im = (t_symbol **)getbytes(x->x_n_ambi * sizeof(t_symbol *)); + x->x_hrir_filename = (t_symbol **)getbytes(x->x_n_ambi * sizeof(t_symbol *)); + x->x_s_hrir = (t_symbol **)getbytes(x->x_n_ambi * sizeof(t_symbol *)); + x->x_s_hrtf_re = (t_symbol **)getbytes(x->x_n_ambi * sizeof(t_symbol *)); + x->x_s_hrtf_im = (t_symbol **)getbytes(x->x_n_ambi * sizeof(t_symbol *)); for(i=0; i<n_ambi; i++) { diff --git a/externals/iem/iem_bin_ambi/src/bin_ambi_reduced_decode2.c b/externals/iem/iem_bin_ambi/src/bin_ambi_reduced_decode2.c index cfb50eb2e8c973153c8e9152483c4ed822d91887..f5e1e89b533ef7526ae7779bd242e5b35ac00a80 100644 --- a/externals/iem/iem_bin_ambi/src/bin_ambi_reduced_decode2.c +++ b/externals/iem/iem_bin_ambi/src/bin_ambi_reduced_decode2.c @@ -1142,7 +1142,25 @@ static void *bin_ambi_reduced_decode2_new(t_symbol *s, int argc, t_atom *argv) t_symbol *s_hrir=gensym("L_HRIR"); t_symbol *s_hrtf_re=gensym("HRTF_re"); t_symbol *s_hrtf_im=gensym("HRTF_im"); - t_symbol *s_fade_out_hrir=gensym("HRIR_win"); + t_symbol *s_fade_out_hrir=gensym("HRIR_win"); + t_atom sane_defaults[9]; + + if(!argc) + { + post("bin_ambi_reduced_decode2: warning: no arguments " + "provided: setting to [bin_ambi_reduced_decode2 1 2 1]"); + SETFLOAT(sane_defaults, 0.); + SETSYMBOL(sane_defaults+1, s_hrir); + SETSYMBOL(sane_defaults+2, s_hrtf_re); + SETSYMBOL(sane_defaults+3, s_hrtf_im); + SETSYMBOL(sane_defaults+4, s_fade_out_hrir); + SETFLOAT(sane_defaults+5, 1.); + SETFLOAT(sane_defaults+6, 2.); + SETFLOAT(sane_defaults+7, 1.); + SETFLOAT(sane_defaults+8, 512.); + argc = 9; + argv = sane_defaults; + } if((argc >= 9) && IS_A_FLOAT(argv,0) && diff --git a/externals/iem/iem_bin_ambi/src/bin_ambi_reduced_decode_fft.c b/externals/iem/iem_bin_ambi/src/bin_ambi_reduced_decode_fft.c index 04b4e0c5e01c7a20aa8f3094195ff153e2108974..dfb094736fb1bb7178e0d1519afc05ce045b049b 100644 --- a/externals/iem/iem_bin_ambi/src/bin_ambi_reduced_decode_fft.c +++ b/externals/iem/iem_bin_ambi/src/bin_ambi_reduced_decode_fft.c @@ -1273,11 +1273,33 @@ static void *bin_ambi_reduced_decode_fft_new(t_symbol *s, int argc, t_atom *argv t_symbol *s_hrir=gensym("L_HRIR"); t_symbol *s_hrtf_re=gensym("HRTF_re"); t_symbol *s_hrtf_im=gensym("HRTF_im"); - t_symbol *s_fade_out_hrir=gensym("HRIR_win"); + t_symbol *s_fade_out_hrir=gensym("HRIR_win"); + t_atom sane_defaults[11]; + + if(!argc) + { + post("bin_ambi_reduced_decode_fft: warning: no arguments " + "provided: setting to " + "[bin_ambi_reduced_decode_fft 1 L_HRIR HRTF_re HRTF_im " + "HRIR_win 1 2 1 1 0 512]"); + SETFLOAT(sane_defaults, 0.); + SETSYMBOL(sane_defaults+1, s_hrir); + SETSYMBOL(sane_defaults+2, s_hrtf_re); + SETSYMBOL(sane_defaults+3, s_hrtf_im); + SETSYMBOL(sane_defaults+4, s_fade_out_hrir); + SETFLOAT(sane_defaults+5, 1.); + SETFLOAT(sane_defaults+6, 2.); + SETFLOAT(sane_defaults+7, 1.); + SETFLOAT(sane_defaults+8, 1.); + SETFLOAT(sane_defaults+9, 0.); + SETFLOAT(sane_defaults+10, 512.); + argc = 11; + argv = sane_defaults; + } if((argc >= 11) && IS_A_FLOAT(argv,0) && - IS_A_SYMBOL(argv,1) && + IS_A_SYMBOL(argv,1) && IS_A_SYMBOL(argv,2) && IS_A_SYMBOL(argv,3) && IS_A_SYMBOL(argv,4) && @@ -1290,13 +1312,13 @@ static void *bin_ambi_reduced_decode_fft_new(t_symbol *s, int argc, t_atom *argv { prefix = (int)atom_getintarg(0, argc, argv); - s_hrir = (t_symbol *)atom_getsymbolarg(1, argc, argv); - s_hrtf_re = (t_symbol *)atom_getsymbolarg(2, argc, argv); - s_hrtf_im = (t_symbol *)atom_getsymbolarg(3, argc, argv); - s_fade_out_hrir = (t_symbol *)atom_getsymbolarg(4, argc, argv); + s_hrir = (t_symbol *)atom_getsymbolarg(1, argc, argv); + s_hrtf_re = (t_symbol *)atom_getsymbolarg(2, argc, argv); + s_hrtf_im = (t_symbol *)atom_getsymbolarg(3, argc, argv); + s_fade_out_hrir = (t_symbol *)atom_getsymbolarg(4, argc, argv); n_order = (int)atom_getintarg(5, argc, argv); - n_dim = (int)atom_getintarg(6, argc, argv); + n_dim = (int)atom_getintarg(6, argc, argv); n_ind_ls = (int)atom_getintarg(7, argc, argv); n_mrg_mir_ls = (int)atom_getintarg(8, argc, argv); n_ph_ls = (int)atom_getintarg(9, argc, argv); @@ -1306,7 +1328,7 @@ static void *bin_ambi_reduced_decode_fft_new(t_symbol *s, int argc, t_atom *argv } else if((argc >= 11) && IS_A_FLOAT(argv,0) && - IS_A_FLOAT(argv,1) && + IS_A_FLOAT(argv,1) && IS_A_FLOAT(argv,2) && IS_A_FLOAT(argv,3) && IS_A_FLOAT(argv,4) && @@ -1319,9 +1341,9 @@ static void *bin_ambi_reduced_decode_fft_new(t_symbol *s, int argc, t_atom *argv { prefix = (int)atom_getintarg(0, argc, argv); - s_hrir = gensym("L_HRIR"); - s_hrtf_re = gensym("HRTF_re"); - s_hrtf_im = gensym("HRTF_im"); + s_hrir = gensym("L_HRIR"); + s_hrtf_re = gensym("HRTF_re"); + s_hrtf_im = gensym("HRTF_im"); s_fade_out_hrir = gensym("HRIR_win"); n_order = (int)atom_getintarg(5, argc, argv); diff --git a/externals/iem/iem_bin_ambi/src/bin_ambi_reduced_decode_fft2.c b/externals/iem/iem_bin_ambi/src/bin_ambi_reduced_decode_fft2.c index 9d0e11db8d61e619461ad08d1d03f304a1e37b76..9f72be8e337a07bd90e881325e3c2ada2f9b831c 100644 --- a/externals/iem/iem_bin_ambi/src/bin_ambi_reduced_decode_fft2.c +++ b/externals/iem/iem_bin_ambi/src/bin_ambi_reduced_decode_fft2.c @@ -1161,7 +1161,28 @@ static void *bin_ambi_reduced_decode_fft2_new(t_symbol *s, int argc, t_atom *arg t_symbol *s_hrtf_re=gensym("HRTF_re"); t_symbol *s_hrtf_im=gensym("HRTF_im"); t_symbol *s_fade_out_hrir=gensym("HRIR_win"); + t_atom sane_defaults[10]; + if(!argc) + { + post("bin_ambi_reduced_decode_fft2: warning: no arguments " + "provided: setting to " + "[bin_ambi_reduced_decode_fft2 1 L_HRIR HRTF_re HRTF_im " + "HRIR_win 1 2 1 0 512]"); + SETFLOAT(sane_defaults, 0.); + SETSYMBOL(sane_defaults+1, s_hrir); + SETSYMBOL(sane_defaults+2, s_hrtf_re); + SETSYMBOL(sane_defaults+3, s_hrtf_im); + SETSYMBOL(sane_defaults+4, s_fade_out_hrir); + SETFLOAT(sane_defaults+5, 1.); + SETFLOAT(sane_defaults+6, 2.); + SETFLOAT(sane_defaults+7, 1.); + SETFLOAT(sane_defaults+8, 0.); + SETFLOAT(sane_defaults+9, 512.); + argc = 10; + argv = sane_defaults; + } + if((argc >= 10) && IS_A_FLOAT(argv,0) && IS_A_SYMBOL(argv,1) && diff --git a/externals/iem/iem_bin_ambi/src/bin_ambi_reduced_decode_fir.c b/externals/iem/iem_bin_ambi/src/bin_ambi_reduced_decode_fir.c index 19783da07420b2bd850a9fe8eca785905d9ad786..fe95b120eff2657394ed21d7a6e193feefa685cc 100644 --- a/externals/iem/iem_bin_ambi/src/bin_ambi_reduced_decode_fir.c +++ b/externals/iem/iem_bin_ambi/src/bin_ambi_reduced_decode_fir.c @@ -1174,11 +1174,32 @@ static void *bin_ambi_reduced_decode_fir_new(t_symbol *s, int argc, t_atom *argv int n_order=0, n_dim=0, n_ind_ls=0, n_mrg_mir_ls=0, n_ph_ls=0, n_ambi=0, firsize=0, prefix=0; t_symbol *s_hrir=gensym("L_HRIR"); t_symbol *s_hrir_red=gensym("HRIR_red"); - t_symbol *s_fade_out_hrir=gensym("HRIR_win"); + t_symbol *s_fade_out_hrir=gensym("HRIR_win"); + t_atom sane_defaults[10]; + + if(!argc) + { + post("bin_ambi_reduced_decode_fir: warning: no arguments " + "provided: setting to " + "[bin_ambi_reduced_decode_fir 1 L_HRIR HRTF_red " + "HRIR_win 1 2 1 1 0 512]"); + SETFLOAT(sane_defaults, 0.); + SETSYMBOL(sane_defaults+1, s_hrir); + SETSYMBOL(sane_defaults+2, s_hrir_red); + SETSYMBOL(sane_defaults+3, s_fade_out_hrir); + SETFLOAT(sane_defaults+4, 1.); + SETFLOAT(sane_defaults+5, 2.); + SETFLOAT(sane_defaults+6, 1.); + SETFLOAT(sane_defaults+7, 1.); + SETFLOAT(sane_defaults+8, 0.); + SETFLOAT(sane_defaults+9, 512.); + argc = 10; + argv = sane_defaults; + } if((argc >= 10) && IS_A_FLOAT(argv,0) && - IS_A_SYMBOL(argv,1) && + IS_A_SYMBOL(argv,1) && IS_A_SYMBOL(argv,2) && IS_A_SYMBOL(argv,3) && IS_A_FLOAT(argv,4) && @@ -1190,12 +1211,12 @@ static void *bin_ambi_reduced_decode_fir_new(t_symbol *s, int argc, t_atom *argv { prefix = (int)atom_getintarg(0, argc, argv); - s_hrir = (t_symbol *)atom_getsymbolarg(1, argc, argv); - s_hrir_red = (t_symbol *)atom_getsymbolarg(2, argc, argv); - s_fade_out_hrir = (t_symbol *)atom_getsymbolarg(3, argc, argv); + s_hrir = (t_symbol *)atom_getsymbolarg(1, argc, argv); + s_hrir_red = (t_symbol *)atom_getsymbolarg(2, argc, argv); + s_fade_out_hrir = (t_symbol *)atom_getsymbolarg(3, argc, argv); n_order = (int)atom_getintarg(4, argc, argv); - n_dim = (int)atom_getintarg(5, argc, argv); + n_dim = (int)atom_getintarg(5, argc, argv); n_ind_ls = (int)atom_getintarg(6, argc, argv); n_mrg_mir_ls = (int)atom_getintarg(7, argc, argv); n_ph_ls = (int)atom_getintarg(8, argc, argv); diff --git a/externals/iem/iem_bin_ambi/src/bin_ambi_reduced_decode_fir2.c b/externals/iem/iem_bin_ambi/src/bin_ambi_reduced_decode_fir2.c index b491a31df8bf86ec3fcf642967fa6079a5e21194..88295c72690766032b582ba056caf6f7d045f201 100644 --- a/externals/iem/iem_bin_ambi/src/bin_ambi_reduced_decode_fir2.c +++ b/externals/iem/iem_bin_ambi/src/bin_ambi_reduced_decode_fir2.c @@ -1057,11 +1057,31 @@ static void *bin_ambi_reduced_decode_fir2_new(t_symbol *s, int argc, t_atom *arg int n_order=0, n_dim=0, n_real_ls=0, n_pht_ls=0, n_ambi=0, firsize=0, prefix=0; t_symbol *s_hrir=gensym("L_HRIR"); t_symbol *s_hrir_red=gensym("HRIR_red"); - t_symbol *s_fade_out_hrir=gensym("HRIR_win"); + t_symbol *s_fade_out_hrir=gensym("HRIR_win"); + t_atom sane_defaults[9]; + + if(!argc) + { + post("bin_ambi_reduced_decode_fir2: warning: no arguments " + "provided: setting to " + "[bin_ambi_reduced_decode_fir2 1 L_HRIR HRIR_red " + "HRIR_win 1 2 1 0 32]"); + SETFLOAT(sane_defaults, 0.); + SETSYMBOL(sane_defaults+1, s_hrir); + SETSYMBOL(sane_defaults+2, s_hrir_red); + SETSYMBOL(sane_defaults+3, s_fade_out_hrir); + SETFLOAT(sane_defaults+4, 1.); + SETFLOAT(sane_defaults+5, 2.); + SETFLOAT(sane_defaults+6, 1.); + SETFLOAT(sane_defaults+7, 0.); + SETFLOAT(sane_defaults+8, 32.); + argc = 9; + argv = sane_defaults; + } if((argc >= 9) && IS_A_FLOAT(argv,0) && - IS_A_SYMBOL(argv,1) && + IS_A_SYMBOL(argv,1) && IS_A_SYMBOL(argv,2) && IS_A_SYMBOL(argv,3) && IS_A_FLOAT(argv,4) &&