#define WIN32_LEAN_AND_MEAN
#include <stdarg.h>
+#include <math.h>
+
#include <windef.h>
-//#include "winbase.h"
-//#include "winuser.h"
#include <mmddk.h>
#include <wine/debug.h>
+
#include "mciqtz_private.h"
#include <digitalv.h>
#include <wownt32.h>
switch (lpParms->dwItem) {
case MCI_DGV_SETAUDIO_VOLUME:
if (dwFlags & MCI_DGV_SETAUDIO_VALUE) {
- long vol = -10000;
+ long vol;
HRESULT hr;
if (lpParms->dwValue > 1000) {
ret = MCIERR_OUTOFRANGE;
}
if (dwFlags & MCI_TEST)
break;
- vol += (long)lpParms->dwValue * 10;
+ if (lpParms->dwValue != 0)
+ vol = (long)(2000.0 * (log10(lpParms->dwValue) - 3.0));
+ else
+ vol = -10000;
+ TRACE("Setting volume to %ld\n", vol);
hr = IBasicAudio_put_Volume(wma->audio, vol);
if (FAILED(hr)) {
WARN("Cannot set volume (hr = %x)\n", hr);
reactos/dll/win32/mapi32 # Synced to WineStaging-1.9.11
reactos/dll/win32/mciavi32 # Synced to WineStaging-1.9.16
reactos/dll/win32/mcicda # Synced to WineStaging-1.9.16
-reactos/dll/win32/mciqtz32 # Synced to WineStaging-1.9.11
+reactos/dll/win32/mciqtz32 # Synced to WineStaging-1.9.16
reactos/dll/win32/mciseq # Synced to WineStaging-1.9.11
reactos/dll/win32/mciwave # Synced to WineStaging-1.9.11
reactos/dll/win32/mgmtapi # Synced to WineStaging-1.9.11