pub struct VTDecompressionSession(/* private fields */);Implementations§
Source§impl VTDecompressionSession
impl VTDecompressionSession
pub fn new( video_format_description: CMVideoFormatDescription, video_decoder_specification: Option<CFDictionary<CFString, CFType>>, destination_image_buffer_attributes: Option<CFDictionary<CFString, CFType>>, ) -> Result<Self, OSStatus>
pub unsafe fn new_with_callback( video_format_description: CMVideoFormatDescription, video_decoder_specification: Option<CFDictionary<CFString, CFType>>, destination_image_buffer_attributes: Option<CFDictionary<CFString, CFType>>, output_callback: Option<*const VTDecompressionOutputCallbackRecord>, ) -> Result<Self, OSStatus>
pub unsafe fn decode_frame( &self, sample_buffer: CMSampleBuffer, decode_flags: VTDecodeFrameFlags, source_frame_ref_con: *mut c_void, ) -> Result<VTDecodeInfoFlags, OSStatus>
pub fn decode_frame_with_closure<F>( &self, sample_buffer: CMSampleBuffer, decode_flags: VTDecodeFrameFlags, closure: F, ) -> Result<VTDecodeInfoFlags, OSStatus>
pub fn finish_delayed_frames(&self) -> Result<(), OSStatus>
pub fn can_accept_format_description( &self, new_format_desc: CMFormatDescription, ) -> bool
pub fn wait_for_asynchronous_frames(&self) -> Result<(), OSStatus>
pub fn copy_black_pixel_buffer(&self) -> Result<CVPixelBuffer, OSStatus>
pub fn is_hardware_decode_supported(codec_type: CMVideoCodecType) -> bool
Trait Implementations§
Source§impl Clone for VTDecompressionSession
impl Clone for VTDecompressionSession
Source§impl Debug for VTDecompressionSession
impl Debug for VTDecompressionSession
Source§impl Drop for VTDecompressionSession
impl Drop for VTDecompressionSession
Source§impl PartialEq for VTDecompressionSession
impl PartialEq for VTDecompressionSession
Source§impl TCFType for VTDecompressionSession
impl TCFType for VTDecompressionSession
Source§fn as_concrete_TypeRef(&self) -> VTDecompressionSessionRef
fn as_concrete_TypeRef(&self) -> VTDecompressionSessionRef
Returns the object as its concrete
TypeRef.Source§unsafe fn wrap_under_get_rule(reference: VTDecompressionSessionRef) -> Self
unsafe fn wrap_under_get_rule(reference: VTDecompressionSessionRef) -> Self
Returns an instance of the object, wrapping the underlying
CFTypeRef subclass. Use this
when following Core Foundation’s “Get Rule”. The reference count is bumped.Source§fn as_CFTypeRef(&self) -> CFTypeRef
fn as_CFTypeRef(&self) -> CFTypeRef
Returns the object as a raw
CFTypeRef. The reference count is not adjusted.Source§unsafe fn wrap_under_create_rule(reference: VTDecompressionSessionRef) -> Self
unsafe fn wrap_under_create_rule(reference: VTDecompressionSessionRef) -> Self
Returns an instance of the object, wrapping the underlying
CFTypeRef subclass. Use this
when following Core Foundation’s “Create Rule”. The reference count is not bumped.Source§fn as_CFType(&self) -> CFType
fn as_CFType(&self) -> CFType
Returns the object as a wrapped
CFType. The reference count is incremented by one.Source§fn into_CFType(self) -> CFTypewhere
Self: Sized,
fn into_CFType(self) -> CFTypewhere
Self: Sized,
Returns the object as a wrapped
CFType. Consumes self and avoids changing the reference
count.Source§fn retain_count(&self) -> isize
fn retain_count(&self) -> isize
Returns the reference count of the object. It is unwise to do anything other than test
whether the return value of this method is greater than zero.
Source§fn instance_of<OtherCFType>(&self) -> boolwhere
OtherCFType: TCFType,
fn instance_of<OtherCFType>(&self) -> boolwhere
OtherCFType: TCFType,
Returns
true if this value is an instance of another type.Source§impl TVTSession for VTDecompressionSession
impl TVTSession for VTDecompressionSession
fn as_session(&self) -> VTSession
fn into_session(self) -> VTSessionwhere
Self: Sized,
Source§impl<'a> ToVoid<VTDecompressionSession> for &'a VTDecompressionSession
impl<'a> ToVoid<VTDecompressionSession> for &'a VTDecompressionSession
impl ConcreteCFType for VTDecompressionSession
impl Eq for VTDecompressionSession
Auto Trait Implementations§
impl Freeze for VTDecompressionSession
impl RefUnwindSafe for VTDecompressionSession
impl !Send for VTDecompressionSession
impl !Sync for VTDecompressionSession
impl Unpin for VTDecompressionSession
impl UnwindSafe for VTDecompressionSession
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more