VirtualBox

Changeset 6056 in vbox for trunk/src/VBox/Devices/Audio


Ignore:
Timestamp:
Dec 12, 2007 10:58:26 PM (17 years ago)
Author:
vboxsync
Message:

first version of a PulseAudio driver backend for Linux (still no pcm_in)

Location:
trunk/src/VBox/Devices/Audio
Files:
4 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/VBox/Devices/Audio/alsaaudio.c

    r5077 r6056  
    179179        return SND_PCM_FORMAT_U16_LE;
    180180
     181    case AUD_FMT_S32:
     182        return SND_PCM_FORMAT_S32_LE;
     183
     184    case AUD_FMT_U32:
     185        return SND_PCM_FORMAT_U32_LE;
     186
    181187    default:
    182188        dolog ("Internal logic error: Bad audio format %d\n", fmt);
     
    219225        *endianness = 1;
    220226        *fmt = AUD_FMT_U16;
     227        break;
     228
     229    case SND_PCM_FORMAT_S32_LE:
     230        *endianness = 0;
     231        *fmt = AUD_FMT_S32;
     232        break;
     233
     234    case SND_PCM_FORMAT_U32_LE:
     235        *endianness = 0;
     236        *fmt = AUD_FMT_U32;
     237        break;
     238
     239    case SND_PCM_FORMAT_S32_BE:
     240        *endianness = 1;
     241        *fmt = AUD_FMT_S32;
     242        break;
     243
     244    case SND_PCM_FORMAT_U32_BE:
     245        *endianness = 1;
     246        *fmt = AUD_FMT_U32;
    221247        break;
    222248
  • trunk/src/VBox/Devices/Audio/audio.c

    r5754 r6056  
    6868    &alsa_audio_driver,
    6969#endif
     70#ifdef VBOX_WITH_PULSE
     71    &pulse_audio_driver,
     72#endif
    7073#endif
    7174#ifdef RT_OS_DARWIN
     
    258261        return "U16";
    259262
     263    case AUD_FMT_U32:
     264        return "U32";
     265
    260266    case AUD_FMT_S8:
    261267        return "S8";
     
    263269    case AUD_FMT_S16:
    264270        return "S16";
     271
     272    case AUD_FMT_S32:
     273        return "S32";
    265274    }
    266275
     
    280289        return AUD_FMT_U16;
    281290    }
     291    else if (!strcasecmp (s, "u32")) {
     292        *defaultp = 0;
     293        return AUD_FMT_U32;
     294    }
    282295    else if (!strcasecmp (s, "s8")) {
    283296        *defaultp = 0;
     
    287300        *defaultp = 0;
    288301        return AUD_FMT_S16;
     302    }
     303    else if (!strcasecmp (s, "s32")) {
     304        *defaultp = 0;
     305        return AUD_FMT_S32;
    289306    }
    290307    else {
     
    498515    case AUD_FMT_S16:
    499516    case AUD_FMT_U16:
     517    case AUD_FMT_S32:
     518    case AUD_FMT_U32:
    500519        break;
    501520    default:
     
    523542        bits = 16;
    524543        break;
     544
     545    case AUD_FMT_S32:
     546        sign = 1;
     547    case AUD_FMT_U32:
     548        bits = 32;
     549        break;
    525550    }
    526551    return info->freq == as->freq
     
    545570    case AUD_FMT_U16:
    546571        bits = 16;
     572        break;
     573
     574    case AUD_FMT_S32:
     575        sign = 1;
     576    case AUD_FMT_U32:
     577        bits = 32;
    547578        break;
    548579    }
  • trunk/src/VBox/Devices/Audio/audio.h

    r5076 r6056  
    3939    AUD_FMT_S8,
    4040    AUD_FMT_U16,
    41     AUD_FMT_S16
     41    AUD_FMT_S16,
     42    AUD_FMT_U32,
     43    AUD_FMT_S32
    4244} audfmt_e;
    4345
  • trunk/src/VBox/Devices/Audio/audio_int.h

    r5754 r6056  
    213213extern struct audio_driver fmod_audio_driver;
    214214extern struct audio_driver alsa_audio_driver;
     215extern struct audio_driver pulse_audio_driver;
    215216extern struct audio_driver coreaudio_audio_driver;
    216217extern struct audio_driver dsound_audio_driver;
Note: See TracChangeset for help on using the changeset viewer.

© 2024 Oracle Support Privacy / Do Not Sell My Info Terms of Use Trademark Policy Automated Access Etiquette