Trait windows::Win32::Media::MediaFoundation::IMFMediaEngineEx_Impl
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.