Module: wine Branch: master Commit: 8f31a253f0e88a15850e60f2f1f4e3331cec923f URL: https://gitlab.winehq.org/wine/wine/-/commit/8f31a253f0e88a15850e60f2f1f4e33...
Author: Davide Beatrici git@davidebeatrici.dev Date: Wed Apr 12 09:33:51 2023 +0200
winepulse: Export function to get AudioSessionWrapper object.
---
dlls/winepulse.drv/mmdevdrv.c | 18 ++++++++++++++++++ dlls/winepulse.drv/winepulse.drv.spec | 1 + 2 files changed, 19 insertions(+)
diff --git a/dlls/winepulse.drv/mmdevdrv.c b/dlls/winepulse.drv/mmdevdrv.c index 63f111dde46..b1c44fe56d5 100644 --- a/dlls/winepulse.drv/mmdevdrv.c +++ b/dlls/winepulse.drv/mmdevdrv.c @@ -2580,6 +2580,24 @@ HRESULT WINAPI AUDDRV_GetAudioSessionManager(IMMDevice *device, return S_OK; }
+HRESULT WINAPI AUDDRV_GetAudioSessionWrapper(const GUID *guid, IMMDevice *device, + AudioSessionWrapper **out) +{ + AudioSession *session; + + HRESULT hr = get_audio_session(guid, device, 0, &session); + if(FAILED(hr)) + return hr; + + *out = AudioSessionWrapper_Create(NULL); + if(!*out) + return E_OUTOFMEMORY; + + (*out)->session = session; + + return S_OK; +} + HRESULT WINAPI AUDDRV_GetPropValue(GUID *guid, const PROPERTYKEY *prop, PROPVARIANT *out) { struct get_prop_value_params params; diff --git a/dlls/winepulse.drv/winepulse.drv.spec b/dlls/winepulse.drv/winepulse.drv.spec index b822fd08353..02a14aabf7a 100644 --- a/dlls/winepulse.drv/winepulse.drv.spec +++ b/dlls/winepulse.drv/winepulse.drv.spec @@ -2,6 +2,7 @@ @ stdcall -private GetEndpointIDs(long ptr ptr ptr ptr) AUDDRV_GetEndpointIDs @ stdcall -private GetAudioEndpoint(ptr ptr ptr) AUDDRV_GetAudioEndpoint @ stdcall -private GetAudioSessionManager(ptr ptr) AUDDRV_GetAudioSessionManager +@ stdcall -private GetAudioSessionWrapper(ptr ptr ptr) AUDDRV_GetAudioSessionWrapper @ stdcall -private GetPropValue(ptr ptr ptr) AUDDRV_GetPropValue
# WinMM driver functions