int main() { UserData ud; sp_data *sp; sp_createn(&sp, 2); sp_pan2_create(&ud.pan2); sp_osc_create(&ud.osc); sp_osc_create(&ud.lfo); sp_ftbl_create(sp, &ud.ft, 2048); sp_pan2_init(sp, ud.pan2); ud.pan2->type = 2; sp_gen_sine(sp, ud.ft); sp_osc_init(sp, ud.osc, ud.ft, 0); sp_osc_init(sp, ud.lfo, ud.ft, 0); ud.lfo->amp = 1; ud.lfo->freq = 1; sp->len = 44100 * 5; sp_process(sp, &ud, process); sp_pan2_destroy(&ud.pan2); sp_ftbl_destroy(&ud.ft); sp_osc_destroy(&ud.osc); sp_osc_destroy(&ud.lfo); sp_destroy(&sp); return 0; }
int main(int argc, char *argv[]) { UserData ud; sp_data *sp; if(argc == 1) { printf("Usage: ./%s nchan\n", argv[0]); fflush(stdin); exit(1); } int nchan = atoi(argv[1]); sp_createn(&sp, 2); ud.nchan = nchan; sp_in_create(&ud.in); sp_in_init(sp, ud.in); sp_jack_process(sp, &ud, process); sp_in_destroy(&ud.in); sp_destroy(&sp); return 0; }