diff --git a/src/multimedia/audio/qaudiooutput_win32_p.cpp b/src/multimedia/audio/qaudiooutput_win32_p.cpp
index 4d13d43496c8bcf88459387a43c36c4276e3bce2..286cecba7e0598117c37606a80bd9d4a23db8ace 100644
--- a/src/multimedia/audio/qaudiooutput_win32_p.cpp
+++ b/src/multimedia/audio/qaudiooutput_win32_p.cpp
@@ -702,7 +702,7 @@ void QAudioOutputPrivate::setVolume(qreal v)
         volumeCache = normalizedVolume;
         return;
     }
-    const qint16 scaled = normalizedVolume * 0xFFFF;
+    const quint16 scaled = normalizedVolume * 0xFFFF;
     DWORD vol = MAKELONG(scaled, scaled);
     MMRESULT res = waveOutSetVolume(hWaveOut, vol);
     if (res == MMSYSERR_NOERROR)