pub trait IMFMediaEngineEx_Impl: Sized + IMFMediaEngine_Impl {
Show 37 methods // Required methods fn SetSourceFromByteStream( &self, pbytestream: Option<&IMFByteStream>, purl: &BSTR ) -> Result<()>; fn GetStatistics( &self, statisticid: MF_MEDIA_ENGINE_STATISTIC ) -> Result<PROPVARIANT>; fn UpdateVideoStream( &self, psrc: *const MFVideoNormalizedRect, pdst: *const RECT, pborderclr: *const MFARGB ) -> Result<()>; fn GetBalance(&self) -> f64; fn SetBalance(&self, balance: f64) -> Result<()>; fn IsPlaybackRateSupported(&self, rate: f64) -> BOOL; fn FrameStep(&self, forward: BOOL) -> Result<()>; fn GetResourceCharacteristics(&self) -> Result<u32>; fn GetPresentationAttribute( &self, guidmfattribute: *const GUID ) -> Result<PROPVARIANT>; fn GetNumberOfStreams(&self) -> Result<u32>; fn GetStreamAttribute( &self, dwstreamindex: u32, guidmfattribute: *const GUID ) -> Result<PROPVARIANT>; fn GetStreamSelection(&self, dwstreamindex: u32) -> Result<BOOL>; fn SetStreamSelection( &self, dwstreamindex: u32, enabled: BOOL ) -> Result<()>; fn ApplyStreamSelections(&self) -> Result<()>; fn IsProtected(&self) -> Result<BOOL>; fn InsertVideoEffect( &self, peffect: Option<&IUnknown>, foptional: BOOL ) -> Result<()>; fn InsertAudioEffect( &self, peffect: Option<&IUnknown>, foptional: BOOL ) -> Result<()>; fn RemoveAllEffects(&self) -> Result<()>; fn SetTimelineMarkerTimer(&self, timetofire: f64) -> Result<()>; fn GetTimelineMarkerTimer(&self) -> Result<f64>; fn CancelTimelineMarkerTimer(&self) -> Result<()>; fn IsStereo3D(&self) -> BOOL; fn GetStereo3DFramePackingMode( &self ) -> Result<MF_MEDIA_ENGINE_S3D_PACKING_MODE>; fn SetStereo3DFramePackingMode( &self, packmode: MF_MEDIA_ENGINE_S3D_PACKING_MODE ) -> Result<()>; fn GetStereo3DRenderMode(&self) -> Result<MF3DVideoOutputType>; fn SetStereo3DRenderMode( &self, outputtype: MF3DVideoOutputType ) -> Result<()>; fn EnableWindowlessSwapchainMode(&self, fenable: BOOL) -> Result<()>; fn GetVideoSwapchainHandle(&self) -> Result<HANDLE>; fn EnableHorizontalMirrorMode(&self, fenable: BOOL) -> Result<()>; fn GetAudioStreamCategory(&self) -> Result<u32>; fn SetAudioStreamCategory(&self, category: u32) -> Result<()>; fn GetAudioEndpointRole(&self) -> Result<u32>; fn SetAudioEndpointRole(&self, role: u32) -> Result<()>; fn GetRealTimeMode(&self) -> Result<BOOL>; fn SetRealTimeMode(&self, fenable: BOOL) -> Result<()>; fn SetCurrentTimeEx( &self, seektime: f64, seekmode: MF_MEDIA_ENGINE_SEEK_MODE ) -> Result<()>; fn EnableTimeUpdateTimer(&self, fenabletimer: BOOL) -> Result<()>;
}

Required Methods§

fn SetSourceFromByteStream( &self, pbytestream: Option<&IMFByteStream>, purl: &BSTR ) -> Result<()>

fn GetStatistics( &self, statisticid: MF_MEDIA_ENGINE_STATISTIC ) -> Result<PROPVARIANT>

fn UpdateVideoStream( &self, psrc: *const MFVideoNormalizedRect, pdst: *const RECT, pborderclr: *const MFARGB ) -> Result<()>

fn GetBalance(&self) -> f64

fn SetBalance(&self, balance: f64) -> Result<()>

fn IsPlaybackRateSupported(&self, rate: f64) -> BOOL

fn FrameStep(&self, forward: BOOL) -> Result<()>

fn GetResourceCharacteristics(&self) -> Result<u32>

fn GetPresentationAttribute( &self, guidmfattribute: *const GUID ) -> Result<PROPVARIANT>

fn GetNumberOfStreams(&self) -> Result<u32>

fn GetStreamAttribute( &self, dwstreamindex: u32, guidmfattribute: *const GUID ) -> Result<PROPVARIANT>

fn GetStreamSelection(&self, dwstreamindex: u32) -> Result<BOOL>

fn SetStreamSelection(&self, dwstreamindex: u32, enabled: BOOL) -> Result<()>

fn ApplyStreamSelections(&self) -> Result<()>

fn IsProtected(&self) -> Result<BOOL>

fn InsertVideoEffect( &self, peffect: Option<&IUnknown>, foptional: BOOL ) -> Result<()>

fn InsertAudioEffect( &self, peffect: Option<&IUnknown>, foptional: BOOL ) -> Result<()>

fn RemoveAllEffects(&self) -> Result<()>

fn SetTimelineMarkerTimer(&self, timetofire: f64) -> Result<()>

fn GetTimelineMarkerTimer(&self) -> Result<f64>

fn CancelTimelineMarkerTimer(&self) -> Result<()>

fn IsStereo3D(&self) -> BOOL

fn GetStereo3DFramePackingMode( &self ) -> Result<MF_MEDIA_ENGINE_S3D_PACKING_MODE>

fn SetStereo3DFramePackingMode( &self, packmode: MF_MEDIA_ENGINE_S3D_PACKING_MODE ) -> Result<()>

fn GetStereo3DRenderMode(&self) -> Result<MF3DVideoOutputType>

fn SetStereo3DRenderMode(&self, outputtype: MF3DVideoOutputType) -> Result<()>

fn EnableWindowlessSwapchainMode(&self, fenable: BOOL) -> Result<()>

fn GetVideoSwapchainHandle(&self) -> Result<HANDLE>

fn EnableHorizontalMirrorMode(&self, fenable: BOOL) -> Result<()>

fn GetAudioStreamCategory(&self) -> Result<u32>

fn SetAudioStreamCategory(&self, category: u32) -> Result<()>

fn GetAudioEndpointRole(&self) -> Result<u32>

fn SetAudioEndpointRole(&self, role: u32) -> Result<()>

fn GetRealTimeMode(&self) -> Result<BOOL>

fn SetRealTimeMode(&self, fenable: BOOL) -> Result<()>

fn SetCurrentTimeEx( &self, seektime: f64, seekmode: MF_MEDIA_ENGINE_SEEK_MODE ) -> Result<()>

fn EnableTimeUpdateTimer(&self, fenabletimer: BOOL) -> Result<()>

Object Safety§

This trait is not object safe.

Implementors§