Trait IMFSinkWriter_Impl
pub trait IMFSinkWriter_Impl: IUnknownImpl {
// Required methods
fn AddStream(&self, ptargetmediatype: Ref<'_, IMFMediaType>) -> Result<u32>;
fn SetInputMediaType(
&self,
dwstreamindex: u32,
pinputmediatype: Ref<'_, IMFMediaType>,
pencodingparameters: Ref<'_, IMFAttributes>,
) -> Result<()>;
fn BeginWriting(&self) -> Result<()>;
fn WriteSample(
&self,
dwstreamindex: u32,
psample: Ref<'_, IMFSample>,
) -> Result<()>;
fn SendStreamTick(&self, dwstreamindex: u32, lltimestamp: i64) -> Result<()>;
fn PlaceMarker(
&self,
dwstreamindex: u32,
pvcontext: *const c_void,
) -> Result<()>;
fn NotifyEndOfSegment(&self, dwstreamindex: u32) -> Result<()>;
fn Flush(&self, dwstreamindex: u32) -> Result<()>;
fn Finalize(&self) -> Result<()>;
fn GetServiceForStream(
&self,
dwstreamindex: u32,
guidservice: *const GUID,
riid: *const GUID,
ppvobject: *mut *mut c_void,
) -> Result<()>;
fn GetStatistics(
&self,
dwstreamindex: u32,
pstats: *mut MF_SINK_WRITER_STATISTICS,
) -> Result<()>;
}
Required Methods§
fn AddStream(&self, ptargetmediatype: Ref<'_, IMFMediaType>) -> Result<u32>
fn SetInputMediaType( &self, dwstreamindex: u32, pinputmediatype: Ref<'_, IMFMediaType>, pencodingparameters: Ref<'_, IMFAttributes>, ) -> Result<()>
fn BeginWriting(&self) -> Result<()>
fn WriteSample( &self, dwstreamindex: u32, psample: Ref<'_, IMFSample>, ) -> Result<()>
fn SendStreamTick(&self, dwstreamindex: u32, lltimestamp: i64) -> Result<()>
fn PlaceMarker( &self, dwstreamindex: u32, pvcontext: *const c_void, ) -> Result<()>
fn NotifyEndOfSegment(&self, dwstreamindex: u32) -> Result<()>
fn Flush(&self, dwstreamindex: u32) -> Result<()>
fn Finalize(&self) -> Result<()>
fn GetServiceForStream( &self, dwstreamindex: u32, guidservice: *const GUID, riid: *const GUID, ppvobject: *mut *mut c_void, ) -> Result<()>
fn GetStatistics( &self, dwstreamindex: u32, pstats: *mut MF_SINK_WRITER_STATISTICS, ) -> Result<()>
Dyn Compatibility§
This trait is not dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.