VTFrameProcessorConfiguration

Trait VTFrameProcessorConfiguration 

Source
pub unsafe trait VTFrameProcessorConfiguration:
    NSObjectProtocol
    + Send
    + Sync {
    // Provided methods
    unsafe fn isSupported() -> bool
       where Self: Sized + ClassType { ... }
    unsafe fn frameSupportedPixelFormats(&self) -> Retained<NSArray<NSNumber>>
       where Self: Sized + Message { ... }
    unsafe fn sourcePixelBufferAttributes(
        &self,
    ) -> Retained<NSDictionary<NSString, AnyObject>>
       where Self: Sized + Message { ... }
    unsafe fn destinationPixelBufferAttributes(
        &self,
    ) -> Retained<NSDictionary<NSString, AnyObject>>
       where Self: Sized + Message { ... }
    unsafe fn nextFrameCount(&self) -> NSInteger
       where Self: Sized + Message { ... }
    unsafe fn previousFrameCount(&self) -> NSInteger
       where Self: Sized + Message { ... }
    unsafe fn maximumDimensions() -> CMVideoDimensions
       where Self: Sized + ClassType { ... }
    unsafe fn minimumDimensions() -> CMVideoDimensions
       where Self: Sized + ClassType { ... }
}
Available on crate features VTFrameProcessorConfiguration and objc2 only.
Expand description

The protocol that describes the configuration of a processor for a video frame processing session.

Use VTFrameProcessorConfiguration protocol conformance to start a frame processing session. You can query these properties on an implementation conforming to VTFrameProcessorConfiguration without starting a session.

See also Apple’s documentation

Provided Methods§

Source

unsafe fn isSupported() -> bool
where Self: Sized + ClassType,

Returns a Boolean indicating whether the system supports this processor on the current configuration.

Source

unsafe fn frameSupportedPixelFormats(&self) -> Retained<NSArray<NSNumber>>
where Self: Sized + Message,

Available on crate feature objc2-foundation only.

List of supported pixel formats for source frames for the current configuration.

This property is not atomic.

§Safety

This might not be thread-safe.

Source

unsafe fn sourcePixelBufferAttributes( &self, ) -> Retained<NSDictionary<NSString, AnyObject>>
where Self: Sized + Message,

Available on crate feature objc2-foundation only.

Pixel buffer attributes dictionary that describes requirements for pixel buffers which represent source frames and reference frames.

Use CVPixelBufferCreateResolvedAttributesDictionary to combine this dictionary with your pixel buffer attributes dictionary.

This property is not atomic.

§Safety

This might not be thread-safe.

Source

unsafe fn destinationPixelBufferAttributes( &self, ) -> Retained<NSDictionary<NSString, AnyObject>>
where Self: Sized + Message,

Available on crate feature objc2-foundation only.

Pixel buffer attributes dictionary that describes requirements for pixel buffers which represent destination frames.

Use CVPixelBufferCreateResolvedAttributesDictionary to combine this dictionary with your pixel buffer attributes dictionary.

This property is not atomic.

§Safety

This might not be thread-safe.

Source

unsafe fn nextFrameCount(&self) -> NSInteger
where Self: Sized + Message,

Returns the number of “next” frames that this processor requires for processing.

This property is not atomic.

§Safety

This might not be thread-safe.

Source

unsafe fn previousFrameCount(&self) -> NSInteger
where Self: Sized + Message,

Returns the number of “previous” frames that this processor requires for processing.

This property is not atomic.

§Safety

This might not be thread-safe.

Source

unsafe fn maximumDimensions() -> CMVideoDimensions
where Self: Sized + ClassType,

Available on crate feature objc2-core-media only.

Returns the maximum dimensions for a sourceFrame for the processor.

Source

unsafe fn minimumDimensions() -> CMVideoDimensions
where Self: Sized + ClassType,

Available on crate feature objc2-core-media only.

Returns the minimum dimensions for a sourceFrame for the processor.

Trait Implementations§

Source§

impl ProtocolType for dyn VTFrameProcessorConfiguration

Source§

const NAME: &'static str = "VTFrameProcessorConfiguration"

The name of the Objective-C protocol that this type represents. Read more
Source§

fn protocol() -> Option<&'static AnyProtocol>

Get a reference to the Objective-C protocol object that this type represents. Read more
Source§

impl<T> ImplementedBy<T> for dyn VTFrameProcessorConfiguration

Implementations on Foreign Types§

Source§

impl<T> VTFrameProcessorConfiguration for ProtocolObject<T>

Implementors§

Source§

impl VTFrameProcessorConfiguration for VTFrameRateConversionConfiguration

Available on crate feature VTFrameProcessor_FrameRateConversion only.
Source§

impl VTFrameProcessorConfiguration for VTLowLatencyFrameInterpolationConfiguration

Available on crate feature VTFrameProcessor_LowLatencyFrameInterpolation only.
Source§

impl VTFrameProcessorConfiguration for VTLowLatencySuperResolutionScalerConfiguration

Available on crate feature VTFrameProcessor_LowLatencySuperResolutionScaler only.
Source§

impl VTFrameProcessorConfiguration for VTMotionBlurConfiguration

Available on crate feature VTFrameProcessor_MotionBlur only.
Source§

impl VTFrameProcessorConfiguration for VTOpticalFlowConfiguration

Available on crate feature VTFrameProcessor_OpticalFlow only.
Source§

impl VTFrameProcessorConfiguration for VTSuperResolutionScalerConfiguration

Available on crate feature VTFrameProcessor_SuperResolutionScaler only.
Source§

impl VTFrameProcessorConfiguration for VTTemporalNoiseFilterConfiguration

Available on crate feature VTFrameProcessor_TemporalNoiseFilter only.