diff options
Diffstat (limited to 'src/multimedia/windows')
-rw-r--r-- | src/multimedia/windows/qwindowsmediadevices.cpp | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/src/multimedia/windows/qwindowsmediadevices.cpp b/src/multimedia/windows/qwindowsmediadevices.cpp index 9669496d6..1b1ad194c 100644 --- a/src/multimedia/windows/qwindowsmediadevices.cpp +++ b/src/multimedia/windows/qwindowsmediadevices.cpp @@ -291,8 +291,20 @@ QPlatformAudioSink *QWindowsMediaDevices::createAudioSink(const QAudioDevice &de return new QWindowsAudioSink(devInfo->immDev(), parent); } +static bool isPrepareAudioEnabled() +{ + static bool isDisableAudioPrepareSet = false; + static const int disableAudioPrepare = + qEnvironmentVariableIntValue("QT_DISABLE_AUDIO_PREPARE", &isDisableAudioPrepareSet); + + return !isDisableAudioPrepareSet || disableAudioPrepare == 0; +} + void QWindowsMediaDevices::prepareAudio() { + if (!isPrepareAudioEnabled()) + return; + if (m_isAudioClientWarmedUp.exchange(true)) return; |