Changeset 214:5bfbf3903f08 in roaraudio


Ignore:
Timestamp:
07/21/08 15:03:49 (16 years ago)
Author:
phi
Branch:
default
Phase:
public
Message:

make it work :)

File:
1 edited

Legend:

Unmodified
Added
Removed
  • roarclients/roarcatplay.c

    r212 r214  
    1111 
    1212 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" 
    1713        "  --help             - Show this help\n" 
    1814       ); 
     
    2117 
    2218int main (int argc, char * argv[]) { 
    23  int    rate     = 44100; 
    24  int    bits     = 16; 
    25  int    channels = 2; 
    26  int    codec    = ROAR_CODEC_DEFAULT; 
    2719 char * server   = NULL; 
    2820 char * k; 
    29  int    fh; 
    3021 int    i; 
    31  int    in = -1; 
    32  char buf[BUFSIZE]; 
     22 char * file = NULL; 
     23 struct roar_connection con; 
    3324 
    3425 for (i = 1; i < argc; i++) { 
     
    3728  if ( strcmp(k, "--server") == 0 ) { 
    3829   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]); 
    4730  } else if ( strcmp(k, "--help") == 0 ) { 
    4831   usage(); 
    4932   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]; 
    5535  } else { 
    5636   fprintf(stderr, "Error: unknown argument: %s\n", k); 
     
    6040 } 
    6141 
    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; 
    6548 } 
    6649 
    67  if ( in == -1 ) 
    68   in = ROAR_STDIN; 
    6950 
    70  while((i = read(in, buf, BUFSIZE))) 
    71   if (write(fh, buf, i) != i) 
    72    break; 
     51 if ( file == NULL ) 
     52  file = "/dev/stdin"; 
    7353 
    74  roar_simple_close(fh); 
    75  
    76  close(in); 
     54 roar_file_play(&con, file, 1); 
    7755 
    7856 return 0; 
Note: See TracChangeset for help on using the changeset viewer.