From 34c76ccf7388de2a9ca60c8ad500e076dc3420a6 Mon Sep 17 00:00:00 2001 From: Jaroslav Kysela Date: Sat, 25 Nov 2000 13:07:24 +0000 Subject: [PATCH] Fixed test tools for latest API --- test/midiloop.c | 17 ++++++++++------- test/rawmidi.c | 19 ++++++++++++------- 2 files changed, 22 insertions(+), 14 deletions(-) diff --git a/test/midiloop.c b/test/midiloop.c index ae41498c..f28662cb 100644 --- a/test/midiloop.c +++ b/test/midiloop.c @@ -69,7 +69,7 @@ int main(int argc, char** argv) int card_in = -1, device_in = 0; int card_out = -1, device_out = 0; snd_rawmidi_t *handle_in = NULL, *handle_out = NULL; - unsigned char ibuf[512], obuf[512]; + unsigned char ibuf[512], obuf[512], iname[32], oname[32]; struct timeval start, end; long long diff; snd_rawmidi_status_t istat, ostat; @@ -120,6 +120,9 @@ int main(int argc, char** argv) card_in = card_out; if (card_out == -1) card_out = card_in; + + sprintf(iname, "hw:%i,%i", card_in, device_in); + sprintf(oname, "hw:%i,%i", card_out, device_out); if (verbose) { fprintf(stderr, "Using: \n"); @@ -129,13 +132,13 @@ int main(int argc, char** argv) fprintf(stderr, "card %d, device %d\n", card_out, device_out); } - err = snd_rawmidi_open(&handle_in, card_in, device_in, SND_RAWMIDI_OPEN_INPUT | SND_RAWMIDI_OPEN_NONBLOCK); + err = snd_rawmidi_open(&handle_in, iname, SND_RAWMIDI_OPEN_INPUT, SND_RAWMIDI_NONBLOCK); if (err) { fprintf(stderr,"snd_rawmidi_open %d %d failed: %d\n",card_in,device_in,err); exit(EXIT_FAILURE); } - err = snd_rawmidi_open(&handle_out, card_out, device_out, SND_RAWMIDI_OPEN_OUTPUT); + err = snd_rawmidi_open(&handle_out, oname, SND_RAWMIDI_OPEN_OUTPUT, 0); if (err) { fprintf(stderr,"snd_rawmidi_open %d %d failed: %d\n",card_out,device_out,err); exit(EXIT_FAILURE); @@ -188,10 +191,10 @@ int main(int argc, char** argv) err = snd_rawmidi_status(handle_out, &ostat); if (err < 0) fprintf(stderr, "output stream status error: %d\n", err); - printf("input.status.queue = %li\n", istat.queue); - printf("input.status.overrun = %li\n", istat.overrun); - printf("output.status.queue = %li\n", ostat.queue); - printf("output.status.overrun = %li\n", ostat.overrun); + printf("input.status.avail = %li\n", istat.avail); + printf("input.status.xruns = %li\n", istat.xruns); + printf("output.status.avail = %li\n", ostat.avail); + printf("output.status.xruns = %li\n", ostat.xruns); diff = timediff(end, start); printf("Time diff: %Liusec (%Li bytes/sec)\n", diff, ((long long)opos * 1000000) / diff); diff --git a/test/rawmidi.c b/test/rawmidi.c index f466ee09..8a26e71a 100644 --- a/test/rawmidi.c +++ b/test/rawmidi.c @@ -33,6 +33,7 @@ int main(int argc,char** argv) int verbose = 0; int card_in = -1,device_in = -1; int card_out = -1,device_out = -1; + char iname[32], oname[32]; char* node_in = 0; char* node_out = 0; @@ -89,6 +90,8 @@ int main(int argc,char** argv) } } } + + sprintf(oname, "hw:%i,%i", card_out, device_out); if (verbose) { fprintf(stderr,"Using: \n"); @@ -111,13 +114,14 @@ int main(int argc,char** argv) } if (card_in!=-1) { - err = snd_rawmidi_open(&handle_in,card_in,device_in,O_RDONLY); + sprintf(iname, "hw:%i,%i", card_in, device_in); + err = snd_rawmidi_open(&handle_in,iname,SND_RAWMIDI_OPEN_INPUT,0); if (err) { fprintf(stderr,"snd_rawmidi_open %d %d failed: %d\n",card_in,device_in,err); } } if (node_in && (!node_out || strcmp(node_out,node_in))) { - fd_in = open(node_in,O_RDONLY); + fd_in = open(node_in,O_RDONLY); if (fd_in<0) { fprintf(stderr,"open %s for input failed\n",node_in); } @@ -126,7 +130,8 @@ int main(int argc,char** argv) signal(SIGINT,sighandler); if (card_out!=-1) { - err = snd_rawmidi_open(&handle_out,card_out,device_out,O_WRONLY); + sprintf(oname, "hw:%i,%i", card_out, device_out); + err = snd_rawmidi_open(&handle_out,oname,SND_RAWMIDI_OPEN_OUTPUT,0); if (err) { fprintf(stderr,"snd_rawmidi_open %d %d failed: %d\n",card_out,device_out,err); } @@ -181,7 +186,7 @@ int main(int argc,char** argv) ch=0x90; snd_rawmidi_write(handle_out,&ch,1); ch=60; snd_rawmidi_write(handle_out,&ch,1); ch=100; snd_rawmidi_write(handle_out,&ch,1); - snd_rawmidi_output_drain(handle_in); + snd_rawmidi_output_drain(handle_out); sleep(1); ch=0x90; snd_rawmidi_write(handle_out,&ch,1); ch=60; snd_rawmidi_write(handle_out,&ch,1); @@ -235,12 +240,12 @@ int main(int argc,char** argv) } if (handle_in) { - snd_rawmidi_output_drain(handle_in); + snd_rawmidi_input_drain(handle_in); snd_rawmidi_close(handle_in); } if (handle_out) { - snd_rawmidi_output_drain(handle_in); - snd_rawmidi_close(handle_in); + snd_rawmidi_output_drain(handle_out); + snd_rawmidi_close(handle_out); } if (fd_in!=-1) { close(fd_in); -- 2.47.1