diff --git a/include/windows.media.effects.idl b/include/windows.media.effects.idl index f0f8cba0c83..395d98df67f 100644 --- a/include/windows.media.effects.idl +++ b/include/windows.media.effects.idl @@ -22,6 +22,9 @@ import "inspectable.idl"; import "windows.foundation.idl"; +import "windows.media.idl"; +import "windows.media.capture.idl"; +import "windows.media.render.idl"; import "windows.storage.streams.idl"; namespace Windows.Media.Effects { @@ -29,11 +32,13 @@ namespace Windows.Media.Effects { interface IAudioCaptureEffectsManager; interface IAudioEffect; + interface IAudioEffectsManagerStatics; interface IAudioRenderEffectsManager; interface IAudioRenderEffectsManager2; runtimeclass AudioCaptureEffectsManager; runtimeclass AudioEffect; + runtimeclass AudioEffectsManager; runtimeclass AudioRenderEffectsManager; declare { @@ -102,6 +107,41 @@ namespace Windows.Media.Effects { [propget] HRESULT AudioEffectType([out, retval] Windows.Media.Effects.AudioEffectType *value); } + [ + contract(Windows.Foundation.UniversalApiContract, 1.0), + exclusiveto(Windows.Media.Effects.AudioEffectsManager), + uuid(66406c04-86fa-47cc-a315-f489d8c3fe10) + ] + interface IAudioEffectsManagerStatics : IInspectable + { + [overload("CreateAudioRenderEffectsManager")] + HRESULT CreateAudioRenderEffectsManager( + [in] HSTRING device_id, + [in] Windows.Media.Render.AudioRenderCategory category, + [out, retval] Windows.Media.Effects.AudioRenderEffectsManager **value + ); + [overload("CreateAudioRenderEffectsManager")] + HRESULT CreateAudioRenderEffectsManagerWithMode( + [in] HSTRING device_id, + [in] Windows.Media.Render.AudioRenderCategory category, + [in] Windows.Media.AudioProcessing mode, + [out, retval] Windows.Media.Effects.AudioRenderEffectsManager **value + ); + [overload("CreateAudioCaptureEffectsManager")] + HRESULT CreateAudioCaptureEffectsManager( + [in] HSTRING device_id, + [in] Windows.Media.Capture.MediaCategory category, + [out, retval] Windows.Media.Effects.AudioCaptureEffectsManager **value + ); + [overload("CreateAudioCaptureEffectsManager")] + HRESULT CreateAudioCaptureEffectsManagerWithMode( + [in] HSTRING device_id, + [in] Windows.Media.Capture.MediaCategory category, + [in] Windows.Media.AudioProcessing mode, + [out, retval] Windows.Media.Effects.AudioCaptureEffectsManager **value + ); + } + [ contract(Windows.Foundation.UniversalApiContract, 1.0), exclusiveto(Windows.Media.Effects.AudioRenderEffectsManager), @@ -157,6 +197,16 @@ namespace Windows.Media.Effects { [default] interface Windows.Media.Effects.IAudioEffect; } + [ + contract(Windows.Foundation.UniversalApiContract, 1.0), + marshaling_behavior(agile), + static(Windows.Media.Effects.IAudioEffectsManagerStatics, Windows.Foundation.UniversalApiContract, 1.0), + threading(mta) + ] + runtimeclass AudioEffectsManager + { + } + [ contract(Windows.Foundation.UniversalApiContract, 1.0), marshaling_behavior(agile),