Rémi Bernon : mmdevapi: Support new AUDCLNT_* creation flags.
Alexandre Julliard
julliard at winehq.org
Mon Jul 13 16:08:49 CDT 2020
Module: wine
Branch: master
Commit: 2e1934598d035b852bcceb8ef01eac181d8415ca
URL: https://source.winehq.org/git/wine.git/?a=commit;h=2e1934598d035b852bcceb8ef01eac181d8415ca
Author: Rémi Bernon <rbernon at codeweavers.com>
Date: Fri Jul 10 14:13:44 2020 -0500
mmdevapi: Support new AUDCLNT_* creation flags.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=25173
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=45700
Signed-off-by: Rémi Bernon <rbernon at codeweavers.com>
Signed-off-by: Andrew Eikum <aeikum at codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard at winehq.org>
---
dlls/winealsa.drv/mmdevdrv.c | 6 ++++--
dlls/wineandroid.drv/mmdevdrv.c | 6 ++++--
dlls/winecoreaudio.drv/mmdevdrv.c | 6 ++++--
dlls/wineoss.drv/mmdevdrv.c | 6 ++++--
dlls/winepulse.drv/mmdevdrv.c | 6 ++++--
include/audiosessiontypes.h | 2 ++
6 files changed, 22 insertions(+), 10 deletions(-)
diff --git a/dlls/winealsa.drv/mmdevdrv.c b/dlls/winealsa.drv/mmdevdrv.c
index 09f98dc7b8..714d6ab9b1 100644
--- a/dlls/winealsa.drv/mmdevdrv.c
+++ b/dlls/winealsa.drv/mmdevdrv.c
@@ -1264,8 +1264,10 @@ static HRESULT WINAPI AudioClient_Initialize(IAudioClient *iface,
AUDCLNT_STREAMFLAGS_RATEADJUST |
AUDCLNT_SESSIONFLAGS_EXPIREWHENUNOWNED |
AUDCLNT_SESSIONFLAGS_DISPLAY_HIDE |
- AUDCLNT_SESSIONFLAGS_DISPLAY_HIDEWHENEXPIRED)){
- TRACE("Unknown flags: %08x\n", flags);
+ AUDCLNT_SESSIONFLAGS_DISPLAY_HIDEWHENEXPIRED |
+ AUDCLNT_STREAMFLAGS_SRC_DEFAULT_QUALITY |
+ AUDCLNT_STREAMFLAGS_AUTOCONVERTPCM)){
+ FIXME("Unknown flags: %08x\n", flags);
return E_INVALIDARG;
}
diff --git a/dlls/wineandroid.drv/mmdevdrv.c b/dlls/wineandroid.drv/mmdevdrv.c
index b4d8564256..eac55f9e29 100644
--- a/dlls/wineandroid.drv/mmdevdrv.c
+++ b/dlls/wineandroid.drv/mmdevdrv.c
@@ -813,8 +813,10 @@ static HRESULT WINAPI AudioClient_Initialize(IAudioClient *iface,
AUDCLNT_STREAMFLAGS_RATEADJUST |
AUDCLNT_SESSIONFLAGS_EXPIREWHENUNOWNED |
AUDCLNT_SESSIONFLAGS_DISPLAY_HIDE |
- AUDCLNT_SESSIONFLAGS_DISPLAY_HIDEWHENEXPIRED)){
- TRACE("Unknown flags: %08x\n", flags);
+ AUDCLNT_SESSIONFLAGS_DISPLAY_HIDEWHENEXPIRED |
+ AUDCLNT_STREAMFLAGS_SRC_DEFAULT_QUALITY |
+ AUDCLNT_STREAMFLAGS_AUTOCONVERTPCM)){
+ FIXME("Unknown flags: %08x\n", flags);
return E_INVALIDARG;
}
diff --git a/dlls/winecoreaudio.drv/mmdevdrv.c b/dlls/winecoreaudio.drv/mmdevdrv.c
index acfa01c3d6..860d33fa3b 100644
--- a/dlls/winecoreaudio.drv/mmdevdrv.c
+++ b/dlls/winecoreaudio.drv/mmdevdrv.c
@@ -1323,8 +1323,10 @@ static HRESULT WINAPI AudioClient_Initialize(IAudioClient *iface,
AUDCLNT_STREAMFLAGS_RATEADJUST |
AUDCLNT_SESSIONFLAGS_EXPIREWHENUNOWNED |
AUDCLNT_SESSIONFLAGS_DISPLAY_HIDE |
- AUDCLNT_SESSIONFLAGS_DISPLAY_HIDEWHENEXPIRED)){
- TRACE("Unknown flags: %08x\n", flags);
+ AUDCLNT_SESSIONFLAGS_DISPLAY_HIDEWHENEXPIRED |
+ AUDCLNT_STREAMFLAGS_SRC_DEFAULT_QUALITY |
+ AUDCLNT_STREAMFLAGS_AUTOCONVERTPCM)){
+ FIXME("Unknown flags: %08x\n", flags);
return E_INVALIDARG;
}
diff --git a/dlls/wineoss.drv/mmdevdrv.c b/dlls/wineoss.drv/mmdevdrv.c
index a08e7f561b..0c97b85f3a 100644
--- a/dlls/wineoss.drv/mmdevdrv.c
+++ b/dlls/wineoss.drv/mmdevdrv.c
@@ -1055,8 +1055,10 @@ static HRESULT WINAPI AudioClient_Initialize(IAudioClient *iface,
AUDCLNT_STREAMFLAGS_RATEADJUST |
AUDCLNT_SESSIONFLAGS_EXPIREWHENUNOWNED |
AUDCLNT_SESSIONFLAGS_DISPLAY_HIDE |
- AUDCLNT_SESSIONFLAGS_DISPLAY_HIDEWHENEXPIRED)){
- TRACE("Unknown flags: %08x\n", flags);
+ AUDCLNT_SESSIONFLAGS_DISPLAY_HIDEWHENEXPIRED |
+ AUDCLNT_STREAMFLAGS_SRC_DEFAULT_QUALITY |
+ AUDCLNT_STREAMFLAGS_AUTOCONVERTPCM)){
+ FIXME("Unknown flags: %08x\n", flags);
return E_INVALIDARG;
}
diff --git a/dlls/winepulse.drv/mmdevdrv.c b/dlls/winepulse.drv/mmdevdrv.c
index 463d3d5a71..23c34a50f6 100644
--- a/dlls/winepulse.drv/mmdevdrv.c
+++ b/dlls/winepulse.drv/mmdevdrv.c
@@ -1590,8 +1590,10 @@ static HRESULT WINAPI AudioClient_Initialize(IAudioClient *iface,
AUDCLNT_STREAMFLAGS_RATEADJUST |
AUDCLNT_SESSIONFLAGS_EXPIREWHENUNOWNED |
AUDCLNT_SESSIONFLAGS_DISPLAY_HIDE |
- AUDCLNT_SESSIONFLAGS_DISPLAY_HIDEWHENEXPIRED)) {
- TRACE("Unknown flags: %08x\n", flags);
+ AUDCLNT_SESSIONFLAGS_DISPLAY_HIDEWHENEXPIRED |
+ AUDCLNT_STREAMFLAGS_SRC_DEFAULT_QUALITY |
+ AUDCLNT_STREAMFLAGS_AUTOCONVERTPCM)) {
+ FIXME("Unknown flags: %08x\n", flags);
return E_INVALIDARG;
}
diff --git a/include/audiosessiontypes.h b/include/audiosessiontypes.h
index 2f78574353..81c6526575 100644
--- a/include/audiosessiontypes.h
+++ b/include/audiosessiontypes.h
@@ -34,9 +34,11 @@ typedef enum _AUDCLNT_SHAREMODE
#define AUDCLNT_STREAMFLAGS_EVENTCALLBACK 0x00040000
#define AUDCLNT_STREAMFLAGS_NOPERSIST 0x00080000
#define AUDCLNT_STREAMFLAGS_RATEADJUST 0x00100000
+#define AUDCLNT_STREAMFLAGS_SRC_DEFAULT_QUALITY 0x08000000
#define AUDCLNT_SESSIONFLAGS_EXPIREWHENUNOWNED 0x10000000
#define AUDCLNT_SESSIONFLAGS_DISPLAY_HIDE 0x20000000
#define AUDCLNT_SESSIONFLAGS_DISPLAY_HIDEWHENEXPIRED 0x40000000
+#define AUDCLNT_STREAMFLAGS_AUTOCONVERTPCM 0x80000000
typedef enum _AudioSessionState
{
More information about the wine-cvs
mailing list