Andrew Eikum : audioclient.idl: Declare IAudioClient2.

Alexandre Julliard julliard at winehq.org
Fri Oct 2 14:54:08 CDT 2020


Module: wine
Branch: master
Commit: afd143228b6383d242888a8aeb90c8bedc584c0e
URL:    https://source.winehq.org/git/wine.git/?a=commit;h=afd143228b6383d242888a8aeb90c8bedc584c0e

Author: Andrew Eikum <aeikum at codeweavers.com>
Date:   Thu Oct  1 14:31:17 2020 -0500

audioclient.idl: Declare IAudioClient2.

Signed-off-by: Andrew Eikum <aeikum at codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard at winehq.org>

---

 include/audioclient.idl | 40 ++++++++++++++++++++++++++++++++++++++++
 1 file changed, 40 insertions(+)

diff --git a/include/audioclient.idl b/include/audioclient.idl
index 0628444bef..4759f3ef46 100644
--- a/include/audioclient.idl
+++ b/include/audioclient.idl
@@ -111,6 +111,46 @@ interface IAudioClient : IUnknown
     );
 }
 
+typedef enum _AUDCLNT_STREAMOPTIONS
+{
+    AUDCLNT_STREAMOPTIONS_NONE = 0,
+    AUDCLNT_STREAMOPTIONS_RAW = 1,
+    AUDCLNT_STREAMOPTIONS_MATCH_FORMAT = 2,
+} AUDCLNT_STREAMOPTIONS;
+
+typedef struct _AudioClientProperties
+{
+    UINT32 cbSize;
+    BOOL bIsOffload;
+    AUDIO_STREAM_CATEGORY eCategory;
+    AUDCLNT_STREAMOPTIONS Options;
+} AudioClientProperties;
+
+[
+    local,
+    pointer_default(unique),
+    uuid(726778cd-f60a-4eda-82de-e47610cd78aa),
+    object,
+]
+interface IAudioClient2 : IAudioClient
+{
+    HRESULT IsOffloadCapable(
+        AUDIO_STREAM_CATEGORY category,
+        [out] BOOL *offload_capable
+    );
+
+    HRESULT SetClientProperties(
+        [in] const AudioClientProperties *prop
+    );
+
+    HRESULT GetBufferSizeLimits(
+        [in] const WAVEFORMATEX *format,
+        BOOL event_driven,
+        [out] REFERENCE_TIME *min_duration,
+        [out] REFERENCE_TIME *max_duration
+    );
+}
+
 [
     local,
     pointer_default(unique),




More information about the wine-cvs mailing list