- Timestamp:
- Aug 14, 2016 11:53:40 PM (8 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/VBox/Devices/Audio/DrvHostCoreAudio.cpp
r63445 r63446 225 225 } 226 226 227 #if 0 /* unused */ 227 228 static AudioDeviceID coreAudioDeviceUIDtoID(const char* pszUID) 228 229 { … … 255 256 return kAudioDeviceUnknown; 256 257 } 258 #endif /* unused */ 259 257 260 258 261 /********************************************************************************************************************************* … … 413 416 * Internal Functions * 414 417 *********************************************************************************************************************************/ 415 static int coreAudioInitIn(PDRVHOSTCOREAUDIO pThis, PPDMAUDIOSTREAM pStream, PPDMAUDIOSTREAMCFG pCfgReq, PPDMAUDIOSTREAMCFG pCfgAcq); 416 static int coreAudioInitOut(PDRVHOSTCOREAUDIO pThis, PPDMAUDIOSTREAM pStream, PPDMAUDIOSTREAMCFG pCfgReq, PPDMAUDIOSTREAMCFG pCfgAcq); 417 static int coreAudioControlStreamIn(PDRVHOSTCOREAUDIO pThis, PPDMAUDIOSTREAM pStream, PDMAUDIOSTREAMCMD enmStreamCmd); 418 static int coreAudioControlStreamOut(PDRVHOSTCOREAUDIO pThis, PPDMAUDIOSTREAM pStream, PDMAUDIOSTREAMCMD enmStreamCmd); 419 static int coreAudioCreateStreamIn(PDRVHOSTCOREAUDIO pThis, PPDMAUDIOSTREAM pStream, PPDMAUDIOSTREAMCFG pCfgReq, PPDMAUDIOSTREAMCFG pCfgAcq); 420 static int coreAudioCreateStreamOut(PDRVHOSTCOREAUDIO pThis, PPDMAUDIOSTREAM pStream, PPDMAUDIOSTREAMCFG pCfgReq, PPDMAUDIOSTREAMCFG pCfgAcq); 421 static int coreAudioDestroyStreamIn(PDRVHOSTCOREAUDIO pThis, PPDMAUDIOSTREAM pStream); 422 static int coreAudioDestroyStreamOut(PDRVHOSTCOREAUDIO pThis, PPDMAUDIOSTREAM pStream); 423 424 static OSStatus coreAudioPlaybackAudioDevicePropertyChanged(AudioObjectID propertyID, UInt32 nAddresses, const AudioObjectPropertyAddress properties[], void *pvUser); 418 static OSStatus coreAudioPlaybackAudioDevicePropertyChanged(AudioObjectID propertyID, UInt32 cAddresses, const AudioObjectPropertyAddress properties[], void *pvUser); 425 419 static OSStatus coreAudioPlaybackCb(void *pvUser, AudioUnitRenderActionFlags *pActionFlags, const AudioTimeStamp *pAudioTS, UInt32 uBusID, UInt32 cFrames, AudioBufferList* pBufData); 426 420 … … 481 475 static int coreAudioDevicesEnumerate(PDRVHOSTCOREAUDIO pThis, PPDMAUDIOBACKENDCFG pCfg, bool fIn, uint32_t fEnum) 482 476 { 477 RT_NOREF(fEnum); 483 478 AssertPtrReturn(pThis, VERR_INVALID_POINTER); 484 479 /* pCfg is optional. */ … … 606 601 int coreAudioUpdateStatusInternalEx(PDRVHOSTCOREAUDIO pThis, PPDMAUDIOBACKENDCFG pCfg, uint32_t fEnum) 607 602 { 603 RT_NOREF(fEnum); 608 604 AssertPtrReturn(pThis, VERR_INVALID_POINTER); 609 605 /* pCfg is optional. */ … … 634 630 */ 635 631 static OSStatus drvHostCoreAudioDeviceStateChanged(AudioObjectID propertyID, 636 UInt32 nAddresses,637 const AudioObjectPropertyAddress p roperties[],632 UInt32 cAddresses, 633 const AudioObjectPropertyAddress paProperties[], 638 634 void *pvUser) 639 635 { 640 LogFlowFunc(("propertyID=%u nAddresses=%u pvUser=%p\n", propertyID, nAddresses, pvUser)); 636 RT_NOREF(paProperties) 637 LogFlowFunc(("propertyID=%u cAddresses=%u pvUser=%p\n", propertyID, cAddresses, pvUser)); 641 638 642 639 PCOREAUDIOSTREAMCBCTX pCbCtx = (PCOREAUDIOSTREAMCBCTX)pvUser; … … 711 708 */ 712 709 static OSStatus coreAudioDefaultDeviceChanged(AudioObjectID propertyID, 713 UInt32 nAddresses,710 UInt32 cAddresses, 714 711 const AudioObjectPropertyAddress properties[], 715 712 void *pvUser) … … 717 714 OSStatus err = noErr; 718 715 719 LogFlowFunc(("propertyID=%u nAddresses=%u pvUser=%p\n", propertyID, nAddresses, pvUser));716 LogFlowFunc(("propertyID=%u cAddresses=%u pvUser=%p\n", propertyID, cAddresses, pvUser)); 720 717 721 718 PCOREAUDIOSTREAMCBCTX pCbCtx = (PCOREAUDIOSTREAMCBCTX)pvUser; 722 719 AssertPtr(pCbCtx); 723 720 724 for (UInt32 idxAddress = 0; idxAddress < nAddresses; idxAddress++)721 for (UInt32 idxAddress = 0; idxAddress < cAddresses; idxAddress++) 725 722 { 726 723 const AudioObjectPropertyAddress *pProperty = &properties[idxAddress]; … … 805 802 */ 806 803 static OSStatus coreAudioRecordingAudioDevicePropertyChanged(AudioObjectID propertyID, 807 UInt32 cAd resses,808 const AudioObjectPropertyAddress aProperties[],804 UInt32 cAddresses, 805 const AudioObjectPropertyAddress paProperties[], 809 806 void *pvUser) 810 807 { 808 RT_NOREF(cAddresses, paProperties); 811 809 PCOREAUDIOSTREAMIN pStreamIn = (PCOREAUDIOSTREAMIN)pvUser; 812 810 … … 848 846 void *pvUser) 849 847 { 848 RT_NOREF(inAudioConverter, ppASPD); 850 849 AssertPtrReturn(ioNumberDataPackets, g_caConverterEOFDErr); 851 850 AssertPtrReturn(ioData, g_caConverterEOFDErr); … … 927 926 AudioBufferList *pBufData) 928 927 { 928 RT_NOREF(pBufData); 929 929 930 /* If nothing is pending return immediately. */ 930 931 if (cFrames == 0) … … 1894 1895 */ 1895 1896 static OSStatus coreAudioPlaybackAudioDevicePropertyChanged(AudioObjectID propertyID, 1896 UInt32 nAddresses,1897 const AudioObjectPropertyAddress p roperties[],1897 UInt32 cAddresses, 1898 const AudioObjectPropertyAddress paProperties[], 1898 1899 void *pvUser) 1899 1900 { 1901 RT_NOREF(propertyID, cAddresses, paProperties, pvUser) 1902 1900 1903 switch (propertyID) 1901 1904 { … … 1921 1924 AudioBufferList *pBufData) 1922 1925 { 1926 RT_NOREF(pActionFlags, pAudioTS, uBusID, cFrames); 1923 1927 PCOREAUDIOSTREAMOUT pStreamOut = (PCOREAUDIOSTREAMOUT)pvUser; 1924 PPDMAUDIOSTREAM pStream = &pStreamOut->Stream;1925 1928 1926 1929 if (ASMAtomicReadU32(&pStreamOut->status) != CA_STATUS_INIT) … … 2012 2015 /* pcbRead is optional. */ 2013 2016 2014 PPDMDRVINS pDrvIns = PDMIBASE_2_PDMDRV(pInterface);2015 PDRVHOSTCOREAUDIO pThis = PDMINS_2_DATA(pDrvIns, PDRVHOSTCOREAUDIO);2016 2017 2017 PCOREAUDIOSTREAMIN pStreamIn = (PCOREAUDIOSTREAMIN)pStream; 2018 2018 2019 /* unused, make you wonder why... 2019 2020 size_t csReads = 0; 2020 2021 char *pcSrc; 2021 PPDMAUDIOSAMPLE psDst; 2022 PPDMAUDIOSAMPLE psDst; */ 2022 2023 2023 2024 if (ASMAtomicReadU32(&pStreamIn->status) != CA_STATUS_INIT) … … 2117 2118 PDMAUDIO_IHOSTAUDIO_EMIT_STREAMPLAY(drvHostCoreAudio) 2118 2119 { 2120 RT_NOREF(pvBuf, cbBuf); /** @todo r=bird: this looks weird at first glance... */ 2121 2119 2122 AssertPtrReturn(pInterface, VERR_INVALID_POINTER); 2120 2123 AssertPtrReturn(pStream, VERR_INVALID_POINTER); 2121 2124 /* pcbWritten is optional. */ 2122 2125 2123 PPDMDRVINS pDrvIns = PDMIBASE_2_PDMDRV(pInterface);2124 PDRVHOSTCOREAUDIO pThis = PDMINS_2_DATA(pDrvIns, PDRVHOSTCOREAUDIO);2125 2126 2126 PCOREAUDIOSTREAMOUT pStreamOut = (PCOREAUDIOSTREAMOUT)pStream; 2127 2127 … … 2194 2194 } 2195 2195 2196 static int coreAudioControlStreamOut(P DRVHOSTCOREAUDIO pThis, PPDMAUDIOSTREAM pStream, PDMAUDIOSTREAMCMD enmStreamCmd)2196 static int coreAudioControlStreamOut(PPDMAUDIOSTREAM pStream, PDMAUDIOSTREAMCMD enmStreamCmd) 2197 2197 { 2198 2198 PCOREAUDIOSTREAMOUT pStreamOut = (PCOREAUDIOSTREAMOUT)pStream; … … 2269 2269 } 2270 2270 2271 static int coreAudioControlStreamIn(PDRVHOSTCOREAUDIO pThis, 2272 PPDMAUDIOSTREAM pStream, PDMAUDIOSTREAMCMD enmStreamCmd) 2271 static int coreAudioControlStreamIn(PPDMAUDIOSTREAM pStream, PDMAUDIOSTREAMCMD enmStreamCmd) 2273 2272 { 2274 2273 PCOREAUDIOSTREAMIN pStreamIn = (PCOREAUDIOSTREAMIN)pStream; … … 2341 2340 } 2342 2341 2343 static int coreAudioDestroyStreamIn(P DRVHOSTCOREAUDIO pThis, PPDMAUDIOSTREAM pStream)2342 static int coreAudioDestroyStreamIn(PPDMAUDIOSTREAM pStream) 2344 2343 { 2345 2344 PCOREAUDIOSTREAMIN pStreamIn = (PCOREAUDIOSTREAMIN)pStream; … … 2356 2355 OSStatus err = noErr; 2357 2356 2358 int rc = coreAudioControlStreamIn( pThis,&pStreamIn->Stream, PDMAUDIOSTREAMCMD_DISABLE);2357 int rc = coreAudioControlStreamIn(&pStreamIn->Stream, PDMAUDIOSTREAMCMD_DISABLE); 2359 2358 if (RT_SUCCESS(rc)) 2360 2359 { … … 2460 2459 } 2461 2460 2462 static int coreAudioDestroyStreamOut(P DRVHOSTCOREAUDIO pThis, PPDMAUDIOSTREAM pStream)2461 static int coreAudioDestroyStreamOut(PPDMAUDIOSTREAM pStream) 2463 2462 { 2464 2463 PCOREAUDIOSTREAMOUT pStreamOut = (PCOREAUDIOSTREAMOUT)pStream; … … 2473 2472 } 2474 2473 2475 int rc = coreAudioControlStreamOut( pThis,&pStreamOut->Stream, PDMAUDIOSTREAMCMD_DISABLE);2474 int rc = coreAudioControlStreamOut(&pStreamOut->Stream, PDMAUDIOSTREAMCMD_DISABLE); 2476 2475 if (RT_SUCCESS(rc)) 2477 2476 { … … 2755 2754 PDMAUDIO_IHOSTAUDIO_EMIT_GETSTATUS(drvHostCoreAudio) 2756 2755 { 2756 RT_NOREF(enmDir); 2757 2757 AssertPtrReturn(pInterface, PDMAUDIOBACKENDSTS_UNKNOWN); 2758 2758 … … 2793 2793 AssertPtrReturn(pStream, VERR_INVALID_POINTER); 2794 2794 2795 PPDMDRVINS pDrvIns = PDMIBASE_2_PDMDRV(pInterface);2796 PDRVHOSTCOREAUDIO pThis = PDMINS_2_DATA(pDrvIns, PDRVHOSTCOREAUDIO);2797 2798 2795 int rc; 2799 2796 if (pStream->enmDir == PDMAUDIODIR_IN) 2800 rc = coreAudioDestroyStreamIn(p This, pStream);2797 rc = coreAudioDestroyStreamIn(pStream); 2801 2798 else 2802 rc = coreAudioDestroyStreamOut(p This, pStream);2799 rc = coreAudioDestroyStreamOut(pStream); 2803 2800 2804 2801 return rc; … … 2816 2813 Assert(pStream->enmCtx == PDMAUDIOSTREAMCTX_HOST); 2817 2814 2818 PPDMDRVINS pDrvIns = PDMIBASE_2_PDMDRV(pInterface);2819 PDRVHOSTCOREAUDIO pThis = PDMINS_2_DATA(pDrvIns, PDRVHOSTCOREAUDIO);2820 2821 2815 int rc; 2822 2816 if (pStream->enmDir == PDMAUDIODIR_IN) 2823 rc = coreAudioControlStreamIn(p This, pStream, enmStreamCmd);2817 rc = coreAudioControlStreamIn(pStream, enmStreamCmd); 2824 2818 else 2825 rc = coreAudioControlStreamOut(p This, pStream, enmStreamCmd);2819 rc = coreAudioControlStreamOut(pStream, enmStreamCmd); 2826 2820 2827 2821 return rc;
Note:
See TracChangeset
for help on using the changeset viewer.

