source: roaraudio/roarclients/roarcat2sock.c @ 233:01c44c8eecf8

Last change on this file since 233:01c44c8eecf8 was 233:01c44c8eecf8, checked in by phi, 16 years ago

changed the name of the tool to the rigth one in help ;)

File size: 1.6 KB
Line 
1//roarcat2sock.c:
2
3#include <roaraudio.h>
4
5#define BUFSIZE 1024
6
7void usage (void) {
8 printf("roarcat2sock [OPTIONS]...\n");
9
10 printf("\nOptions:\n\n");
11
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        "  --help             - Show this help\n"
17       );
18
19}
20
21int main (int argc, char * argv[]) {
22 int    rate     = 44100;
23 int    bits     = 16;
24 int    channels = 2;
25 int    codec    = ROAR_CODEC_DEFAULT;
26 char * server   = NULL;
27 char * k;
28 int    i;
29 int    fh;
30 char buf[BUFSIZE];
31 struct roar_connection con;
32
33
34 for (i = 1; i < argc; i++) {
35  k = argv[i];
36
37  if ( strcmp(k, "--server") == 0 ) {
38   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 ) {
44   channels = atoi(argv[++i]);
45  } else if ( strcmp(k, "--help") == 0 ) {
46   usage();
47   return 0;
48  } else {
49   fprintf(stderr, "Error: unknown argument: %s\n", k);
50   usage();
51   return 1;
52  }
53 }
54
55 if ( roar_simple_connect(&con, server, "roarcat2sock") == -1 ) {
56  ROAR_DBG("roar_simple_play(*): roar_simple_connect() faild!");
57  return -1;
58 }
59
60 if ( (fh = roar_simple_new_stream(&con, rate, channels, bits, codec, ROAR_DIR_PLAY)) == -1 ) {
61  roar_disconnect(&con);
62  return -1;
63 }
64
65 while((i = read(0, buf, BUFSIZE)))
66  write(fh, buf, i);
67
68 close(fh);
69
70 roar_disconnect(&con);
71
72 return 0;
73}
74
75//ll
Note: See TracBrowser for help on using the repository browser.