// WARNING: Please don't edit this file. It was generated by C++/WinRT v2.0.240405.15 #pragma once #ifndef WINRT_Windows_Media_Effects_0_H #define WINRT_Windows_Media_Effects_0_H WINRT_EXPORT namespace winrt::Windows::Foundation { struct EventRegistrationToken; struct Rect; struct Size; template struct WINRT_IMPL_EMPTY_BASES TypedEventHandler; } WINRT_EXPORT namespace winrt::Windows::Foundation::Collections { struct IPropertySet; } WINRT_EXPORT namespace winrt::Windows::Foundation::Numerics { } WINRT_EXPORT namespace winrt::Windows::Graphics::DirectX::Direct3D11 { struct IDirect3DDevice; struct IDirect3DSurface; } WINRT_EXPORT namespace winrt::Windows::Media { struct AudioFrame; enum class AudioProcessing : int32_t; struct VideoFrame; } WINRT_EXPORT namespace winrt::Windows::Media::Capture { enum class MediaCategory : int32_t; } WINRT_EXPORT namespace winrt::Windows::Media::Editing { struct MediaOverlay; } WINRT_EXPORT namespace winrt::Windows::Media::MediaProperties { struct AudioEncodingProperties; enum class MediaMirroringOptions : uint32_t; enum class MediaRotation : int32_t; enum class SphericalVideoFrameFormat : int32_t; struct VideoEncodingProperties; } WINRT_EXPORT namespace winrt::Windows::Media::Playback { enum class SphericalVideoProjectionMode : int32_t; } WINRT_EXPORT namespace winrt::Windows::Media::Render { enum class AudioRenderCategory : int32_t; } WINRT_EXPORT namespace winrt::Windows::Media::Transcoding { enum class MediaVideoProcessingAlgorithm : int32_t; } WINRT_EXPORT namespace winrt::Windows::Storage::Streams { struct IRandomAccessStreamWithContentType; } WINRT_EXPORT namespace winrt::Windows::UI { struct Color; } WINRT_EXPORT namespace winrt::Windows::Media::Effects { enum class AudioEffectState : int32_t { Off = 0, On = 1, }; enum class AudioEffectType : int32_t { Other = 0, AcousticEchoCancellation = 1, NoiseSuppression = 2, AutomaticGainControl = 3, BeamForming = 4, ConstantToneRemoval = 5, Equalizer = 6, LoudnessEqualizer = 7, BassBoost = 8, VirtualSurround = 9, VirtualHeadphones = 10, SpeakerFill = 11, RoomCorrection = 12, BassManagement = 13, EnvironmentalEffects = 14, SpeakerProtection = 15, SpeakerCompensation = 16, DynamicRangeCompression = 17, FarFieldBeamForming = 18, DeepNoiseSuppression = 19, }; enum class MediaEffectClosedReason : int32_t { Done = 0, UnknownError = 1, UnsupportedEncodingFormat = 2, EffectCurrentlyUnloaded = 3, }; enum class MediaMemoryTypes : int32_t { Gpu = 0, Cpu = 1, GpuAndCpu = 2, }; struct IAcousticEchoCancellationConfiguration; struct IAudioCaptureEffectsManager; struct IAudioEffect; struct IAudioEffect2; struct IAudioEffectDefinition; struct IAudioEffectDefinitionFactory; struct IAudioEffectsManagerStatics; struct IAudioRenderEffectsManager; struct IAudioRenderEffectsManager2; struct IBasicAudioEffect; struct IBasicVideoEffect; struct ICompositeVideoFrameContext; struct IProcessAudioFrameContext; struct IProcessVideoFrameContext; struct IVideoCompositor; struct IVideoCompositorDefinition; struct IVideoCompositorDefinitionFactory; struct IVideoEffectDefinition; struct IVideoEffectDefinitionFactory; struct IVideoTransformEffectDefinition; struct IVideoTransformEffectDefinition2; struct IVideoTransformSphericalProjection; struct AcousticEchoCancellationConfiguration; struct AudioCaptureEffectsManager; struct AudioEffect; struct AudioEffectDefinition; struct AudioEffectsManager; struct AudioRenderEffectsManager; struct CompositeVideoFrameContext; struct ProcessAudioFrameContext; struct ProcessVideoFrameContext; struct VideoCompositorDefinition; struct VideoEffectDefinition; struct VideoTransformEffectDefinition; struct VideoTransformSphericalProjection; } namespace winrt::impl { template <> struct category{ using type = interface_category; }; template <> struct category{ using type = interface_category; }; template <> struct category{ using type = interface_category; }; template <> struct category{ using type = interface_category; }; template <> struct category{ using type = interface_category; }; template <> struct category{ using type = interface_category; }; template <> struct category{ using type = interface_category; }; template <> struct category{ using type = interface_category; }; template <> struct category{ using type = interface_category; }; template <> struct category{ using type = interface_category; }; template <> struct category{ using type = interface_category; }; template <> struct category{ using type = interface_category; }; template <> struct category{ using type = interface_category; }; template <> struct category{ using type = interface_category; }; template <> struct category{ using type = interface_category; }; template <> struct category{ using type = interface_category; }; template <> struct category{ using type = interface_category; }; template <> struct category{ using type = interface_category; }; template <> struct category{ using type = interface_category; }; template <> struct category{ using type = interface_category; }; template <> struct category{ using type = interface_category; }; template <> struct category{ using type = interface_category; }; template <> struct category{ using type = class_category; }; template <> struct category{ using type = class_category; }; template <> struct category{ using type = class_category; }; template <> struct category{ using type = class_category; }; template <> struct category{ using type = class_category; }; template <> struct category{ using type = class_category; }; template <> struct category{ using type = class_category; }; template <> struct category{ using type = class_category; }; template <> struct category{ using type = class_category; }; template <> struct category{ using type = class_category; }; template <> struct category{ using type = class_category; }; template <> struct category{ using type = class_category; }; template <> struct category{ using type = class_category; }; template <> struct category{ using type = enum_category; }; template <> struct category{ using type = enum_category; }; template <> struct category{ using type = enum_category; }; template <> struct category{ using type = enum_category; }; template <> inline constexpr auto& name_v = L"Windows.Media.Effects.AcousticEchoCancellationConfiguration"; template <> inline constexpr auto& name_v = L"Windows.Media.Effects.AudioCaptureEffectsManager"; template <> inline constexpr auto& name_v = L"Windows.Media.Effects.AudioEffect"; template <> inline constexpr auto& name_v = L"Windows.Media.Effects.AudioEffectDefinition"; template <> inline constexpr auto& name_v = L"Windows.Media.Effects.AudioEffectsManager"; template <> inline constexpr auto& name_v = L"Windows.Media.Effects.AudioRenderEffectsManager"; template <> inline constexpr auto& name_v = L"Windows.Media.Effects.CompositeVideoFrameContext"; template <> inline constexpr auto& name_v = L"Windows.Media.Effects.ProcessAudioFrameContext"; template <> inline constexpr auto& name_v = L"Windows.Media.Effects.ProcessVideoFrameContext"; template <> inline constexpr auto& name_v = L"Windows.Media.Effects.VideoCompositorDefinition"; template <> inline constexpr auto& name_v = L"Windows.Media.Effects.VideoEffectDefinition"; template <> inline constexpr auto& name_v = L"Windows.Media.Effects.VideoTransformEffectDefinition"; template <> inline constexpr auto& name_v = L"Windows.Media.Effects.VideoTransformSphericalProjection"; template <> inline constexpr auto& name_v = L"Windows.Media.Effects.AudioEffectState"; template <> inline constexpr auto& name_v = L"Windows.Media.Effects.AudioEffectType"; template <> inline constexpr auto& name_v = L"Windows.Media.Effects.MediaEffectClosedReason"; template <> inline constexpr auto& name_v = L"Windows.Media.Effects.MediaMemoryTypes"; template <> inline constexpr auto& name_v = L"Windows.Media.Effects.IAcousticEchoCancellationConfiguration"; template <> inline constexpr auto& name_v = L"Windows.Media.Effects.IAudioCaptureEffectsManager"; template <> inline constexpr auto& name_v = L"Windows.Media.Effects.IAudioEffect"; template <> inline constexpr auto& name_v = L"Windows.Media.Effects.IAudioEffect2"; template <> inline constexpr auto& name_v = L"Windows.Media.Effects.IAudioEffectDefinition"; template <> inline constexpr auto& name_v = L"Windows.Media.Effects.IAudioEffectDefinitionFactory"; template <> inline constexpr auto& name_v = L"Windows.Media.Effects.IAudioEffectsManagerStatics"; template <> inline constexpr auto& name_v = L"Windows.Media.Effects.IAudioRenderEffectsManager"; template <> inline constexpr auto& name_v = L"Windows.Media.Effects.IAudioRenderEffectsManager2"; template <> inline constexpr auto& name_v = L"Windows.Media.Effects.IBasicAudioEffect"; template <> inline constexpr auto& name_v = L"Windows.Media.Effects.IBasicVideoEffect"; template <> inline constexpr auto& name_v = L"Windows.Media.Effects.ICompositeVideoFrameContext"; template <> inline constexpr auto& name_v = L"Windows.Media.Effects.IProcessAudioFrameContext"; template <> inline constexpr auto& name_v = L"Windows.Media.Effects.IProcessVideoFrameContext"; template <> inline constexpr auto& name_v = L"Windows.Media.Effects.IVideoCompositor"; template <> inline constexpr auto& name_v = L"Windows.Media.Effects.IVideoCompositorDefinition"; template <> inline constexpr auto& name_v = L"Windows.Media.Effects.IVideoCompositorDefinitionFactory"; template <> inline constexpr auto& name_v = L"Windows.Media.Effects.IVideoEffectDefinition"; template <> inline constexpr auto& name_v = L"Windows.Media.Effects.IVideoEffectDefinitionFactory"; template <> inline constexpr auto& name_v = L"Windows.Media.Effects.IVideoTransformEffectDefinition"; template <> inline constexpr auto& name_v = L"Windows.Media.Effects.IVideoTransformEffectDefinition2"; template <> inline constexpr auto& name_v = L"Windows.Media.Effects.IVideoTransformSphericalProjection"; template <> inline constexpr guid guid_v{ 0x587E735B,0x175B,0x5177,{ 0xA4,0x07,0x2E,0x33,0xBA,0xFE,0x33,0xA5 } }; // 587E735B-175B-5177-A407-2E33BAFE33A5 template <> inline constexpr guid guid_v{ 0x8F85C271,0x038D,0x4393,{ 0x82,0x98,0x54,0x01,0x10,0x60,0x8E,0xEF } }; // 8F85C271-038D-4393-8298-540110608EEF template <> inline constexpr guid guid_v{ 0x34AAFA51,0x9207,0x4055,{ 0xBE,0x93,0x6E,0x57,0x34,0xA8,0x6A,0xE4 } }; // 34AAFA51-9207-4055-BE93-6E5734A86AE4 template <> inline constexpr guid guid_v{ 0x06703CB0,0x757E,0x5757,{ 0x8A,0xF0,0x6B,0xA5,0x8A,0x8B,0x29,0x90 } }; // 06703CB0-757E-5757-8AF0-6BA58A8B2990 template <> inline constexpr guid guid_v{ 0xE4D7F974,0x7D80,0x4F73,{ 0x90,0x89,0xE3,0x1C,0x9D,0xB9,0xC2,0x94 } }; // E4D7F974-7D80-4F73-9089-E31C9DB9C294 template <> inline constexpr guid guid_v{ 0x8E1DA646,0xE705,0x45ED,{ 0x8A,0x2B,0xFC,0x4E,0x4F,0x40,0x5A,0x97 } }; // 8E1DA646-E705-45ED-8A2B-FC4E4F405A97 template <> inline constexpr guid guid_v{ 0x66406C04,0x86FA,0x47CC,{ 0xA3,0x15,0xF4,0x89,0xD8,0xC3,0xFE,0x10 } }; // 66406C04-86FA-47CC-A315-F489D8C3FE10 template <> inline constexpr guid guid_v{ 0x4DC98966,0x8751,0x42B2,{ 0xBF,0xCB,0x39,0xCA,0x78,0x64,0xBD,0x47 } }; // 4DC98966-8751-42B2-BFCB-39CA7864BD47 template <> inline constexpr guid guid_v{ 0xA844CD09,0x5ECC,0x44B3,{ 0xBB,0x4E,0x1D,0xB0,0x72,0x87,0x13,0x9C } }; // A844CD09-5ECC-44B3-BB4E-1DB07287139C template <> inline constexpr guid guid_v{ 0x8C062C53,0x6BC0,0x48B8,{ 0xA9,0x9A,0x4B,0x41,0x55,0x0F,0x13,0x59 } }; // 8C062C53-6BC0-48B8-A99A-4B41550F1359 template <> inline constexpr guid guid_v{ 0x8262C7EF,0xB360,0x40BE,{ 0x94,0x9B,0x2F,0xF4,0x2F,0xF3,0x56,0x93 } }; // 8262C7EF-B360-40BE-949B-2FF42FF35693 template <> inline constexpr guid guid_v{ 0x6C30024B,0xF514,0x4278,{ 0xA5,0xF7,0xB9,0x18,0x80,0x49,0xD1,0x10 } }; // 6C30024B-F514-4278-A5F7-B9188049D110 template <> inline constexpr guid guid_v{ 0x4CD92946,0x1222,0x4A27,{ 0xA5,0x86,0xFB,0x3E,0x20,0x27,0x32,0x55 } }; // 4CD92946-1222-4A27-A586-FB3E20273255 template <> inline constexpr guid guid_v{ 0x276F0E2B,0x6461,0x401E,{ 0xBA,0x78,0x0F,0xDA,0xD6,0x11,0x4E,0xEC } }; // 276F0E2B-6461-401E-BA78-0FDAD6114EEC template <> inline constexpr guid guid_v{ 0x8510B43E,0x420C,0x420F,{ 0x96,0xC7,0x7C,0x98,0xBB,0xA1,0xFC,0x55 } }; // 8510B43E-420C-420F-96C7-7C98BBA1FC55 template <> inline constexpr guid guid_v{ 0x7946B8D0,0x2010,0x4AE3,{ 0x9A,0xB2,0x2C,0xEF,0x42,0xED,0xD4,0xD2 } }; // 7946B8D0-2010-4AE3-9AB2-2CEF42EDD4D2 template <> inline constexpr guid guid_v{ 0x4366FD10,0x68B8,0x4D52,{ 0x89,0xB6,0x02,0xA9,0x68,0xCC,0xA8,0x99 } }; // 4366FD10-68B8-4D52-89B6-02A968CCA899 template <> inline constexpr guid guid_v{ 0x39F38CF0,0x8D0F,0x4F3E,{ 0x84,0xFC,0x2D,0x46,0xA5,0x29,0x79,0x43 } }; // 39F38CF0-8D0F-4F3E-84FC-2D46A5297943 template <> inline constexpr guid guid_v{ 0x81439B4E,0x6E33,0x428F,{ 0x9D,0x21,0xB5,0xAA,0xFE,0xF7,0x61,0x7C } }; // 81439B4E-6E33-428F-9D21-B5AAFEF7617C template <> inline constexpr guid guid_v{ 0x9664BB6A,0x1EA6,0x4AA6,{ 0x80,0x74,0xAB,0xE8,0x85,0x1E,0xCA,0xE2 } }; // 9664BB6A-1EA6-4AA6-8074-ABE8851ECAE2 template <> inline constexpr guid guid_v{ 0xF0A8089F,0x66C8,0x4694,{ 0x9F,0xD9,0x11,0x36,0xAB,0xF7,0x44,0x4A } }; // F0A8089F-66C8-4694-9FD9-1136ABF7444A template <> inline constexpr guid guid_v{ 0xCF4401F0,0x9BF2,0x4C39,{ 0x9F,0x41,0xE0,0x22,0x51,0x4A,0x84,0x68 } }; // CF4401F0-9BF2-4C39-9F41-E022514A8468 template <> struct default_interface{ using type = winrt::Windows::Media::Effects::IAcousticEchoCancellationConfiguration; }; template <> struct default_interface{ using type = winrt::Windows::Media::Effects::IAudioCaptureEffectsManager; }; template <> struct default_interface{ using type = winrt::Windows::Media::Effects::IAudioEffect; }; template <> struct default_interface{ using type = winrt::Windows::Media::Effects::IAudioEffectDefinition; }; template <> struct default_interface{ using type = winrt::Windows::Media::Effects::IAudioRenderEffectsManager; }; template <> struct default_interface{ using type = winrt::Windows::Media::Effects::ICompositeVideoFrameContext; }; template <> struct default_interface{ using type = winrt::Windows::Media::Effects::IProcessAudioFrameContext; }; template <> struct default_interface{ using type = winrt::Windows::Media::Effects::IProcessVideoFrameContext; }; template <> struct default_interface{ using type = winrt::Windows::Media::Effects::IVideoCompositorDefinition; }; template <> struct default_interface{ using type = winrt::Windows::Media::Effects::IVideoEffectDefinition; }; template <> struct default_interface{ using type = winrt::Windows::Media::Effects::IVideoEffectDefinition; }; template <> struct default_interface{ using type = winrt::Windows::Media::Effects::IVideoTransformSphericalProjection; }; template <> struct abi { struct WINRT_IMPL_NOVTABLE type : inspectable_abi { virtual int32_t __stdcall SetEchoCancellationRenderEndpoint(void*) noexcept = 0; }; }; template <> struct abi { struct WINRT_IMPL_NOVTABLE type : inspectable_abi { virtual int32_t __stdcall add_AudioCaptureEffectsChanged(void*, winrt::event_token*) noexcept = 0; virtual int32_t __stdcall remove_AudioCaptureEffectsChanged(winrt::event_token) noexcept = 0; virtual int32_t __stdcall GetAudioCaptureEffects(void**) noexcept = 0; }; }; template <> struct abi { struct WINRT_IMPL_NOVTABLE type : inspectable_abi { virtual int32_t __stdcall get_AudioEffectType(int32_t*) noexcept = 0; }; }; template <> struct abi { struct WINRT_IMPL_NOVTABLE type : inspectable_abi { virtual int32_t __stdcall get_AcousticEchoCancellationConfiguration(void**) noexcept = 0; virtual int32_t __stdcall get_CanSetState(bool*) noexcept = 0; virtual int32_t __stdcall get_State(int32_t*) noexcept = 0; virtual int32_t __stdcall SetState(int32_t) noexcept = 0; }; }; template <> struct abi { struct WINRT_IMPL_NOVTABLE type : inspectable_abi { virtual int32_t __stdcall get_ActivatableClassId(void**) noexcept = 0; virtual int32_t __stdcall get_Properties(void**) noexcept = 0; }; }; template <> struct abi { struct WINRT_IMPL_NOVTABLE type : inspectable_abi { virtual int32_t __stdcall Create(void*, void**) noexcept = 0; virtual int32_t __stdcall CreateWithProperties(void*, void*, void**) noexcept = 0; }; }; template <> struct abi { struct WINRT_IMPL_NOVTABLE type : inspectable_abi { virtual int32_t __stdcall CreateAudioRenderEffectsManager(void*, int32_t, void**) noexcept = 0; virtual int32_t __stdcall CreateAudioRenderEffectsManagerWithMode(void*, int32_t, int32_t, void**) noexcept = 0; virtual int32_t __stdcall CreateAudioCaptureEffectsManager(void*, int32_t, void**) noexcept = 0; virtual int32_t __stdcall CreateAudioCaptureEffectsManagerWithMode(void*, int32_t, int32_t, void**) noexcept = 0; }; }; template <> struct abi { struct WINRT_IMPL_NOVTABLE type : inspectable_abi { virtual int32_t __stdcall add_AudioRenderEffectsChanged(void*, winrt::event_token*) noexcept = 0; virtual int32_t __stdcall remove_AudioRenderEffectsChanged(winrt::event_token) noexcept = 0; virtual int32_t __stdcall GetAudioRenderEffects(void**) noexcept = 0; }; }; template <> struct abi { struct WINRT_IMPL_NOVTABLE type : inspectable_abi { virtual int32_t __stdcall get_EffectsProviderThumbnail(void**) noexcept = 0; virtual int32_t __stdcall get_EffectsProviderSettingsLabel(void**) noexcept = 0; virtual int32_t __stdcall ShowSettingsUI() noexcept = 0; }; }; template <> struct abi { struct WINRT_IMPL_NOVTABLE type : inspectable_abi { virtual int32_t __stdcall get_UseInputFrameForOutput(bool*) noexcept = 0; virtual int32_t __stdcall get_SupportedEncodingProperties(void**) noexcept = 0; virtual int32_t __stdcall SetEncodingProperties(void*) noexcept = 0; virtual int32_t __stdcall ProcessFrame(void*) noexcept = 0; virtual int32_t __stdcall Close(int32_t) noexcept = 0; virtual int32_t __stdcall DiscardQueuedFrames() noexcept = 0; }; }; template <> struct abi { struct WINRT_IMPL_NOVTABLE type : inspectable_abi { virtual int32_t __stdcall get_IsReadOnly(bool*) noexcept = 0; virtual int32_t __stdcall get_SupportedMemoryTypes(int32_t*) noexcept = 0; virtual int32_t __stdcall get_TimeIndependent(bool*) noexcept = 0; virtual int32_t __stdcall get_SupportedEncodingProperties(void**) noexcept = 0; virtual int32_t __stdcall SetEncodingProperties(void*, void*) noexcept = 0; virtual int32_t __stdcall ProcessFrame(void*) noexcept = 0; virtual int32_t __stdcall Close(int32_t) noexcept = 0; virtual int32_t __stdcall DiscardQueuedFrames() noexcept = 0; }; }; template <> struct abi { struct WINRT_IMPL_NOVTABLE type : inspectable_abi { virtual int32_t __stdcall get_SurfacesToOverlay(void**) noexcept = 0; virtual int32_t __stdcall get_BackgroundFrame(void**) noexcept = 0; virtual int32_t __stdcall get_OutputFrame(void**) noexcept = 0; virtual int32_t __stdcall GetOverlayForSurface(void*, void**) noexcept = 0; }; }; template <> struct abi { struct WINRT_IMPL_NOVTABLE type : inspectable_abi { virtual int32_t __stdcall get_InputFrame(void**) noexcept = 0; virtual int32_t __stdcall get_OutputFrame(void**) noexcept = 0; }; }; template <> struct abi { struct WINRT_IMPL_NOVTABLE type : inspectable_abi { virtual int32_t __stdcall get_InputFrame(void**) noexcept = 0; virtual int32_t __stdcall get_OutputFrame(void**) noexcept = 0; }; }; template <> struct abi { struct WINRT_IMPL_NOVTABLE type : inspectable_abi { virtual int32_t __stdcall get_TimeIndependent(bool*) noexcept = 0; virtual int32_t __stdcall SetEncodingProperties(void*, void*) noexcept = 0; virtual int32_t __stdcall CompositeFrame(void*) noexcept = 0; virtual int32_t __stdcall Close(int32_t) noexcept = 0; virtual int32_t __stdcall DiscardQueuedFrames() noexcept = 0; }; }; template <> struct abi { struct WINRT_IMPL_NOVTABLE type : inspectable_abi { virtual int32_t __stdcall get_ActivatableClassId(void**) noexcept = 0; virtual int32_t __stdcall get_Properties(void**) noexcept = 0; }; }; template <> struct abi { struct WINRT_IMPL_NOVTABLE type : inspectable_abi { virtual int32_t __stdcall Create(void*, void**) noexcept = 0; virtual int32_t __stdcall CreateWithProperties(void*, void*, void**) noexcept = 0; }; }; template <> struct abi { struct WINRT_IMPL_NOVTABLE type : inspectable_abi { virtual int32_t __stdcall get_ActivatableClassId(void**) noexcept = 0; virtual int32_t __stdcall get_Properties(void**) noexcept = 0; }; }; template <> struct abi { struct WINRT_IMPL_NOVTABLE type : inspectable_abi { virtual int32_t __stdcall Create(void*, void**) noexcept = 0; virtual int32_t __stdcall CreateWithProperties(void*, void*, void**) noexcept = 0; }; }; template <> struct abi { struct WINRT_IMPL_NOVTABLE type : inspectable_abi { virtual int32_t __stdcall get_PaddingColor(struct struct_Windows_UI_Color*) noexcept = 0; virtual int32_t __stdcall put_PaddingColor(struct struct_Windows_UI_Color) noexcept = 0; virtual int32_t __stdcall get_OutputSize(winrt::Windows::Foundation::Size*) noexcept = 0; virtual int32_t __stdcall put_OutputSize(winrt::Windows::Foundation::Size) noexcept = 0; virtual int32_t __stdcall get_CropRectangle(winrt::Windows::Foundation::Rect*) noexcept = 0; virtual int32_t __stdcall put_CropRectangle(winrt::Windows::Foundation::Rect) noexcept = 0; virtual int32_t __stdcall get_Rotation(int32_t*) noexcept = 0; virtual int32_t __stdcall put_Rotation(int32_t) noexcept = 0; virtual int32_t __stdcall get_Mirror(uint32_t*) noexcept = 0; virtual int32_t __stdcall put_Mirror(uint32_t) noexcept = 0; virtual int32_t __stdcall put_ProcessingAlgorithm(int32_t) noexcept = 0; virtual int32_t __stdcall get_ProcessingAlgorithm(int32_t*) noexcept = 0; }; }; template <> struct abi { struct WINRT_IMPL_NOVTABLE type : inspectable_abi { virtual int32_t __stdcall get_SphericalProjection(void**) noexcept = 0; }; }; template <> struct abi { struct WINRT_IMPL_NOVTABLE type : inspectable_abi { virtual int32_t __stdcall get_IsEnabled(bool*) noexcept = 0; virtual int32_t __stdcall put_IsEnabled(bool) noexcept = 0; virtual int32_t __stdcall get_FrameFormat(int32_t*) noexcept = 0; virtual int32_t __stdcall put_FrameFormat(int32_t) noexcept = 0; virtual int32_t __stdcall get_ProjectionMode(int32_t*) noexcept = 0; virtual int32_t __stdcall put_ProjectionMode(int32_t) noexcept = 0; virtual int32_t __stdcall get_HorizontalFieldOfViewInDegrees(double*) noexcept = 0; virtual int32_t __stdcall put_HorizontalFieldOfViewInDegrees(double) noexcept = 0; virtual int32_t __stdcall get_ViewOrientation(winrt::Windows::Foundation::Numerics::quaternion*) noexcept = 0; virtual int32_t __stdcall put_ViewOrientation(winrt::Windows::Foundation::Numerics::quaternion) noexcept = 0; }; }; template struct consume_Windows_Media_Effects_IAcousticEchoCancellationConfiguration { auto SetEchoCancellationRenderEndpoint(param::hstring const& deviceId) const; }; template <> struct consume { template using type = consume_Windows_Media_Effects_IAcousticEchoCancellationConfiguration; }; template struct consume_Windows_Media_Effects_IAudioCaptureEffectsManager { auto AudioCaptureEffectsChanged(winrt::Windows::Foundation::TypedEventHandler const& handler) const; using AudioCaptureEffectsChanged_revoker = impl::event_revoker::remove_AudioCaptureEffectsChanged>; [[nodiscard]] auto AudioCaptureEffectsChanged(auto_revoke_t, winrt::Windows::Foundation::TypedEventHandler const& handler) const; auto AudioCaptureEffectsChanged(winrt::event_token const& token) const noexcept; auto GetAudioCaptureEffects() const; }; template <> struct consume { template using type = consume_Windows_Media_Effects_IAudioCaptureEffectsManager; }; template struct consume_Windows_Media_Effects_IAudioEffect { [[nodiscard]] auto AudioEffectType() const; }; template <> struct consume { template using type = consume_Windows_Media_Effects_IAudioEffect; }; template struct consume_Windows_Media_Effects_IAudioEffect2 { [[nodiscard]] auto AcousticEchoCancellationConfiguration() const; [[nodiscard]] auto CanSetState() const; [[nodiscard]] auto State() const; auto SetState(winrt::Windows::Media::Effects::AudioEffectState const& newState) const; }; template <> struct consume { template using type = consume_Windows_Media_Effects_IAudioEffect2; }; template struct consume_Windows_Media_Effects_IAudioEffectDefinition { [[nodiscard]] auto ActivatableClassId() const; [[nodiscard]] auto Properties() const; }; template <> struct consume { template using type = consume_Windows_Media_Effects_IAudioEffectDefinition; }; template struct consume_Windows_Media_Effects_IAudioEffectDefinitionFactory { auto Create(param::hstring const& activatableClassId) const; auto CreateWithProperties(param::hstring const& activatableClassId, winrt::Windows::Foundation::Collections::IPropertySet const& props) const; }; template <> struct consume { template using type = consume_Windows_Media_Effects_IAudioEffectDefinitionFactory; }; template struct consume_Windows_Media_Effects_IAudioEffectsManagerStatics { auto CreateAudioRenderEffectsManager(param::hstring const& deviceId, winrt::Windows::Media::Render::AudioRenderCategory const& category) const; auto CreateAudioRenderEffectsManager(param::hstring const& deviceId, winrt::Windows::Media::Render::AudioRenderCategory const& category, winrt::Windows::Media::AudioProcessing const& mode) const; auto CreateAudioCaptureEffectsManager(param::hstring const& deviceId, winrt::Windows::Media::Capture::MediaCategory const& category) const; auto CreateAudioCaptureEffectsManager(param::hstring const& deviceId, winrt::Windows::Media::Capture::MediaCategory const& category, winrt::Windows::Media::AudioProcessing const& mode) const; }; template <> struct consume { template using type = consume_Windows_Media_Effects_IAudioEffectsManagerStatics; }; template struct consume_Windows_Media_Effects_IAudioRenderEffectsManager { auto AudioRenderEffectsChanged(winrt::Windows::Foundation::TypedEventHandler const& handler) const; using AudioRenderEffectsChanged_revoker = impl::event_revoker::remove_AudioRenderEffectsChanged>; [[nodiscard]] auto AudioRenderEffectsChanged(auto_revoke_t, winrt::Windows::Foundation::TypedEventHandler const& handler) const; auto AudioRenderEffectsChanged(winrt::event_token const& token) const noexcept; auto GetAudioRenderEffects() const; }; template <> struct consume { template using type = consume_Windows_Media_Effects_IAudioRenderEffectsManager; }; template struct consume_Windows_Media_Effects_IAudioRenderEffectsManager2 { [[nodiscard]] auto EffectsProviderThumbnail() const; [[nodiscard]] auto EffectsProviderSettingsLabel() const; auto ShowSettingsUI() const; }; template <> struct consume { template using type = consume_Windows_Media_Effects_IAudioRenderEffectsManager2; }; template struct consume_Windows_Media_Effects_IBasicAudioEffect { [[nodiscard]] auto UseInputFrameForOutput() const; [[nodiscard]] auto SupportedEncodingProperties() const; auto SetEncodingProperties(winrt::Windows::Media::MediaProperties::AudioEncodingProperties const& encodingProperties) const; auto ProcessFrame(winrt::Windows::Media::Effects::ProcessAudioFrameContext const& context) const; auto Close(winrt::Windows::Media::Effects::MediaEffectClosedReason const& reason) const; auto DiscardQueuedFrames() const; }; template <> struct consume { template using type = consume_Windows_Media_Effects_IBasicAudioEffect; }; template struct consume_Windows_Media_Effects_IBasicVideoEffect { [[nodiscard]] auto IsReadOnly() const; [[nodiscard]] auto SupportedMemoryTypes() const; [[nodiscard]] auto TimeIndependent() const; [[nodiscard]] auto SupportedEncodingProperties() const; auto SetEncodingProperties(winrt::Windows::Media::MediaProperties::VideoEncodingProperties const& encodingProperties, winrt::Windows::Graphics::DirectX::Direct3D11::IDirect3DDevice const& device) const; auto ProcessFrame(winrt::Windows::Media::Effects::ProcessVideoFrameContext const& context) const; auto Close(winrt::Windows::Media::Effects::MediaEffectClosedReason const& reason) const; auto DiscardQueuedFrames() const; }; template <> struct consume { template using type = consume_Windows_Media_Effects_IBasicVideoEffect; }; template struct consume_Windows_Media_Effects_ICompositeVideoFrameContext { [[nodiscard]] auto SurfacesToOverlay() const; [[nodiscard]] auto BackgroundFrame() const; [[nodiscard]] auto OutputFrame() const; auto GetOverlayForSurface(winrt::Windows::Graphics::DirectX::Direct3D11::IDirect3DSurface const& surfaceToOverlay) const; }; template <> struct consume { template using type = consume_Windows_Media_Effects_ICompositeVideoFrameContext; }; template struct consume_Windows_Media_Effects_IProcessAudioFrameContext { [[nodiscard]] auto InputFrame() const; [[nodiscard]] auto OutputFrame() const; }; template <> struct consume { template using type = consume_Windows_Media_Effects_IProcessAudioFrameContext; }; template struct consume_Windows_Media_Effects_IProcessVideoFrameContext { [[nodiscard]] auto InputFrame() const; [[nodiscard]] auto OutputFrame() const; }; template <> struct consume { template using type = consume_Windows_Media_Effects_IProcessVideoFrameContext; }; template struct consume_Windows_Media_Effects_IVideoCompositor { [[nodiscard]] auto TimeIndependent() const; auto SetEncodingProperties(winrt::Windows::Media::MediaProperties::VideoEncodingProperties const& backgroundProperties, winrt::Windows::Graphics::DirectX::Direct3D11::IDirect3DDevice const& device) const; auto CompositeFrame(winrt::Windows::Media::Effects::CompositeVideoFrameContext const& context) const; auto Close(winrt::Windows::Media::Effects::MediaEffectClosedReason const& reason) const; auto DiscardQueuedFrames() const; }; template <> struct consume { template using type = consume_Windows_Media_Effects_IVideoCompositor; }; template struct consume_Windows_Media_Effects_IVideoCompositorDefinition { [[nodiscard]] auto ActivatableClassId() const; [[nodiscard]] auto Properties() const; }; template <> struct consume { template using type = consume_Windows_Media_Effects_IVideoCompositorDefinition; }; template struct consume_Windows_Media_Effects_IVideoCompositorDefinitionFactory { auto Create(param::hstring const& activatableClassId) const; auto CreateWithProperties(param::hstring const& activatableClassId, winrt::Windows::Foundation::Collections::IPropertySet const& props) const; }; template <> struct consume { template using type = consume_Windows_Media_Effects_IVideoCompositorDefinitionFactory; }; template struct consume_Windows_Media_Effects_IVideoEffectDefinition { [[nodiscard]] auto ActivatableClassId() const; [[nodiscard]] auto Properties() const; }; template <> struct consume { template using type = consume_Windows_Media_Effects_IVideoEffectDefinition; }; template struct consume_Windows_Media_Effects_IVideoEffectDefinitionFactory { auto Create(param::hstring const& activatableClassId) const; auto CreateWithProperties(param::hstring const& activatableClassId, winrt::Windows::Foundation::Collections::IPropertySet const& props) const; }; template <> struct consume { template using type = consume_Windows_Media_Effects_IVideoEffectDefinitionFactory; }; template struct consume_Windows_Media_Effects_IVideoTransformEffectDefinition { [[nodiscard]] auto PaddingColor() const; auto PaddingColor(winrt::Windows::UI::Color const& value) const; [[nodiscard]] auto OutputSize() const; auto OutputSize(winrt::Windows::Foundation::Size const& value) const; [[nodiscard]] auto CropRectangle() const; auto CropRectangle(winrt::Windows::Foundation::Rect const& value) const; [[nodiscard]] auto Rotation() const; auto Rotation(winrt::Windows::Media::MediaProperties::MediaRotation const& value) const; [[nodiscard]] auto Mirror() const; auto Mirror(winrt::Windows::Media::MediaProperties::MediaMirroringOptions const& value) const; auto ProcessingAlgorithm(winrt::Windows::Media::Transcoding::MediaVideoProcessingAlgorithm const& value) const; [[nodiscard]] auto ProcessingAlgorithm() const; }; template <> struct consume { template using type = consume_Windows_Media_Effects_IVideoTransformEffectDefinition; }; template struct consume_Windows_Media_Effects_IVideoTransformEffectDefinition2 { [[nodiscard]] auto SphericalProjection() const; }; template <> struct consume { template using type = consume_Windows_Media_Effects_IVideoTransformEffectDefinition2; }; template struct consume_Windows_Media_Effects_IVideoTransformSphericalProjection { [[nodiscard]] auto IsEnabled() const; auto IsEnabled(bool value) const; [[nodiscard]] auto FrameFormat() const; auto FrameFormat(winrt::Windows::Media::MediaProperties::SphericalVideoFrameFormat const& value) const; [[nodiscard]] auto ProjectionMode() const; auto ProjectionMode(winrt::Windows::Media::Playback::SphericalVideoProjectionMode const& value) const; [[nodiscard]] auto HorizontalFieldOfViewInDegrees() const; auto HorizontalFieldOfViewInDegrees(double value) const; [[nodiscard]] auto ViewOrientation() const; auto ViewOrientation(winrt::Windows::Foundation::Numerics::quaternion const& value) const; }; template <> struct consume { template using type = consume_Windows_Media_Effects_IVideoTransformSphericalProjection; }; } #endif