// // Copyright (c) Microsoft Corporation. All rights reserved. // // // File generated by WinMDIDL version 8.00.0021 // import "inspectable.idl"; import "AsyncInfo.idl"; import "EventToken.idl"; import "windowscontracts.idl"; import "Windows.Foundation.idl"; import "Windows.Foundation.Numerics.idl"; import "Windows.Graphics.DirectX.Direct3D11.idl"; import "Windows.Media.idl"; import "Windows.Media.Capture.idl"; import "Windows.Media.Editing.idl"; import "Windows.Media.MediaProperties.idl"; import "Windows.Media.Playback.idl"; import "Windows.Media.Render.idl"; import "Windows.Media.Transcoding.idl"; import "Windows.Storage.Streams.idl"; import "Windows.UI.idl"; // Forward Declare namespace Windows { namespace Foundation { namespace Collections { interface IPropertySet; } } } namespace Windows { namespace Foundation { namespace Numerics { typedef struct Quaternion Quaternion; } } } namespace Windows { namespace Foundation { typedef struct Rect Rect; typedef struct Size Size; apicontract UniversalApiContract; } } namespace Windows { namespace Graphics { namespace DirectX { namespace Direct3D11 { interface IDirect3DDevice; interface IDirect3DSurface; } } } } namespace Windows { namespace Media { runtimeclass AudioFrame; typedef enum AudioProcessing AudioProcessing; } } namespace Windows { namespace Media { namespace Capture { typedef enum MediaCategory MediaCategory; } } } namespace Windows { namespace Media { namespace Editing { runtimeclass MediaOverlay; } } } namespace Windows { namespace Media { interface IMediaExtension; } } namespace Windows { namespace Media { namespace MediaProperties { runtimeclass AudioEncodingProperties; typedef enum MediaMirroringOptions MediaMirroringOptions; typedef enum MediaRotation MediaRotation; typedef enum SphericalVideoFrameFormat SphericalVideoFrameFormat; runtimeclass VideoEncodingProperties; } } } namespace Windows { namespace Media { namespace Playback { typedef enum SphericalVideoProjectionMode SphericalVideoProjectionMode; } } } namespace Windows { namespace Media { namespace Render { typedef enum AudioRenderCategory AudioRenderCategory; } } } namespace Windows { namespace Media { namespace Transcoding { typedef enum MediaVideoProcessingAlgorithm MediaVideoProcessingAlgorithm; } } } namespace Windows { namespace Media { runtimeclass VideoFrame; } } namespace Windows { namespace Storage { namespace Streams { interface IRandomAccessStreamWithContentType; } } } namespace Windows { namespace UI { typedef struct Color Color; } } namespace Windows { namespace Media { namespace Effects { typedef enum AudioEffectType AudioEffectType; typedef enum MediaEffectClosedReason MediaEffectClosedReason; typedef enum MediaMemoryTypes MediaMemoryTypes; interface IAudioCaptureEffectsManager; interface IAudioEffect; interface IAudioEffectDefinition; interface IAudioEffectDefinitionFactory; interface IAudioEffectsManagerStatics; interface IAudioRenderEffectsManager; interface IAudioRenderEffectsManager2; interface IBasicAudioEffect; interface IBasicVideoEffect; interface ICompositeVideoFrameContext; interface IProcessAudioFrameContext; interface IProcessVideoFrameContext; interface IVideoCompositor; interface IVideoCompositorDefinition; interface IVideoCompositorDefinitionFactory; interface IVideoEffectDefinition; interface IVideoEffectDefinitionFactory; interface IVideoTransformEffectDefinition; interface IVideoTransformEffectDefinition2; interface IVideoTransformSphericalProjection; runtimeclass AudioCaptureEffectsManager; runtimeclass AudioEffect; runtimeclass AudioEffectDefinition; runtimeclass AudioEffectsManager; runtimeclass AudioRenderEffectsManager; runtimeclass CompositeVideoFrameContext; runtimeclass ProcessAudioFrameContext; runtimeclass ProcessVideoFrameContext; runtimeclass VideoCompositorDefinition; runtimeclass VideoEffectDefinition; runtimeclass VideoTransformEffectDefinition; runtimeclass VideoTransformSphericalProjection; } } } // Generic instantiations namespace Windows { namespace Media { namespace Effects { declare { interface Windows.Foundation.Collections.IIterable; interface Windows.Foundation.Collections.IIterable; interface Windows.Foundation.Collections.IIterable; interface Windows.Foundation.Collections.IIterator; interface Windows.Foundation.Collections.IIterator; interface Windows.Foundation.Collections.IIterator; interface Windows.Foundation.Collections.IVectorView; interface Windows.Foundation.Collections.IVectorView; interface Windows.Foundation.Collections.IVectorView; interface Windows.Foundation.Collections.IVector; interface Windows.Foundation.Collections.IVector; interface Windows.Foundation.TypedEventHandler; interface Windows.Foundation.TypedEventHandler; } } } } // Type definition namespace Windows { namespace Media { namespace Effects { [contract(Windows.Foundation.UniversalApiContract, 1.0)] enum AudioEffectType { 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, [contract(Windows.Foundation.UniversalApiContract, 12.0)] FarFieldBeamForming = 18, [contract(Windows.Foundation.UniversalApiContract, 13.0)] DeepNoiseSuppression = 19 }; [contract(Windows.Foundation.UniversalApiContract, 1.0)] enum MediaEffectClosedReason { Done = 0, UnknownError = 1, UnsupportedEncodingFormat = 2, EffectCurrentlyUnloaded = 3 }; [contract(Windows.Foundation.UniversalApiContract, 1.0)] enum MediaMemoryTypes { Gpu = 0, Cpu = 1, GpuAndCpu = 2 }; [contract(Windows.Foundation.UniversalApiContract, 1.0)] [exclusiveto(Windows.Media.Effects.AudioCaptureEffectsManager)] [uuid(8F85C271-038D-4393-8298-540110608EEF)] interface IAudioCaptureEffectsManager : IInspectable { [eventadd] HRESULT AudioCaptureEffectsChanged([in] Windows.Foundation.TypedEventHandler* handler, [out] [retval] EventRegistrationToken* token); [eventremove] HRESULT AudioCaptureEffectsChanged([in] EventRegistrationToken token); HRESULT GetAudioCaptureEffects([out] [retval] Windows.Foundation.Collections.IVectorView** effects); } [contract(Windows.Foundation.UniversalApiContract, 1.0)] [exclusiveto(Windows.Media.Effects.AudioEffect)] [uuid(34AAFA51-9207-4055-BE93-6E5734A86AE4)] interface IAudioEffect : IInspectable { [propget] HRESULT AudioEffectType([out] [retval] Windows.Media.Effects.AudioEffectType* value); } [contract(Windows.Foundation.UniversalApiContract, 1.0)] [uuid(E4D7F974-7D80-4F73-9089-E31C9DB9C294)] interface IAudioEffectDefinition : IInspectable { [propget] HRESULT ActivatableClassId([out] [retval] HSTRING* value); [propget] HRESULT Properties([out] [retval] Windows.Foundation.Collections.IPropertySet** value); } [contract(Windows.Foundation.UniversalApiContract, 1.0)] [exclusiveto(Windows.Media.Effects.AudioEffectDefinition)] [uuid(8E1DA646-E705-45ED-8A2B-FC4E4F405A97)] interface IAudioEffectDefinitionFactory : IInspectable { HRESULT Create([in] HSTRING activatableClassId, [out] [retval] Windows.Media.Effects.AudioEffectDefinition** value); HRESULT CreateWithProperties([in] HSTRING activatableClassId, [in] Windows.Foundation.Collections.IPropertySet* props, [out] [retval] Windows.Media.Effects.AudioEffectDefinition** 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 deviceId, [in] Windows.Media.Render.AudioRenderCategory category, [out] [retval] Windows.Media.Effects.AudioRenderEffectsManager** value); [overload("CreateAudioRenderEffectsManager")] HRESULT CreateAudioRenderEffectsManagerWithMode([in] HSTRING deviceId, [in] Windows.Media.Render.AudioRenderCategory category, [in] Windows.Media.AudioProcessing mode, [out] [retval] Windows.Media.Effects.AudioRenderEffectsManager** value); [overload("CreateAudioCaptureEffectsManager")] HRESULT CreateAudioCaptureEffectsManager([in] HSTRING deviceId, [in] Windows.Media.Capture.MediaCategory category, [out] [retval] Windows.Media.Effects.AudioCaptureEffectsManager** value); [overload("CreateAudioCaptureEffectsManager")] HRESULT CreateAudioCaptureEffectsManagerWithMode([in] HSTRING deviceId, [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)] [uuid(4DC98966-8751-42B2-BFCB-39CA7864BD47)] interface IAudioRenderEffectsManager : IInspectable { [eventadd] HRESULT AudioRenderEffectsChanged([in] Windows.Foundation.TypedEventHandler* handler, [out] [retval] EventRegistrationToken* token); [eventremove] HRESULT AudioRenderEffectsChanged([in] EventRegistrationToken token); HRESULT GetAudioRenderEffects([out] [retval] Windows.Foundation.Collections.IVectorView** effects); } [contract(Windows.Foundation.UniversalApiContract, 1.0)] [deprecated("Not supported starting in windows 10", deprecate, Windows.Foundation.UniversalApiContract, 1.0)] [exclusiveto(Windows.Media.Effects.AudioRenderEffectsManager)] [uuid(A844CD09-5ECC-44B3-BB4E-1DB07287139C)] interface IAudioRenderEffectsManager2 : IInspectable { [deprecated("Not supported starting in windows 10", deprecate, Windows.Foundation.UniversalApiContract, 1.0)] [propget] HRESULT EffectsProviderThumbnail([out] [retval] Windows.Storage.Streams.IRandomAccessStreamWithContentType** value); [deprecated("Not supported starting in windows 10", deprecate, Windows.Foundation.UniversalApiContract, 1.0)] [propget] HRESULT EffectsProviderSettingsLabel([out] [retval] HSTRING* value); [deprecated("Not supported starting in windows 10", deprecate, Windows.Foundation.UniversalApiContract, 1.0)] HRESULT ShowSettingsUI(); } [contract(Windows.Foundation.UniversalApiContract, 1.0)] [uuid(8C062C53-6BC0-48B8-A99A-4B41550F1359)] interface IBasicAudioEffect : IInspectable requires Windows.Media.IMediaExtension { [propget] HRESULT UseInputFrameForOutput([out] [retval] boolean* value); [propget] HRESULT SupportedEncodingProperties([out] [retval] Windows.Foundation.Collections.IVectorView** value); HRESULT SetEncodingProperties([in] Windows.Media.MediaProperties.AudioEncodingProperties* encodingProperties); HRESULT ProcessFrame([in] Windows.Media.Effects.ProcessAudioFrameContext* context); HRESULT Close([in] Windows.Media.Effects.MediaEffectClosedReason reason); HRESULT DiscardQueuedFrames(); } [contract(Windows.Foundation.UniversalApiContract, 1.0)] [uuid(8262C7EF-B360-40BE-949B-2FF42FF35693)] interface IBasicVideoEffect : IInspectable requires Windows.Media.IMediaExtension { [propget] HRESULT IsReadOnly([out] [retval] boolean* value); [propget] HRESULT SupportedMemoryTypes([out] [retval] Windows.Media.Effects.MediaMemoryTypes* value); [propget] HRESULT TimeIndependent([out] [retval] boolean* value); [propget] HRESULT SupportedEncodingProperties([out] [retval] Windows.Foundation.Collections.IVectorView** value); HRESULT SetEncodingProperties([in] Windows.Media.MediaProperties.VideoEncodingProperties* encodingProperties, [in] Windows.Graphics.DirectX.Direct3D11.IDirect3DDevice* device); HRESULT ProcessFrame([in] Windows.Media.Effects.ProcessVideoFrameContext* context); HRESULT Close([in] Windows.Media.Effects.MediaEffectClosedReason reason); HRESULT DiscardQueuedFrames(); } [contract(Windows.Foundation.UniversalApiContract, 1.0)] [exclusiveto(Windows.Media.Effects.CompositeVideoFrameContext)] [uuid(6C30024B-F514-4278-A5F7-B9188049D110)] interface ICompositeVideoFrameContext : IInspectable { [propget] HRESULT SurfacesToOverlay([out] [retval] Windows.Foundation.Collections.IVectorView** value); [propget] HRESULT BackgroundFrame([out] [retval] Windows.Media.VideoFrame** value); [propget] HRESULT OutputFrame([out] [retval] Windows.Media.VideoFrame** value); HRESULT GetOverlayForSurface([in] Windows.Graphics.DirectX.Direct3D11.IDirect3DSurface* surfaceToOverlay, [out] [retval] Windows.Media.Editing.MediaOverlay** value); } [contract(Windows.Foundation.UniversalApiContract, 1.0)] [exclusiveto(Windows.Media.Effects.ProcessAudioFrameContext)] [uuid(4CD92946-1222-4A27-A586-FB3E20273255)] interface IProcessAudioFrameContext : IInspectable { [propget] HRESULT InputFrame([out] [retval] Windows.Media.AudioFrame** value); [propget] HRESULT OutputFrame([out] [retval] Windows.Media.AudioFrame** value); } [contract(Windows.Foundation.UniversalApiContract, 1.0)] [exclusiveto(Windows.Media.Effects.ProcessVideoFrameContext)] [uuid(276F0E2B-6461-401E-BA78-0FDAD6114EEC)] interface IProcessVideoFrameContext : IInspectable { [propget] HRESULT InputFrame([out] [retval] Windows.Media.VideoFrame** value); [propget] HRESULT OutputFrame([out] [retval] Windows.Media.VideoFrame** value); } [contract(Windows.Foundation.UniversalApiContract, 1.0)] [uuid(8510B43E-420C-420F-96C7-7C98BBA1FC55)] interface IVideoCompositor : IInspectable requires Windows.Media.IMediaExtension { [propget] HRESULT TimeIndependent([out] [retval] boolean* value); HRESULT SetEncodingProperties([in] Windows.Media.MediaProperties.VideoEncodingProperties* backgroundProperties, [in] Windows.Graphics.DirectX.Direct3D11.IDirect3DDevice* device); HRESULT CompositeFrame([in] Windows.Media.Effects.CompositeVideoFrameContext* context); HRESULT Close([in] Windows.Media.Effects.MediaEffectClosedReason reason); HRESULT DiscardQueuedFrames(); } [contract(Windows.Foundation.UniversalApiContract, 1.0)] [uuid(7946B8D0-2010-4AE3-9AB2-2CEF42EDD4D2)] interface IVideoCompositorDefinition : IInspectable { [propget] HRESULT ActivatableClassId([out] [retval] HSTRING* value); [propget] HRESULT Properties([out] [retval] Windows.Foundation.Collections.IPropertySet** value); } [contract(Windows.Foundation.UniversalApiContract, 1.0)] [exclusiveto(Windows.Media.Effects.VideoCompositorDefinition)] [uuid(4366FD10-68B8-4D52-89B6-02A968CCA899)] interface IVideoCompositorDefinitionFactory : IInspectable { HRESULT Create([in] HSTRING activatableClassId, [out] [retval] Windows.Media.Effects.VideoCompositorDefinition** value); HRESULT CreateWithProperties([in] HSTRING activatableClassId, [in] Windows.Foundation.Collections.IPropertySet* props, [out] [retval] Windows.Media.Effects.VideoCompositorDefinition** value); } [contract(Windows.Foundation.UniversalApiContract, 1.0)] [uuid(39F38CF0-8D0F-4F3E-84FC-2D46A5297943)] interface IVideoEffectDefinition : IInspectable { [propget] HRESULT ActivatableClassId([out] [retval] HSTRING* value); [propget] HRESULT Properties([out] [retval] Windows.Foundation.Collections.IPropertySet** value); } [contract(Windows.Foundation.UniversalApiContract, 1.0)] [exclusiveto(Windows.Media.Effects.VideoEffectDefinition)] [uuid(81439B4E-6E33-428F-9D21-B5AAFEF7617C)] interface IVideoEffectDefinitionFactory : IInspectable { HRESULT Create([in] HSTRING activatableClassId, [out] [retval] Windows.Media.Effects.VideoEffectDefinition** value); HRESULT CreateWithProperties([in] HSTRING activatableClassId, [in] Windows.Foundation.Collections.IPropertySet* props, [out] [retval] Windows.Media.Effects.VideoEffectDefinition** value); } [contract(Windows.Foundation.UniversalApiContract, 1.0)] [exclusiveto(Windows.Media.Effects.VideoTransformEffectDefinition)] [uuid(9664BB6A-1EA6-4AA6-8074-ABE8851ECAE2)] interface IVideoTransformEffectDefinition : IInspectable requires Windows.Media.Effects.IVideoEffectDefinition { [propget] HRESULT PaddingColor([out] [retval] Windows.UI.Color* value); [propput] HRESULT PaddingColor([in] Windows.UI.Color value); [propget] HRESULT OutputSize([out] [retval] Windows.Foundation.Size* value); [propput] HRESULT OutputSize([in] Windows.Foundation.Size value); [propget] HRESULT CropRectangle([out] [retval] Windows.Foundation.Rect* value); [propput] HRESULT CropRectangle([in] Windows.Foundation.Rect value); [propget] HRESULT Rotation([out] [retval] Windows.Media.MediaProperties.MediaRotation* value); [propput] HRESULT Rotation([in] Windows.Media.MediaProperties.MediaRotation value); [propget] HRESULT Mirror([out] [retval] Windows.Media.MediaProperties.MediaMirroringOptions* value); [propput] HRESULT Mirror([in] Windows.Media.MediaProperties.MediaMirroringOptions value); [propput] HRESULT ProcessingAlgorithm([in] Windows.Media.Transcoding.MediaVideoProcessingAlgorithm value); [propget] HRESULT ProcessingAlgorithm([out] [retval] Windows.Media.Transcoding.MediaVideoProcessingAlgorithm* value); } [contract(Windows.Foundation.UniversalApiContract, 6.0)] [exclusiveto(Windows.Media.Effects.VideoTransformEffectDefinition)] [uuid(F0A8089F-66C8-4694-9FD9-1136ABF7444A)] interface IVideoTransformEffectDefinition2 : IInspectable { [propget] HRESULT SphericalProjection([out] [retval] Windows.Media.Effects.VideoTransformSphericalProjection** value); } [contract(Windows.Foundation.UniversalApiContract, 6.0)] [exclusiveto(Windows.Media.Effects.VideoTransformSphericalProjection)] [uuid(CF4401F0-9BF2-4C39-9F41-E022514A8468)] interface IVideoTransformSphericalProjection : IInspectable { [propget] HRESULT IsEnabled([out] [retval] boolean* value); [propput] HRESULT IsEnabled([in] boolean value); [propget] HRESULT FrameFormat([out] [retval] Windows.Media.MediaProperties.SphericalVideoFrameFormat* value); [propput] HRESULT FrameFormat([in] Windows.Media.MediaProperties.SphericalVideoFrameFormat value); [propget] HRESULT ProjectionMode([out] [retval] Windows.Media.Playback.SphericalVideoProjectionMode* value); [propput] HRESULT ProjectionMode([in] Windows.Media.Playback.SphericalVideoProjectionMode value); [propget] HRESULT HorizontalFieldOfViewInDegrees([out] [retval] DOUBLE* value); [propput] HRESULT HorizontalFieldOfViewInDegrees([in] DOUBLE value); [propget] HRESULT ViewOrientation([out] [retval] Windows.Foundation.Numerics.Quaternion* value); [propput] HRESULT ViewOrientation([in] Windows.Foundation.Numerics.Quaternion value); } [contract(Windows.Foundation.UniversalApiContract, 1.0)] [marshaling_behavior(agile)] [threading(mta)] runtimeclass AudioCaptureEffectsManager { [default] interface Windows.Media.Effects.IAudioCaptureEffectsManager; } [contract(Windows.Foundation.UniversalApiContract, 1.0)] [marshaling_behavior(agile)] [threading(mta)] runtimeclass AudioEffect { [default] interface Windows.Media.Effects.IAudioEffect; } [activatable(Windows.Media.Effects.IAudioEffectDefinitionFactory, Windows.Foundation.UniversalApiContract, 1.0)] [contract(Windows.Foundation.UniversalApiContract, 1.0)] [marshaling_behavior(agile)] [threading(both)] runtimeclass AudioEffectDefinition { [default] interface Windows.Media.Effects.IAudioEffectDefinition; } [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)] [threading(mta)] runtimeclass AudioRenderEffectsManager { [default] interface Windows.Media.Effects.IAudioRenderEffectsManager; [contract(Windows.Foundation.UniversalApiContract, 1.0)] interface Windows.Media.Effects.IAudioRenderEffectsManager2; } [contract(Windows.Foundation.UniversalApiContract, 1.0)] [marshaling_behavior(agile)] [threading(both)] runtimeclass CompositeVideoFrameContext { [default] interface Windows.Media.Effects.ICompositeVideoFrameContext; } [contract(Windows.Foundation.UniversalApiContract, 1.0)] [marshaling_behavior(agile)] [threading(both)] runtimeclass ProcessAudioFrameContext { [default] interface Windows.Media.Effects.IProcessAudioFrameContext; } [contract(Windows.Foundation.UniversalApiContract, 1.0)] [marshaling_behavior(agile)] [threading(both)] runtimeclass ProcessVideoFrameContext { [default] interface Windows.Media.Effects.IProcessVideoFrameContext; } [activatable(Windows.Media.Effects.IVideoCompositorDefinitionFactory, Windows.Foundation.UniversalApiContract, 1.0)] [contract(Windows.Foundation.UniversalApiContract, 1.0)] [marshaling_behavior(agile)] [threading(both)] runtimeclass VideoCompositorDefinition { [default] interface Windows.Media.Effects.IVideoCompositorDefinition; } [activatable(Windows.Media.Effects.IVideoEffectDefinitionFactory, Windows.Foundation.UniversalApiContract, 1.0)] [contract(Windows.Foundation.UniversalApiContract, 1.0)] [marshaling_behavior(agile)] [threading(both)] runtimeclass VideoEffectDefinition { [default] interface Windows.Media.Effects.IVideoEffectDefinition; } [activatable(Windows.Foundation.UniversalApiContract, 1.0)] [contract(Windows.Foundation.UniversalApiContract, 1.0)] [marshaling_behavior(agile)] [threading(both)] runtimeclass VideoTransformEffectDefinition { [default] interface Windows.Media.Effects.IVideoEffectDefinition; interface Windows.Media.Effects.IVideoTransformEffectDefinition; [contract(Windows.Foundation.UniversalApiContract, 6.0)] interface Windows.Media.Effects.IVideoTransformEffectDefinition2; } [contract(Windows.Foundation.UniversalApiContract, 6.0)] [marshaling_behavior(agile)] [threading(both)] runtimeclass VideoTransformSphericalProjection { [default] interface Windows.Media.Effects.IVideoTransformSphericalProjection; } } } }