Changeset 3408:c2995580c30a in roaraudio


Ignore:
Timestamp:
02/11/10 16:59:39 (10 years ago)
Author:
phi
Branch:
default
Message:

added roar_pa_auinfo2sspec()

Files:
2 edited

Legend:

Unmodified
Added
Removed
  • include/libroarpulse/libroarpulse.h

    r3406 r3408  
    5252 
    5353int roar_pa_sspec2auinfo (struct roar_audio_info * info, const pa_sample_spec * ss); 
     54int roar_pa_auinfo2sspec (pa_sample_spec * ss, const struct roar_audio_info * info); 
    5455 
    5556char * roar_pa_find_server (char * server); 
  • libroarpulse/libroarpulse.c

    r3388 r3408  
    7676  case PA_SAMPLE_FLOAT32LE: 
    7777  case PA_SAMPLE_FLOAT32BE: 
     78  default: 
     79    return -1; 
     80   break; 
     81 } 
     82 
     83 return 0; 
     84} 
     85 
     86int roar_pa_auinfo2sspec (pa_sample_spec * ss, const struct roar_audio_info * info) { 
     87 if ( ss == NULL || info == NULL ) 
     88  return -1; 
     89 
     90 ss->rate       = info->rate; 
     91 ss->channels   = info->channels; 
     92 
     93 switch (info->codec) { 
     94  case ROAR_CODEC_ALAW: 
     95    ss->format = PA_SAMPLE_ALAW; 
     96   break; 
     97  case ROAR_CODEC_MULAW: 
     98    ss->format = PA_SAMPLE_ULAW; 
     99   break; 
     100  case ROAR_CODEC_PCM_S_LE: 
     101    if ( info->bits != 16 ) 
     102     return -1; 
     103    ss->format = PA_SAMPLE_S16LE; 
     104   break; 
     105  case ROAR_CODEC_PCM_S_BE: 
     106    if ( info->bits != 16 ) 
     107     return -1; 
     108    ss->format = PA_SAMPLE_S16BE; 
     109   break; 
     110  case ROAR_CODEC_PCM_U_LE: 
     111  case ROAR_CODEC_PCM_U_BE: 
     112  case ROAR_CODEC_PCM_U_PDP: 
     113    if ( info->bits != 8 ) 
     114     return -1; 
     115    ss->format = PA_SAMPLE_U8; 
     116   break; 
     117  default: 
    78118    return -1; 
    79119   break; 
Note: See TracChangeset for help on using the changeset viewer.