tests/src/io: improve examples
[aubio.git] / tests / src / io / test-source_apple_audio_file.c
1 #include <aubio.h>
2 #include "utils_tests.h"
3
4 int main (int argc, char **argv)
5 {
6   uint_t err = 0;
7   if (argc < 2) {
8     err = 2;
9     PRINT_ERR("not enough arguments\n");
10     PRINT_MSG("usage: %s <source_path> [samplerate]\n", argv[0]);
11     return err;
12   }
13
14 #if __APPLE__
15   uint_t samplerate = 32000;
16   uint_t hop_size = 256;
17   uint_t n_frames = 0, read = 0;
18   if ( argc == 3 ) samplerate = atoi(argv[2]);
19
20   char_t *source_path = argv[1];
21
22   fvec_t *vec = new_fvec(hop_size);
23   aubio_source_apple_audio_t * s = new_aubio_source_apple_audio(source_path, samplerate, hop_size);
24   if (samplerate == 0 ) samplerate = aubio_source_apple_audio_get_samplerate(s);
25
26   if (!s) { err = 1; goto beach; }
27
28   do {
29     aubio_source_apple_audio_do(s, vec, &read);
30     // fvec_print (vec);
31     n_frames += read;
32   } while ( read == hop_size );
33
34 beach:
35   del_aubio_source_apple_audio (s);
36   del_fvec (vec);
37 #else
38   err = 3;
39   PRINT_ERR("aubio was not compiled with aubio_source_apple_audio\n");
40 #endif /* __APPLE__ */
41   return 0;
42 }