Changeset 5457:d4b1d5287492 in roaraudio


Ignore:
Timestamp:
03/26/12 12:19:36 (12 years ago)
Author:
phi
Branch:
default
Phase:
public
Message:

convert to use struct roar_audio_info

File:
1 edited

Legend:

Unmodified
Added
Removed
  • roarclients/roarcat.c

    r5456 r5457  
    5252 
    5353int main (int argc, char * argv[]) { 
    54  int    rate     = -1; 
    55  int    bits     = -1; 
    56  int    channels = -1; 
    57  int    codec    = -1; 
     54 struct roar_audio_info info = { 
     55  .rate = ROAR_AUDIO_INFO_INVALID, 
     56  .bits = ROAR_AUDIO_INFO_INVALID, 
     57  .channels = ROAR_AUDIO_INFO_INVALID, 
     58  .codec = ROAR_AUDIO_INFO_INVALID}; 
    5859 int    dir      = ROAR_DIR_PLAY; 
    5960 int    rel_id   = -1; 
     
    8384   name = argv[++i]; 
    8485  } else if ( !strcmp(k, "--rate") || !strcmp(k, "-r") || !strcmp(k, "-R") ) { 
    85    rate = roar_str2rate(argv[++i]); 
     86   info.rate = roar_str2rate(argv[++i]); 
    8687  } else if ( !strcmp(k, "--bits") || !strcmp(k, "-B") ) { 
    87    bits = roar_str2bits(argv[++i]); 
     88   info.bits = roar_str2bits(argv[++i]); 
    8889  } else if ( !strcmp(k, "-b") ) { 
    89    bits = 8; 
     90   info.bits = 8; 
    9091  } else if ( !strcmp(k, "--channels") || !strcmp(k, "--chans") || !strcmp(k, "-C") ) { 
    91    channels = roar_str2channels(argv[++i]); 
     92   info.channels = roar_str2channels(argv[++i]); 
    9293  } else if ( !strcmp(k, "-m") ) { 
    93    channels = 1; 
    94   } else if ( !strcmp(k, "--codec") ) { 
    95    if ( (codec = roar_str2codec(argv[++i])) == -1 ) { 
     94   info.channels = 1; 
     95  } else if ( !strcmp(k, "--codec") || !strcmp(k, "-E") ) { 
     96   if ( (info.codec = roar_str2codec(argv[++i])) == ROAR_AUDIO_INFO_INVALID ) { 
    9697    fprintf(stderr, "Error: Unknown codec: %s\n", argv[i]); 
    9798    return 1; 
     
    134135 switch (dir) { 
    135136  case ROAR_DIR_PLAY: 
    136     if ( rate     == -1 ) rate     = ROAR_RATE_DEFAULT; 
    137     if ( bits     == -1 ) bits     = ROAR_BITS_DEFAULT; 
    138     if ( channels == -1 ) channels = ROAR_CHANNELS_DEFAULT; 
    139     if ( codec    == -1 ) codec    = ROAR_CODEC_DEFAULT; 
     137    if ( info.rate     == ROAR_AUDIO_INFO_INVALID ) info.rate     = ROAR_RATE_DEFAULT; 
     138    if ( info.bits     == ROAR_AUDIO_INFO_INVALID ) info.bits     = ROAR_BITS_DEFAULT; 
     139    if ( info.channels == ROAR_AUDIO_INFO_INVALID ) info.channels = ROAR_CHANNELS_DEFAULT; 
     140    if ( info.codec    == ROAR_AUDIO_INFO_INVALID ) info.codec    = ROAR_CODEC_DEFAULT; 
    140141   break; 
    141142  case ROAR_DIR_MIDI_IN: 
    142     if ( rate     == -1 ) rate     = 0; 
    143     if ( bits     == -1 ) bits     = ROAR_MIDI_BITS; 
    144     if ( channels == -1 ) channels = ROAR_MIDI_CHANNELS_DEFAULT; 
    145     if ( codec    == -1 ) codec    = ROAR_CODEC_MIDI; 
     143    if ( info.rate     == ROAR_AUDIO_INFO_INVALID ) info.rate     = 0; 
     144    if ( info.bits     == ROAR_AUDIO_INFO_INVALID ) info.bits     = ROAR_MIDI_BITS; 
     145    if ( info.channels == ROAR_AUDIO_INFO_INVALID ) info.channels = ROAR_MIDI_CHANNELS_DEFAULT; 
     146    if ( info.codec    == ROAR_AUDIO_INFO_INVALID ) info.codec    = ROAR_CODEC_MIDI; 
    146147   break; 
    147148  case ROAR_DIR_LIGHT_IN: 
    148     if ( rate     == -1 ) rate     = 0; 
    149     if ( bits     == -1 ) bits     = ROAR_LIGHT_BITS; 
    150     if ( channels == -1 ) channels = 0; 
    151     if ( codec    == -1 ) codec    = ROAR_CODEC_DMX512; 
     149    if ( info.rate     == ROAR_AUDIO_INFO_INVALID ) info.rate     = 0; 
     150    if ( info.bits     == ROAR_AUDIO_INFO_INVALID ) info.bits     = ROAR_LIGHT_BITS; 
     151    if ( info.channels == ROAR_AUDIO_INFO_INVALID ) info.channels = 0; 
     152    if ( info.codec    == ROAR_AUDIO_INFO_INVALID ) info.codec    = ROAR_CODEC_DMX512; 
    152153   break; 
    153154  case ROAR_DIR_COMPLEX_IN: 
    154     if ( rate     == -1 ) rate     = ROAR_COMPLEX_RATE; 
    155     if ( bits     == -1 ) bits     = ROAR_COMPLEX_BITS; 
    156     if ( channels == -1 ) channels = ROAR_COMPLEX_CHANNELS; 
    157     if ( codec    == -1 ) codec    = ROAR_COMPLEX_CODEC; 
     155    if ( info.rate     == ROAR_AUDIO_INFO_INVALID ) info.rate     = ROAR_COMPLEX_RATE; 
     156    if ( info.bits     == ROAR_AUDIO_INFO_INVALID ) info.bits     = ROAR_COMPLEX_BITS; 
     157    if ( info.channels == ROAR_AUDIO_INFO_INVALID ) info.channels = ROAR_COMPLEX_CHANNELS; 
     158    if ( info.codec    == ROAR_AUDIO_INFO_INVALID ) info.codec    = ROAR_COMPLEX_CODEC; 
    158159   break; 
    159160  case ROAR_DIR_RDTCS_IN: 
    160     if ( rate     == -1 ) rate     = ROAR_RDTCS_RATE; 
    161     if ( bits     == -1 ) bits     = ROAR_RDTCS_BITS; 
    162     if ( channels == -1 ) channels = ROAR_RDTCS_CHANNELS; 
    163     if ( codec    == -1 ) codec    = ROAR_RDTCS_CODEC; 
     161    if ( info.rate     == ROAR_AUDIO_INFO_INVALID ) info.rate     = ROAR_RDTCS_RATE; 
     162    if ( info.bits     == ROAR_AUDIO_INFO_INVALID ) info.bits     = ROAR_RDTCS_BITS; 
     163    if ( info.channels == ROAR_AUDIO_INFO_INVALID ) info.channels = ROAR_RDTCS_CHANNELS; 
     164    if ( info.codec    == ROAR_AUDIO_INFO_INVALID ) info.codec    = ROAR_RDTCS_CODEC; 
    164165   break; 
    165166  case ROAR_DIR_RAW_IN: 
    166167  default: 
    167     if ( rate     == -1 ) rate     = 0; 
    168     if ( bits     == -1 ) bits     = 0; 
    169     if ( channels == -1 ) channels = 0; 
    170     if ( codec    == -1 ) codec    = ROAR_CODEC_DEFAULT; 
     168    if ( info.rate     == ROAR_AUDIO_INFO_INVALID ) info.rate     = 0; 
     169    if ( info.bits     == ROAR_AUDIO_INFO_INVALID ) info.bits     = 0; 
     170    if ( info.channels == ROAR_AUDIO_INFO_INVALID ) info.channels = 0; 
     171    if ( info.codec    == ROAR_AUDIO_INFO_INVALID ) info.codec    = ROAR_CODEC_DEFAULT; 
    171172   break; 
    172173 } 
     
    177178 } 
    178179 
    179  if ( roar_stream_new(&s, rate, channels, bits, codec) == -1 ) { 
     180 if ( roar_stream_new(&s, info.rate, info.channels, info.bits, info.codec) == -1 ) { 
    180181  fprintf(stderr, "Error: can not create stream\n"); 
    181182  roar_disconnect(&con); 
Note: See TracChangeset for help on using the changeset viewer.