diff options
author | Liang Qi <liang.qi@qt.io> | 2016-05-10 19:26:21 +0200 |
---|---|---|
committer | Liang Qi <liang.qi@qt.io> | 2016-05-10 19:26:21 +0200 |
commit | 08e13bfcdb23eabfbc47bca7499b0b8aadce0ac7 (patch) | |
tree | 406ffa7e3ae0a346a14175ccccb8ac7e596d8f8f /src/plugins/coreaudio | |
parent | fa9fe9ff8c3aba25fbae4f8f32588dd6477d6df8 (diff) | |
parent | f0e0d5d901d4e28fff9f29caf86ada84906b3db4 (diff) |
Merge remote-tracking branch 'origin/5.6' into 5.7
Conflicts:
src/plugins/winrt/qwinrtcameracontrol.cpp
Change-Id: I45d3042adf19577a72794610fa1c310cb22e26c4
Diffstat (limited to 'src/plugins/coreaudio')
-rw-r--r-- | src/plugins/coreaudio/coreaudioinput.mm | 33 | ||||
-rw-r--r-- | src/plugins/coreaudio/coreaudiooutput.mm | 32 |
2 files changed, 11 insertions, 54 deletions
diff --git a/src/plugins/coreaudio/coreaudioinput.mm b/src/plugins/coreaudio/coreaudioinput.mm index 79e6742c2..f7d511d27 100644 --- a/src/plugins/coreaudio/coreaudioinput.mm +++ b/src/plugins/coreaudio/coreaudioinput.mm @@ -42,7 +42,7 @@ #include "coreaudioutils.h" #if defined(Q_OS_OSX) -# include <CoreServices/CoreServices.h> +# include <AudioUnit/AudioComponent.h> #endif #if defined(Q_OS_IOS) || defined(Q_OS_TVOS) @@ -486,31 +486,15 @@ bool CoreAudioInput::open() if (m_isOpen) return true; -#if defined(Q_OS_OSX) UInt32 size = 0; - ComponentDescription componentDescription; - componentDescription.componentType = kAudioUnitType_Output; - componentDescription.componentSubType = kAudioUnitSubType_HALOutput; - componentDescription.componentManufacturer = kAudioUnitManufacturer_Apple; - componentDescription.componentFlags = 0; - componentDescription.componentFlagsMask = 0; - - // Open - Component component = FindNextComponent(NULL, &componentDescription); - if (component == 0) { - qWarning() << "QAudioInput: Failed to find HAL Output component"; - return false; - } - - if (OpenAComponent(component, &m_audioUnit) != noErr) { - qWarning() << "QAudioInput: Unable to Open Output Component"; - return false; - } -#else //iOS AudioComponentDescription componentDescription; componentDescription.componentType = kAudioUnitType_Output; +#if defined(Q_OS_OSX) + componentDescription.componentSubType = kAudioUnitSubType_HALOutput; +#else componentDescription.componentSubType = kAudioUnitSubType_RemoteIO; +#endif componentDescription.componentManufacturer = kAudioUnitManufacturer_Apple; componentDescription.componentFlags = 0; componentDescription.componentFlagsMask = 0; @@ -525,7 +509,7 @@ bool CoreAudioInput::open() qWarning() << "QAudioInput: Unable to Open Output Component"; return false; } -#endif + // Set mode // switch to input mode UInt32 enable = 1; @@ -693,12 +677,7 @@ void CoreAudioInput::close() if (m_audioUnit != 0) { AudioOutputUnitStop(m_audioUnit); AudioUnitUninitialize(m_audioUnit); -#if defined(Q_OS_OSX) - CloseComponent(m_audioUnit); -#else //iOS AudioComponentInstanceDispose(m_audioUnit); -#endif - } delete m_audioBuffer; diff --git a/src/plugins/coreaudio/coreaudiooutput.mm b/src/plugins/coreaudio/coreaudiooutput.mm index dfac44c2d..900e34e16 100644 --- a/src/plugins/coreaudio/coreaudiooutput.mm +++ b/src/plugins/coreaudio/coreaudiooutput.mm @@ -48,7 +48,7 @@ #include <AudioUnit/AudioUnit.h> #include <AudioToolbox/AudioToolbox.h> #if defined(Q_OS_OSX) -# include <CoreServices/CoreServices.h> +# include <AudioUnit/AudioComponent.h> #endif #if defined(Q_OS_IOS) || defined(Q_OS_TVOS) @@ -549,30 +549,13 @@ bool CoreAudioOutput::open() if (m_isOpen) return true; -#if defined(Q_OS_OSX) - ComponentDescription componentDescription; - componentDescription.componentType = kAudioUnitType_Output; - componentDescription.componentSubType = kAudioUnitSubType_HALOutput; - componentDescription.componentManufacturer = kAudioUnitManufacturer_Apple; - componentDescription.componentFlags = 0; - componentDescription.componentFlagsMask = 0; - - // Open - Component component = FindNextComponent(NULL, &componentDescription); - if (component == 0) { - qWarning() << "QAudioOutput: Failed to find HAL Output component"; - return false; - } - - if (OpenAComponent(component, &m_audioUnit) != noErr) { - qWarning() << "QAudioOutput: Unable to Open Output Component"; - return false; - } -#else //iOS - AudioComponentDescription componentDescription; componentDescription.componentType = kAudioUnitType_Output; +#if defined(Q_OS_OSX) + componentDescription.componentSubType = kAudioUnitSubType_HALOutput; +#else componentDescription.componentSubType = kAudioUnitSubType_RemoteIO; +#endif componentDescription.componentManufacturer = kAudioUnitManufacturer_Apple; componentDescription.componentFlags = 0; componentDescription.componentFlagsMask = 0; @@ -587,7 +570,6 @@ bool CoreAudioOutput::open() qWarning() << "QAudioOutput: Unable to Open Output Component"; return false; } -#endif // register callback AURenderCallbackStruct callback; @@ -679,11 +661,7 @@ void CoreAudioOutput::close() if (m_audioUnit != 0) { AudioOutputUnitStop(m_audioUnit); AudioUnitUninitialize(m_audioUnit); -#if defined(Q_OS_OSX) - CloseComponent(m_audioUnit); -#else //iOS AudioComponentInstanceDispose(m_audioUnit); -#endif } delete m_audioBuffer; |