windows::Win32::Media::MediaFoundation

Trait IDirectXVideoDecoderService_Impl

pub trait IDirectXVideoDecoderService_Impl: IDirectXVideoAccelerationService_Impl {
    // Required methods
    fn GetDecoderDeviceGuids(
        &self,
        pcount: *mut u32,
        pguids: *mut *mut GUID,
    ) -> Result<()>;
    fn GetDecoderRenderTargets(
        &self,
        guid: *const GUID,
        pcount: *mut u32,
        pformats: *mut *mut D3DFORMAT,
    ) -> Result<()>;
    fn GetDecoderConfigurations(
        &self,
        guid: *const GUID,
        pvideodesc: *const DXVA2_VideoDesc,
        preserved: *const c_void,
        pcount: *mut u32,
        ppconfigs: *mut *mut DXVA2_ConfigPictureDecode,
    ) -> Result<()>;
    fn CreateVideoDecoder(
        &self,
        guid: *const GUID,
        pvideodesc: *const DXVA2_VideoDesc,
        pconfig: *const DXVA2_ConfigPictureDecode,
        ppdecoderrendertargets: *const Option<IDirect3DSurface9>,
        numrendertargets: u32,
    ) -> Result<IDirectXVideoDecoder>;
}

Required Methods§

fn GetDecoderDeviceGuids( &self, pcount: *mut u32, pguids: *mut *mut GUID, ) -> Result<()>

fn GetDecoderRenderTargets( &self, guid: *const GUID, pcount: *mut u32, pformats: *mut *mut D3DFORMAT, ) -> Result<()>

fn GetDecoderConfigurations( &self, guid: *const GUID, pvideodesc: *const DXVA2_VideoDesc, preserved: *const c_void, pcount: *mut u32, ppconfigs: *mut *mut DXVA2_ConfigPictureDecode, ) -> Result<()>

fn CreateVideoDecoder( &self, guid: *const GUID, pvideodesc: *const DXVA2_VideoDesc, pconfig: *const DXVA2_ConfigPictureDecode, ppdecoderrendertargets: *const Option<IDirect3DSurface9>, numrendertargets: u32, ) -> Result<IDirectXVideoDecoder>

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.

Implementors§