Struct PrSDKClipRenderSuite

Source
#[repr(C, packed(1))]
pub struct PrSDKClipRenderSuite { pub SupportsClipRenderSuite: Option<unsafe extern "C" fn(inClipID: PrClipID, outSupported: *mut prBool, outAsyncIOSupported: *mut prBool) -> prSuiteError>, pub GetNumPixelFormats: Option<unsafe extern "C" fn(inClipID: PrClipID, outNumPixelFormats: *mut csSDK_int32) -> prSuiteError>, pub GetPixelFormat: Option<unsafe extern "C" fn(inClipID: PrClipID, inIndex: csSDK_int32, outPixelFormat: *mut PrPixelFormat) -> prSuiteError>, pub GetNumPreferredFrameSizes: Option<unsafe extern "C" fn(inClipID: PrClipID, inPixelFormat: PrPixelFormat, outNumPreferredFrameSizes: *mut csSDK_int32) -> prSuiteError>, pub GetPreferredFrameSize: Option<unsafe extern "C" fn(inClipID: PrClipID, inPixelFormat: PrPixelFormat, inIndex: csSDK_int32, outWidth: *mut csSDK_int32, outHeight: *mut csSDK_int32) -> prSuiteError>, pub InitiateAsyncRead: Option<unsafe extern "C" fn(inClipID: PrClipID, inFrameTime: *const PrTime, inFormat: *mut ClipFrameFormat) -> prSuiteError>, pub CancelAsyncRead: Option<unsafe extern "C" fn(inClipID: PrClipID, inFrameTime: *const PrTime, inFormat: *mut ClipFrameFormat) -> prSuiteError>, pub FindFrame: Option<unsafe extern "C" fn(inClipID: PrClipID, inFrameTime: *const PrTime, inFormats: *mut ClipFrameFormat, inNumFormats: csSDK_int32, inSynchronous: bool, outFrame: *mut PPixHand) -> prSuiteError>, pub GetClipFieldType: Option<unsafe extern "C" fn(inClipID: PrClipID, outFieldType: *mut prFieldType) -> prSuiteError>, pub GetNumCustomPixelFormats: Option<unsafe extern "C" fn(inClipID: PrClipID, outNumPixelFormats: *mut csSDK_int32) -> prSuiteError>, pub GetCustomPixelFormat: Option<unsafe extern "C" fn(inClipID: PrClipID, inIndex: csSDK_int32, outPixelFormat: *mut PrPixelFormat) -> prSuiteError>, }

Fields§

§SupportsClipRenderSuite: Option<unsafe extern "C" fn(inClipID: PrClipID, outSupported: *mut prBool, outAsyncIOSupported: *mut prBool) -> prSuiteError>

Does this clip support the clip render suite functions?

@param inClipID The ClipID of the clip. @param outSupported If true, the clip supports the ClipRenderSuite. @param outAsyncIOSupported If true, the clip supports asynchronous IO. If false, the clip does not directly support asynchronous IO, however it is still legal to call InitiateAsyncRead. Pass nil if you do not need this information.

§GetNumPixelFormats: Option<unsafe extern "C" fn(inClipID: PrClipID, outNumPixelFormats: *mut csSDK_int32) -> prSuiteError>

Given a specific clip, find out the number of pixel formats natively supported by this clip.

@param inClipID The ClipID of the clip. @param outNumPixelFormats The number of pixel formats.

§GetPixelFormat: Option<unsafe extern "C" fn(inClipID: PrClipID, inIndex: csSDK_int32, outPixelFormat: *mut PrPixelFormat) -> prSuiteError>

Given a specific clip get a native pixel format. The pixel formats will be returned in index order based on preference. The maximum index can be determined by using GetNumPixelFormats().

@param inClipID The ClipID of the clip. @param inIndex The pixel format index. @param outPixelFormat The pixel format.

§GetNumPreferredFrameSizes: Option<unsafe extern "C" fn(inClipID: PrClipID, inPixelFormat: PrPixelFormat, outNumPreferredFrameSizes: *mut csSDK_int32) -> prSuiteError>

Given a specific clip and pixel format, find out the number of preferred frame sizes for this clip. A preferred frame size is a size which represents a “native” size of the media.

@param inClipID The ClipID of the clip. @param inPixelFormat The pixel format to query for preferrred sizes. @param outNumPreferredFrameSizes The number of sizes for this clip and pixel format.

§GetPreferredFrameSize: Option<unsafe extern "C" fn(inClipID: PrClipID, inPixelFormat: PrPixelFormat, inIndex: csSDK_int32, outWidth: *mut csSDK_int32, outHeight: *mut csSDK_int32) -> prSuiteError>

Given a specific clip and pixel format, get a preferred size. The sizes will be returned in index order based on preference. The maximum index can be determined by using GetNumPreferredFrameSizes().

@param inClipID The ClipID of the clip. @param inPixelFormat The pixel format to query for preferrred sizes. @param inIndex The preferred size index. @param outWidth The width of the preferred size. 0 means any width. @param outHeight The height of the preferred size. 0 means any height.

§InitiateAsyncRead: Option<unsafe extern "C" fn(inClipID: PrClipID, inFrameTime: *const PrTime, inFormat: *mut ClipFrameFormat) -> prSuiteError>

Initiate an asynchronous read for the specified frame. Note that you cannot specify a specific frame format here. The clip will prefetch whatever data possible to facilitate a faster decode, and return.

@param inClipID The ClipID of the clip. @param inFrameTime The time of the video frame number. @param inFormat The preferred format for the frame.

§CancelAsyncRead: Option<unsafe extern "C" fn(inClipID: PrClipID, inFrameTime: *const PrTime, inFormat: *mut ClipFrameFormat) -> prSuiteError>

Cancel an asynchronous read for the specified frame. Note that you cannot specify a specific frame format here.

@param inClipID The ClipID of the clip. @param inFrameTime The time of the video frame number. @param inFormat The preferred format for the frame.

§FindFrame: Option<unsafe extern "C" fn(inClipID: PrClipID, inFrameTime: *const PrTime, inFormats: *mut ClipFrameFormat, inNumFormats: csSDK_int32, inSynchronous: bool, outFrame: *mut PPixHand) -> prSuiteError>

Find a frame of a specific format in the cache. This function will first look for a match in the supplied list of formats. If it does not find one, it will ask the importer to decode one out of cached raw data. It will not access the disk for new raw data, so it will fail if the required data is not in the cache.

@param inClipID The ClipID of the clip. @param inFrameTime The time of the video frame number. @param inFormats An array of formats that would be acceptable. Each format must be a combination of supported pixel formats and preferred frame sizes. May be NULL, in which case in format may be returned. @param inNumFormats The number of items in inFormats. May be 0. @param inSynchronous If true, the function will render the file from disk if necessary @param outFrame The found frame. May be NULL if it was not found.

§GetClipFieldType: Option<unsafe extern "C" fn(inClipID: PrClipID, outFieldType: *mut prFieldType) -> prSuiteError>

What is the field type of this clip? Added in version 2.

@param inClipID The ClipID of the clip. @param outFieldType See prFieldType in PrSDKTypes.h

§GetNumCustomPixelFormats: Option<unsafe extern "C" fn(inClipID: PrClipID, outNumPixelFormats: *mut csSDK_int32) -> prSuiteError>

Given a specific clip, find out the number of custom pixel formats natively supported by this clip.

@param inClipID The ClipID of the clip. @param outNumPixelFormats The number of pixel formats.

§GetCustomPixelFormat: Option<unsafe extern "C" fn(inClipID: PrClipID, inIndex: csSDK_int32, outPixelFormat: *mut PrPixelFormat) -> prSuiteError>

Given a specific clip get a native pixel format. The pixel formats will be returned in index order based on preference. The maximum index can be determined by using GetNumPixelFormats().

@param inClipID The ClipID of the clip. @param inIndex The pixel format index. @param outPixelFormat The pixel format.

Trait Implementations§

Source§

impl Clone for PrSDKClipRenderSuite

Source§

fn clone(&self) -> PrSDKClipRenderSuite

Returns a duplicate of the value. Read more
1.0.0 · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl Debug for PrSDKClipRenderSuite

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl Copy for PrSDKClipRenderSuite

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> ToOwned for T
where T: Clone,

Source§

type Owned = T

The resulting type after obtaining ownership.
Source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
Source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.