Qt World Summit: Register Today!

QAudioOutput setVolume set global volume for application on Windows 8.1, Qt5.4-5.5

  • I create several QAudioOutput instances, and setVolume for each instance change global volume of application, not for QAudioOutput instance.

    This reproduces on Windows 8.1, Qt 5.4 or 5.5. On OSX not reproduces.

  • How to fix it?

  • Moderators

    Hi, welcome to devnet.

    I'm looking at the implementation and it seems to be a Qt bug specific to Windows platform. The volume control uses waveOutSetVolume. The docs say it takes a device identifier or device handle. The first one controls the volume of all device instances while the other just the instance identified by that handle. Qt seems to be using the wrong version across all its multimedia functions. A similar bug QTBUG-43765 has already been reported. You may want to vote for it and leave your comment there.

    Looking at it there's not much you can do in terms of a workaround until it gets fixed :(

  • Hi, I voted this issue, thanks.

Log in to reply