VirtualBox

Changeset 1551 in vbox for trunk/src


Ignore:
Timestamp:
Mar 17, 2007 1:09:30 AM (18 years ago)
Author:
vboxsync
Message:

Mac OS X audio support (only playback).

Location:
trunk/src/VBox
Files:
11 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/VBox/Devices/Audio/DevIchAc97.cpp

    r814 r1551  
    16831683     *       select the noaudio driver instead.
    16841684     */
     1685#ifndef __DARWIN__ /* coreaudio doesn't supply these. */
    16851686    if (!pData->ac97.voice_pi)
    16861687        LogRel(("AC97: WARNING: Unable to open PCM IN!\n"));
     1688    if (!pData->ac97.voice_mc)
     1689        LogRel(("AC97: WARNING: Unable to open PCM MC!\n"));
     1690#endif
    16871691    if (!pData->ac97.voice_po)
    16881692        LogRel(("AC97: WARNING: Unable to open PCM OUT!\n"));
    1689     if (!pData->ac97.voice_mc)
    1690         LogRel(("AC97: WARNING: Unable to open PCM MC!\n"));
    1691 
    1692     /** @todo r=bird: add a devhlp for this of course! */
     1693
     1694#ifdef __DARWIN__ /* coreaudio doesn't supply all, only bitch if we don't get anything. */
     1695    if (!pData->ac97.voice_pi && !pData->ac97.voice_po && !pData->ac97.voice_mc)
     1696#else
    16931697    if (!pData->ac97.voice_pi || !pData->ac97.voice_po || !pData->ac97.voice_mc)
     1698#endif
    16941699        VMSetRuntimeError(PDMDevHlpGetVM(pDevIns), false,
    16951700                          "HostAudioNotResponding",
  • trunk/src/VBox/Devices/Audio/audio.c

    r1071 r1551  
    6868    &alsa_audio_driver,
    6969#endif
     70#endif
     71#ifdef __DARWIN__
     72    &coreaudio_audio_driver,
    7073#endif
    7174#ifdef __WIN__
  • trunk/src/VBox/Devices/Makefile

    r1488 r1551  
    9898VBoxDD_LIBS.os2         = \
    9999        $(PATH_BIN)/VBoxDD2.dll
    100 VBoxDD_LDFLAGS.darwin   = -install_name @executable_path/VBoxDD.dylib
     100VBoxDD_LDFLAGS.darwin   = -install_name @executable_path/VBoxDD.dylib -framework CoreAudio
    101101VBoxDD_LDFLAGS.linux    = -Wl,--no-undefined
    102102VBoxDD_LDFLAGS.l4       = -Wl,--no-undefined
     
    353353Drivers_SOURCES      := $(filter-out \
    354354        Storage/DrvHost% \
    355         , $(Drivers_SOURCES))
     355        , $(Drivers_SOURCES)) \
     356        Audio/coreaudio.c
    356357Drivers_SOURCES.darwin =
    357358endif # darwin
     
    408409
    409410ifdef VBOX_WITH_ISCSI
    410 Drivers_SOURCES       += \
     411 Drivers_SOURCES      += \
    411412        Storage/DrvISCSI.cpp \
    412413        Storage/DrvISCSITransportTCP.cpp
    413 Drivers_DEFS          += VBOX_WITH_ISCSI
     414 Drivers_DEFS         += VBOX_WITH_ISCSI
    414415endif # VBOX_WITH_ISCSI
    415416
    416417ifdef VBOX_WITH_ALSA
    417 Drivers_DEFS          += VBOX_WITH_ALSA
    418 Drivers_SOURCES.linux += \
     418 Drivers_DEFS.linux   += VBOX_WITH_ALSA
     419 Drivers_SOURCES.linux+= \
    419420        Audio/alsaaudio.c
    420 VBoxDD_LIBS.linux     += asound
     421 VBoxDD_LIBS.linux    += asound
    421422endif
    422423
    423424ifdef VBOX_WITH_USB
    424 Drivers_DEFS          += VBOX_WITH_USB IN_USB_R3
    425 Drivers_SOURCES       += \
     425 Drivers_DEFS         += VBOX_WITH_USB IN_USB_R3
     426 Drivers_SOURCES      += \
    426427        USB/DrvVUSBRootHub.cpp \
    427428        USB/VUSBDevice.cpp \
    428429        USB/VUSBUrb.cpp
    429 ifdef VBOX_WITH_VRDP
    430 Drivers_SOURCES       += \
     430 ifdef VBOX_WITH_VRDP
     431  Drivers_SOURCES     += \
    431432        USB/vrdp/USBProxyDevice-vrdp.cpp
    432 endif
    433 
    434 Drivers_DEFS.linux    += VUSB_HAVE_USBPROXY_DEVICE
    435 ifdef VBOX_WITHOUT_LINUX_COMPILER_H
    436 Drivers_DEFS          += VBOX_WITHOUT_LINUX_COMPILER_H
    437 endif
    438 Drivers_SOURCES.linux += \
     433 endif
     434
     435 Drivers_DEFS.linux   += VUSB_HAVE_USBPROXY_DEVICE
     436 ifdef VBOX_WITHOUT_LINUX_COMPILER_H
     437  Drivers_DEFS.linux  += VBOX_WITHOUT_LINUX_COMPILER_H
     438 endif
     439 Drivers_SOURCES.linux+= \
    439440        USB/USBProxyDevice.cpp \
    440441        USB/linux/USBProxyDevice-linux.cpp
    441442
    442 Drivers_DEFS.l4       += VUSB_HAVE_USBPROXY_DEVICE
    443 Drivers_SOURCES.l4    += \
     443 Drivers_DEFS.l4      += VUSB_HAVE_USBPROXY_DEVICE
     444 Drivers_SOURCES.l4   += \
    444445        USB/USBProxyDevice.cpp \
    445446        USB/linux/USBProxyDevice-linux.cpp
    446447
    447 Drivers_DEFS.win      += VUSB_HAVE_USBPROXY_DEVICE
    448 Drivers_SOURCES.win   += \
     448 Drivers_DEFS.win     += VUSB_HAVE_USBPROXY_DEVICE
     449 Drivers_SOURCES.win  += \
    449450        USB/USBProxyDevice.cpp \
    450451        USB/win32/USBProxyDevice-win32.cpp \
  • trunk/src/VBox/Frontends/VBoxManage/VBoxManage.cpp

    r1475 r1551  
    222222#else
    223223    bool fWin = false;
     224#endif
     225#ifdef __DARWIN__
     226    bool fDarwin = true;
     227#else
     228    bool fDarwin = false;
    224229#endif
    225230#ifdef VBOX_VRDP
     
    315320        }
    316321        RTPrintf("                            [-audio none|null");
     322        if (fWin)
     323        {
     324            RTPrintf(                        "|winmm|dsound");
     325        }
    317326        if (fLinux)
    318327        {
     
    323332                                             );
    324333        }
    325         if (fWin)
    326         {
    327             RTPrintf(                        "|winmm|dsound");
     334        if (fDarwin)
     335        {
     336            RTPrintf(                        "|coreaudio");
    328337        }
    329338        RTPrintf(                            "]\n");
     
    10001009                case  AudioDriverType_OSSAudioDriver:    psz = "OSS"; break;
    10011010                case  AudioDriverType_ALSAAudioDriver:   psz = "ALSA"; break;
     1011                case  AudioDriverType_CoreAudioDriver:   psz = "CoreAudio"; break;
    10021012                default: ; break;
    10031013            }
     
    35903600                CHECK_ERROR(audioAdapter, COMSETTER(Enabled)(true));
    35913601            }
     3602#ifdef __WIN__
     3603            else if (strcmp(audio, "winmm") == 0)
     3604            {
     3605                CHECK_ERROR(audioAdapter, COMSETTER(AudioDriver)(AudioDriverType_WINMMAudioDriver));
     3606                CHECK_ERROR(audioAdapter, COMSETTER(Enabled)(true));
     3607            }
     3608            else if (strcmp(audio, "dsound") == 0)
     3609            {
     3610                CHECK_ERROR(audioAdapter, COMSETTER(AudioDriver)(AudioDriverType_DSOUNDAudioDriver));
     3611                CHECK_ERROR(audioAdapter, COMSETTER(Enabled)(true));
     3612            }
     3613#endif /* __WIN__ */
    35923614#ifdef __LINUX__
    35933615            else if (strcmp(audio, "oss") == 0)
     
    35963618                CHECK_ERROR(audioAdapter, COMSETTER(Enabled)(true));
    35973619            }
    3598 #ifdef VBOX_WITH_ALSA
     3620# ifdef VBOX_WITH_ALSA
    35993621            else if (strcmp(audio, "alsa") == 0)
    36003622            {
     
    36023624                CHECK_ERROR(audioAdapter, COMSETTER(Enabled)(true));
    36033625            }
    3604 #endif
    3605 #else /* !__LINUX__ */
    3606             else if (strcmp(audio, "winmm") == 0)
    3607             {
    3608                 CHECK_ERROR(audioAdapter, COMSETTER(AudioDriver)(AudioDriverType_WINMMAudioDriver));
     3626# endif
     3627#endif /* !__LINUX__ */
     3628#ifdef __DARWIN__
     3629            else if (strcmp(audio, "coreaudio") == 0)
     3630            {
     3631                CHECK_ERROR(audioAdapter, COMSETTER(AudioDriver)(AudioDriverType_CoreAudioDriver));
    36093632                CHECK_ERROR(audioAdapter, COMSETTER(Enabled)(true));
    36103633            }
    3611             else if (strcmp(audio, "dsound") == 0)
    3612             {
    3613                 CHECK_ERROR(audioAdapter, COMSETTER(AudioDriver)(AudioDriverType_DSOUNDAudioDriver));
    3614                 CHECK_ERROR(audioAdapter, COMSETTER(Enabled)(true));
    3615             }
    3616 #endif /* !__LINUX__ */
     3634#endif /* !__DARWIN__ */
    36173635            else
    36183636            {
  • trunk/src/VBox/Frontends/VirtualBox/src/VBoxGlobal.cpp

    r1469 r1551  
    15401540    audioDriverTypes [CEnums::DSOUNDAudioDriver] =
    15411541        tr ("Windows DirectSound", "AudioDriverType");
     1542    audioDriverTypes [CEnums::CoreAudioDriver] =
     1543        tr ("CoreAudio", "AudioDriverType");
    15421544
    15431545    networkAttachmentTypes [CEnums::NoNetworkAttachment] =
  • trunk/src/VBox/Frontends/VirtualBox/ui/VBoxVMSettingsDlg.ui.h

    r1455 r1551  
    708708    cbAudioDriver->insertItem (vboxGlobal().toString (CEnums::WINMMAudioDriver));
    709709#endif
    710 #elif defined Q_WS_X11
     710#elif defined Q_OS_LINUX
    711711    cbAudioDriver->insertItem (vboxGlobal().toString (CEnums::OSSAudioDriver));
    712712#ifdef VBOX_WITH_ALSA
    713713    cbAudioDriver->insertItem (vboxGlobal().toString (CEnums::ALSAAudioDriver));
    714714#endif
     715#elif defined Q_OS_MACX
     716    cbAudioDriver->insertItem (vboxGlobal().toString (CEnums::CoreAudioDriver));
    715717#endif
    716718
  • trunk/src/VBox/Main/AudioAdapterImpl.cpp

    r1071 r1551  
    218218        {
    219219            case AudioDriverType_NullAudioDriver:
     220#ifdef __WIN__
     221#ifdef VBOX_WITH_WINMM
     222            case AudioDriverType_WINMMAudioDriver:
     223#endif
     224            case AudioDriverType_DSOUNDAudioDriver:
     225#endif /* __WIN__ */
     226#ifdef __LINUX__
     227            case AudioDriverType_OSSAudioDriver:
     228#ifdef VBOX_WITH_ALSA
     229            case AudioDriverType_ALSAAudioDriver:
     230#endif
     231#endif /* __LINUX__ */
     232#ifdef __DARWIN__
     233            case AudioDriverType_CoreAudioDriver:
     234#endif
    220235            {
    221236                mData.backup();
     
    224239            }
    225240
    226 #ifdef __WIN__
    227 #ifdef VBOX_WITH_WINMM
    228             case AudioDriverType_WINMMAudioDriver:
    229             {
    230                 mData.backup();
    231                 mData->mAudioDriver = audioDriver;
    232                 break;
    233             }
    234 #endif
    235             case AudioDriverType_DSOUNDAudioDriver:
    236             {
    237                 mData.backup();
    238                 mData->mAudioDriver = audioDriver;
    239                 break;
    240             }
    241 #endif /* __WIN__ */
    242 
    243 #ifdef __LINUX__
    244             case AudioDriverType_OSSAudioDriver:
    245             {
    246                 mData.backup();
    247                 mData->mAudioDriver = audioDriver;
    248                 break;
    249             }
    250 #ifdef VBOX_WITH_ALSA
    251             case AudioDriverType_ALSAAudioDriver:
    252             {
    253                 mData.backup();
    254                 mData->mAudioDriver = audioDriver;
    255                 break;
    256             }
    257 #endif
    258 #endif /* __LINUX__ */
    259241            default:
    260242            {
  • trunk/src/VBox/Main/ConsoleImpl.cpp

    r1397 r1551  
    53215321                break;
    53225322            }
    5323 #ifdef VBOX_WITH_ALSA
     5323# ifdef VBOX_WITH_ALSA
    53245324            case AudioDriverType_ALSAAudioDriver:
    53255325            {
     
    53275327                break;
    53285328            }
    5329 #endif
     5329# endif
    53305330#endif /* __LINUX__ */
     5331#ifdef __DARWIN__
     5332            case AudioDriverType_CoreAudioDriver:
     5333            {
     5334                rc = CFGMR3InsertString(pCfg, "AudioDriver", "coreaudio");              RC_CHECK();
     5335                break;
     5336            }
     5337#endif
    53315338        }
    53325339    }
  • trunk/src/VBox/Main/MachineImpl.cpp

    r1490 r1551  
    39493949#endif
    39503950#endif // __LINUX__
     3951#ifdef __DARWIN__
     3952        else if (driver == L"coreaudio")
     3953            audioDriver = AudioDriverType_CoreAudioDriver;
     3954#endif
    39513955        else
    39523956            AssertMsgFailed (("Invalid driver: %ls\n", driver.raw()));
     
    57275731            }
    57285732#endif /* __WIN__ */
     5733#ifdef __LINUX__
    57295734            case AudioDriverType_ALSAAudioDriver:
    57305735#ifdef VBOX_WITH_ALSA
     
    57345739            }
    57355740#endif
    5736 #ifdef __LINUX__
    57375741            case AudioDriverType_OSSAudioDriver:
    57385742            {
     
    57415745            }
    57425746#endif /* __LINUX__ */
     5747#ifdef __DARWIN__
     5748            case AudioDriverType_CoreAudioDriver:
     5749            {
     5750                CFGLDRSetString (adapterNode, "driver", "coreaudio");
     5751                break;
     5752            }
     5753#endif
    57435754            default:
    57445755                ComAssertMsgFailedBreak (("Wrong audio driver type! driver = %d\n",
  • trunk/src/VBox/Main/idl/VirtualBox.xidl

    r1471 r1551  
    69096909        <const name="ALSAAudioDriver"   value="3"/>
    69106910        <const name="DSOUNDAudioDriver" value="4"/>
     6911        <const name="CoreAudioDriver"   value="5"/>
    69116912    </enum>
    69126913
  • trunk/src/VBox/Main/xml/VirtualBox-settings-macosx.xsd

    r632 r1551  
    9696      <xsd:restriction base="xsd:token">
    9797        <xsd:enumeration value="null"/>
     98        <xsd:enumeration value="coreaudio"/>
    9899      </xsd:restriction>
    99100    </xsd:simpleType>
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