Changeset 214:5bfbf3903f08 in roaraudio
- Timestamp:
- 07/21/08 15:03:49 (16 years ago)
- Branch:
- default
- Phase:
- public
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
roarclients/roarcatplay.c
r212 r214 11 11 12 12 printf(" --server SERVER - Set server hostname\n" 13 " --rate RATE - Set sample rate\n"14 " --bits BITS - Set bits per sample\n"15 " --chans CHANNELS - Set number of channels\n"16 " --codec CODEC - Set the codec\n"17 13 " --help - Show this help\n" 18 14 ); … … 21 17 22 18 int main (int argc, char * argv[]) { 23 int rate = 44100;24 int bits = 16;25 int channels = 2;26 int codec = ROAR_CODEC_DEFAULT;27 19 char * server = NULL; 28 20 char * k; 29 int fh;30 21 int i; 31 int in = -1;32 char buf[BUFSIZE];22 char * file = NULL; 23 struct roar_connection con; 33 24 34 25 for (i = 1; i < argc; i++) { … … 37 28 if ( strcmp(k, "--server") == 0 ) { 38 29 server = argv[++i]; 39 } else if ( strcmp(k, "--rate") == 0 ) {40 rate = atoi(argv[++i]);41 } else if ( strcmp(k, "--bits") == 0 ) {42 bits = atoi(argv[++i]);43 } else if ( strcmp(k, "--channels") == 0 || strcmp(k, "--chans") == 0 ) {44 channels = atoi(argv[++i]);45 } else if ( strcmp(k, "--codec") == 0 ) {46 codec = atoi(argv[++i]);47 30 } else if ( strcmp(k, "--help") == 0 ) { 48 31 usage(); 49 32 return 0; 50 } else if ( in == -1 ) { 51 if ( (in = open(k, O_RDONLY, 0644)) == -1 ) { 52 fprintf(stderr, "Error: can not open file: %s: %s\n", k, strerror(errno)); 53 return 1; 54 } 33 } else if ( file == NULL ) { 34 file = argv[i]; 55 35 } else { 56 36 fprintf(stderr, "Error: unknown argument: %s\n", k); … … 60 40 } 61 41 62 if ( (fh = roar_simple_play(rate, channels, bits, codec, server, "roarcat")) == -1 ) { 63 fprintf(stderr, "Error: can not start playback\n"); 64 return 1; 42 //roar_file_play 43 //ssize_t roar_file_play (struct roar_connection * con, char * file, int exec) { 44 45 if ( roar_simple_connect(&con, server, "roarcatplay") == -1 ) { 46 ROAR_DBG("roar_simple_play(*): roar_simple_connect() faild!"); 47 return -1; 65 48 } 66 49 67 if ( in == -1 )68 in = ROAR_STDIN;69 50 70 while((i = read(in, buf, BUFSIZE))) 71 if (write(fh, buf, i) != i) 72 break; 51 if ( file == NULL ) 52 file = "/dev/stdin"; 73 53 74 roar_simple_close(fh); 75 76 close(in); 54 roar_file_play(&con, file, 1); 77 55 78 56 return 0;
Note: See TracChangeset
for help on using the changeset viewer.