From 7418ed9af40c8a4715add7a302a59a907413640e Mon Sep 17 00:00:00 2001 From: Bent Bisballe Nyeng Date: Fri, 3 Oct 2014 10:43:17 +0200 Subject: New aiorecord/aioplay stub programs. --- src/aiorecord.cc | 32 +++++++++++++++++++++++++++++--- 1 file changed, 29 insertions(+), 3 deletions(-) diff --git a/src/aiorecord.cc b/src/aiorecord.cc index cfcc392..76febac 100644 --- a/src/aiorecord.cc +++ b/src/aiorecord.cc @@ -58,8 +58,24 @@ static const char usage_str[] = " -h, --help Print this message and exit.\n" ; +typedef enum { + MODE_UNKNOWN, + MODE_RECORD, + MODE_PLAY, +} mode_t; + int main(int argc, char *argv[]) { + // This program acts as both a recorder and a player depending on which name + // it is called by. + mode_t mode = MODE_UNKNOWN; + char *prog = strrchr(argv[0], '/'); + if(prog == NULL) prog = argv[0]; + if(!strcmp(prog, "aiorecord")) mode = MODE_RECORD; + if(!strcmp(prog, "aioplay")) mode = MODE_PLAY; + + print("prog: '%s'\n", prog); + std::string device = "default"; std::string file = "/dev/stdout"; int samplerate = 48000; @@ -129,9 +145,19 @@ int main(int argc, char *argv[]) Device dev(device); - Source *src = dev.getSource(device, samplerate, channels); - if(!src) { - printf("Could not find source device: %s\n", device.c_str()); + switch(mode) { + case MODE_RECORD: + { + Source *src = dev.getSource(device, samplerate, channels); + if(!src) { + printf("Could not find source device: %s\n", device.c_str()); + } + } + break; + case MODE_PLAY: + default: + printf("Unknown mode '%s'.\n", prog); + return 1; } return 0; -- cgit v1.2.3