#include #include #include #include #include static void usage(void) { fprintf(stderr, "usage: rawmidi [options]\n"); fprintf(stderr, " options:\n"); fprintf(stderr, " -v: verbose mode\n"); fprintf(stderr, " -i [ card-id device-id | node ] : test input device\n"); fprintf(stderr, " -o [ card-id device-id | node ] : test output device\n"); fprintf(stderr, " -t: test midi thru\n"); fprintf(stderr, " example:\n"); fprintf(stderr, " rawmidi -i 0 0 -o /dev/midi1\n"); fprintf(stderr, " tests input for card 0, device 0, using snd_rawmidi API\n"); fprintf(stderr, " and /dev/midi1 using file desciptors\n"); } int stop=0; void sighandler(int dum) { stop=1; } int main(int argc,char** argv) { int i; int err; int thru=0; int verbose = 0; int card_in = -1,device_in = -1; int card_out = -1,device_out = -1; char* node_in = 0; char* node_out = 0; int fd_in = -1,fd_out = -1; snd_rawmidi_t *handle_in = 0,*handle_out = 0; if (argc==1) { usage(); exit(0); } for (i = 1 ; i