Trait windows::Win32::Media::WindowsMediaFormat::IWMSyncReader_Impl
pub trait IWMSyncReader_Impl: Sized {
Show 21 methods
// Required methods
fn Open(&self, pwszfilename: &PCWSTR) -> Result<()>;
fn Close(&self) -> Result<()>;
fn SetRange(&self, cnsstarttime: u64, cnsduration: i64) -> Result<()>;
fn SetRangeByFrame(
&self,
wstreamnum: u16,
qwframenumber: u64,
cframestoread: i64,
) -> Result<()>;
fn GetNextSample(
&self,
wstreamnum: u16,
ppsample: *mut Option<INSSBuffer>,
pcnssampletime: *mut u64,
pcnsduration: *mut u64,
pdwflags: *mut u32,
pdwoutputnum: *mut u32,
pwstreamnum: *mut u16,
) -> Result<()>;
fn SetStreamsSelected(
&self,
cstreamcount: u16,
pwstreamnumbers: *const u16,
pselections: *const WMT_STREAM_SELECTION,
) -> Result<()>;
fn GetStreamSelected(&self, wstreamnum: u16) -> Result<WMT_STREAM_SELECTION>;
fn SetReadStreamSamples(
&self,
wstreamnum: u16,
fcompressed: BOOL,
) -> Result<()>;
fn GetReadStreamSamples(&self, wstreamnum: u16) -> Result<BOOL>;
fn GetOutputSetting(
&self,
dwoutputnum: u32,
pszname: &PCWSTR,
ptype: *mut WMT_ATTR_DATATYPE,
pvalue: *mut u8,
pcblength: *mut u16,
) -> Result<()>;
fn SetOutputSetting(
&self,
dwoutputnum: u32,
pszname: &PCWSTR,
type: WMT_ATTR_DATATYPE,
pvalue: *const u8,
cblength: u16,
) -> Result<()>;
fn GetOutputCount(&self) -> Result<u32>;
fn GetOutputProps(&self, dwoutputnum: u32) -> Result<IWMOutputMediaProps>;
fn SetOutputProps(
&self,
dwoutputnum: u32,
poutput: Option<&IWMOutputMediaProps>,
) -> Result<()>;
fn GetOutputFormatCount(&self, dwoutputnum: u32) -> Result<u32>;
fn GetOutputFormat(
&self,
dwoutputnum: u32,
dwformatnum: u32,
) -> Result<IWMOutputMediaProps>;
fn GetOutputNumberForStream(&self, wstreamnum: u16) -> Result<u32>;
fn GetStreamNumberForOutput(&self, dwoutputnum: u32) -> Result<u16>;
fn GetMaxOutputSampleSize(&self, dwoutput: u32) -> Result<u32>;
fn GetMaxStreamSampleSize(&self, wstream: u16) -> Result<u32>;
fn OpenStream(&self, pstream: Option<&IStream>) -> Result<()>;
}
Required Methods§
fn Open(&self, pwszfilename: &PCWSTR) -> Result<()>
fn Close(&self) -> Result<()>
fn SetRange(&self, cnsstarttime: u64, cnsduration: i64) -> Result<()>
fn SetRangeByFrame( &self, wstreamnum: u16, qwframenumber: u64, cframestoread: i64, ) -> Result<()>
fn GetNextSample( &self, wstreamnum: u16, ppsample: *mut Option<INSSBuffer>, pcnssampletime: *mut u64, pcnsduration: *mut u64, pdwflags: *mut u32, pdwoutputnum: *mut u32, pwstreamnum: *mut u16, ) -> Result<()>
fn SetStreamsSelected( &self, cstreamcount: u16, pwstreamnumbers: *const u16, pselections: *const WMT_STREAM_SELECTION, ) -> Result<()>
fn GetStreamSelected(&self, wstreamnum: u16) -> Result<WMT_STREAM_SELECTION>
fn SetReadStreamSamples(&self, wstreamnum: u16, fcompressed: BOOL) -> Result<()>
fn GetReadStreamSamples(&self, wstreamnum: u16) -> Result<BOOL>
fn GetOutputSetting( &self, dwoutputnum: u32, pszname: &PCWSTR, ptype: *mut WMT_ATTR_DATATYPE, pvalue: *mut u8, pcblength: *mut u16, ) -> Result<()>
fn SetOutputSetting( &self, dwoutputnum: u32, pszname: &PCWSTR, type: WMT_ATTR_DATATYPE, pvalue: *const u8, cblength: u16, ) -> Result<()>
fn GetOutputCount(&self) -> Result<u32>
fn GetOutputProps(&self, dwoutputnum: u32) -> Result<IWMOutputMediaProps>
fn SetOutputProps( &self, dwoutputnum: u32, poutput: Option<&IWMOutputMediaProps>, ) -> Result<()>
fn GetOutputFormatCount(&self, dwoutputnum: u32) -> Result<u32>
fn GetOutputFormat( &self, dwoutputnum: u32, dwformatnum: u32, ) -> Result<IWMOutputMediaProps>
fn GetOutputNumberForStream(&self, wstreamnum: u16) -> Result<u32>
fn GetStreamNumberForOutput(&self, dwoutputnum: u32) -> Result<u16>
fn GetMaxOutputSampleSize(&self, dwoutput: u32) -> Result<u32>
fn GetMaxStreamSampleSize(&self, wstream: u16) -> Result<u32>
fn OpenStream(&self, pstream: Option<&IStream>) -> Result<()>
Object Safety§
This trait is not object safe.