3 #include <aubio/aubio.h>
6 char aubio_version[] = "aubio external for pd, version " PACKAGE_VERSION;
8 static t_class *aubio_class;
15 void *aubio_new (void);
16 void aubio_setup (void);
17 extern void aubioonset_tilde_setup (void);
18 extern void aubiotempo_tilde_setup (void);
19 extern void aubiotss_tilde_setup (void);
20 extern void aubioquiet_tilde_setup (void);
21 extern void aubiopitch_tilde_setup (void);
22 extern void aubiozcr_tilde_setup (void);
24 void *aubio_new (void)
26 t_aubio *x = (t_aubio *)pd_new(aubio_class);
30 void aubio_custom_log(int level, const char *message, void *data)
32 // remove the last character, removing the trailing space
34 if ((pos=strchr(message, '\n')) != NULL) {
40 void aubio_setup (void)
43 // register custom log function for errors and warnings
44 aubio_log_set_level_function(AUBIO_LOG_ERR, aubio_custom_log, NULL);
45 aubio_log_set_level_function(AUBIO_LOG_WRN, aubio_custom_log, NULL);
46 aubioonset_tilde_setup();
47 aubiotempo_tilde_setup();
48 aubiotss_tilde_setup();
49 aubioquiet_tilde_setup();
50 aubiopitch_tilde_setup();
51 aubiozcr_tilde_setup();
52 aubio_class = class_new(gensym("aubio"), (t_newmethod)aubio_new, 0,
53 sizeof(t_aubio), 0, 0);