pub trait IMFTransform_Impl: Sized {
Show 23 methods // Required methods fn GetStreamLimits( &self, pdwinputminimum: *mut u32, pdwinputmaximum: *mut u32, pdwoutputminimum: *mut u32, pdwoutputmaximum: *mut u32 ) -> Result<()>; fn GetStreamCount( &self, pcinputstreams: *mut u32, pcoutputstreams: *mut u32 ) -> Result<()>; fn GetStreamIDs( &self, dwinputidarraysize: u32, pdwinputids: *mut u32, dwoutputidarraysize: u32, pdwoutputids: *mut u32 ) -> Result<()>; fn GetInputStreamInfo( &self, dwinputstreamid: u32, pstreaminfo: *mut MFT_INPUT_STREAM_INFO ) -> Result<()>; fn GetOutputStreamInfo( &self, dwoutputstreamid: u32 ) -> Result<MFT_OUTPUT_STREAM_INFO>; fn GetAttributes(&self) -> Result<IMFAttributes>; fn GetInputStreamAttributes( &self, dwinputstreamid: u32 ) -> Result<IMFAttributes>; fn GetOutputStreamAttributes( &self, dwoutputstreamid: u32 ) -> Result<IMFAttributes>; fn DeleteInputStream(&self, dwstreamid: u32) -> Result<()>; fn AddInputStreams( &self, cstreams: u32, adwstreamids: *const u32 ) -> Result<()>; fn GetInputAvailableType( &self, dwinputstreamid: u32, dwtypeindex: u32 ) -> Result<IMFMediaType>; fn GetOutputAvailableType( &self, dwoutputstreamid: u32, dwtypeindex: u32 ) -> Result<IMFMediaType>; fn SetInputType( &self, dwinputstreamid: u32, ptype: Option<&IMFMediaType>, dwflags: u32 ) -> Result<()>; fn SetOutputType( &self, dwoutputstreamid: u32, ptype: Option<&IMFMediaType>, dwflags: u32 ) -> Result<()>; fn GetInputCurrentType(&self, dwinputstreamid: u32) -> Result<IMFMediaType>; fn GetOutputCurrentType( &self, dwoutputstreamid: u32 ) -> Result<IMFMediaType>; fn GetInputStatus(&self, dwinputstreamid: u32) -> Result<u32>; fn GetOutputStatus(&self) -> Result<u32>; fn SetOutputBounds( &self, hnslowerbound: i64, hnsupperbound: i64 ) -> Result<()>; fn ProcessEvent( &self, dwinputstreamid: u32, pevent: Option<&IMFMediaEvent> ) -> Result<()>; fn ProcessMessage( &self, emessage: MFT_MESSAGE_TYPE, ulparam: usize ) -> Result<()>; fn ProcessInput( &self, dwinputstreamid: u32, psample: Option<&IMFSample>, dwflags: u32 ) -> Result<()>; fn ProcessOutput( &self, dwflags: u32, coutputbuffercount: u32, poutputsamples: *mut MFT_OUTPUT_DATA_BUFFER, pdwstatus: *mut u32 ) -> Result<()>;
}

Required Methods§

fn GetStreamLimits( &self, pdwinputminimum: *mut u32, pdwinputmaximum: *mut u32, pdwoutputminimum: *mut u32, pdwoutputmaximum: *mut u32 ) -> Result<()>

fn GetStreamCount( &self, pcinputstreams: *mut u32, pcoutputstreams: *mut u32 ) -> Result<()>

fn GetStreamIDs( &self, dwinputidarraysize: u32, pdwinputids: *mut u32, dwoutputidarraysize: u32, pdwoutputids: *mut u32 ) -> Result<()>

fn GetInputStreamInfo( &self, dwinputstreamid: u32, pstreaminfo: *mut MFT_INPUT_STREAM_INFO ) -> Result<()>

fn GetOutputStreamInfo( &self, dwoutputstreamid: u32 ) -> Result<MFT_OUTPUT_STREAM_INFO>

fn GetAttributes(&self) -> Result<IMFAttributes>

fn GetInputStreamAttributes( &self, dwinputstreamid: u32 ) -> Result<IMFAttributes>

fn GetOutputStreamAttributes( &self, dwoutputstreamid: u32 ) -> Result<IMFAttributes>

fn DeleteInputStream(&self, dwstreamid: u32) -> Result<()>

fn AddInputStreams(&self, cstreams: u32, adwstreamids: *const u32) -> Result<()>

fn GetInputAvailableType( &self, dwinputstreamid: u32, dwtypeindex: u32 ) -> Result<IMFMediaType>

fn GetOutputAvailableType( &self, dwoutputstreamid: u32, dwtypeindex: u32 ) -> Result<IMFMediaType>

fn SetInputType( &self, dwinputstreamid: u32, ptype: Option<&IMFMediaType>, dwflags: u32 ) -> Result<()>

fn SetOutputType( &self, dwoutputstreamid: u32, ptype: Option<&IMFMediaType>, dwflags: u32 ) -> Result<()>

fn GetInputCurrentType(&self, dwinputstreamid: u32) -> Result<IMFMediaType>

fn GetOutputCurrentType(&self, dwoutputstreamid: u32) -> Result<IMFMediaType>

fn GetInputStatus(&self, dwinputstreamid: u32) -> Result<u32>

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

fn SetOutputBounds(&self, hnslowerbound: i64, hnsupperbound: i64) -> Result<()>

fn ProcessEvent( &self, dwinputstreamid: u32, pevent: Option<&IMFMediaEvent> ) -> Result<()>

fn ProcessMessage( &self, emessage: MFT_MESSAGE_TYPE, ulparam: usize ) -> Result<()>

fn ProcessInput( &self, dwinputstreamid: u32, psample: Option<&IMFSample>, dwflags: u32 ) -> Result<()>

fn ProcessOutput( &self, dwflags: u32, coutputbuffercount: u32, poutputsamples: *mut MFT_OUTPUT_DATA_BUFFER, pdwstatus: *mut u32 ) -> Result<()>

Object Safety§

This trait is not object safe.

Implementors§