objc2_video_toolbox/generated/
VTPixelTransferProperties.rs

1//! This file has been automatically generated by `objc2`'s `header-translator`.
2//! DO NOT EDIT
3use core::ptr::NonNull;
4use objc2_core_foundation::*;
5
6use crate::*;
7
8extern "C" {
9    /// Indicates how images should be scaled.
10    ///
11    /// Depending on the scaling mode, scaling may take into account:
12    /// the full image buffer width and height of the source and destination,
13    /// the clean aperture attachment (kCVImageBufferCleanApertureKey) on the source image buffer,
14    /// the pixel aspect ratio attachment (kCVImageBufferPixelAspectRatioKey) on the source image buffer,
15    /// the destination clean aperture (kVTPixelTransferPropertyKey_DestinationCleanAperture), and/or
16    /// the destination pixel aspect ratio (kVTPixelTransferPropertyKey_DestinationPixelAspectRatio).
17    /// The destination image buffer's clean aperture and pixel aspect ratio attachments are not
18    /// taken into account, and will be overwritten.
19    ///
20    /// See also [Apple's documentation](https://developer.apple.com/documentation/videotoolbox/kvtpixeltransferpropertykey_scalingmode?language=objc)
21    pub static kVTPixelTransferPropertyKey_ScalingMode: &'static CFString;
22}
23
24extern "C" {
25    /// [Apple's documentation](https://developer.apple.com/documentation/videotoolbox/kvtscalingmode_normal?language=objc)
26    pub static kVTScalingMode_Normal: &'static CFString;
27}
28
29extern "C" {
30    /// [Apple's documentation](https://developer.apple.com/documentation/videotoolbox/kvtscalingmode_cropsourcetocleanaperture?language=objc)
31    pub static kVTScalingMode_CropSourceToCleanAperture: &'static CFString;
32}
33
34extern "C" {
35    /// [Apple's documentation](https://developer.apple.com/documentation/videotoolbox/kvtscalingmode_letterbox?language=objc)
36    pub static kVTScalingMode_Letterbox: &'static CFString;
37}
38
39extern "C" {
40    /// [Apple's documentation](https://developer.apple.com/documentation/videotoolbox/kvtscalingmode_trim?language=objc)
41    pub static kVTScalingMode_Trim: &'static CFString;
42}
43
44extern "C" {
45    /// Specifies the clean aperture for destination image buffers.
46    ///
47    /// The value of this property is a CFDictionary with same keys as used in the
48    /// kCVImageBufferCleanApertureKey dictionary.
49    /// This property is ignored in kVTScalingMode_Normal.
50    /// This property defaults to NULL, meaning the clean aperture is the full width and height.
51    ///
52    /// See also [Apple's documentation](https://developer.apple.com/documentation/videotoolbox/kvtpixeltransferpropertykey_destinationcleanaperture?language=objc)
53    pub static kVTPixelTransferPropertyKey_DestinationCleanAperture: &'static CFString;
54}
55
56extern "C" {
57    /// Specifies the pixel aspect ratio for destination image buffers.
58    ///
59    /// The value of this property is a CFDictionary with same keys as used in the
60    /// kCVImageBufferPixelAspectRatioKey dictionary.
61    /// This property is ignored in kVTScalingMode_Normal.
62    /// This property defaults to NULL, meaning 1:1 (for kVTScalingMode_CropSourceToCleanAperture)
63    /// or no change in pixel aspect ratio (for kVTScalingMode_Letterbox and kVTScalingMode_Trim).
64    ///
65    /// See also [Apple's documentation](https://developer.apple.com/documentation/videotoolbox/kvtpixeltransferpropertykey_destinationpixelaspectratio?language=objc)
66    pub static kVTPixelTransferPropertyKey_DestinationPixelAspectRatio: &'static CFString;
67}
68
69extern "C" {
70    /// Requests a specific chroma downsampling technique be used.
71    ///
72    /// This property is ignored if chroma downsampling is not performed.
73    ///
74    /// See also [Apple's documentation](https://developer.apple.com/documentation/videotoolbox/kvtpixeltransferpropertykey_downsamplingmode?language=objc)
75    pub static kVTPixelTransferPropertyKey_DownsamplingMode: &'static CFString;
76}
77
78extern "C" {
79    /// [Apple's documentation](https://developer.apple.com/documentation/videotoolbox/kvtdownsamplingmode_decimate?language=objc)
80    pub static kVTDownsamplingMode_Decimate: &'static CFString;
81}
82
83extern "C" {
84    /// [Apple's documentation](https://developer.apple.com/documentation/videotoolbox/kvtdownsamplingmode_average?language=objc)
85    pub static kVTDownsamplingMode_Average: &'static CFString;
86}
87
88extern "C" {
89    /// Specifies the color primaries to be used for destination image buffers.
90    ///
91    /// Specifying this value may lead to performance degradation, as a color
92    /// matching operation may need to be performed between the source and
93    /// the destination.
94    ///
95    /// See also [Apple's documentation](https://developer.apple.com/documentation/videotoolbox/kvtpixeltransferpropertykey_destinationcolorprimaries?language=objc)
96    pub static kVTPixelTransferPropertyKey_DestinationColorPrimaries: &'static CFString;
97}
98
99extern "C" {
100    /// Specifies the color transfer function to be used for destination image buffers.
101    ///
102    /// Specifying this value may lead to performance degradation, as a color
103    /// matching operation may need to be performed between the source and
104    /// the destination.
105    ///
106    /// See also [Apple's documentation](https://developer.apple.com/documentation/videotoolbox/kvtpixeltransferpropertykey_destinationtransferfunction?language=objc)
107    pub static kVTPixelTransferPropertyKey_DestinationTransferFunction: &'static CFString;
108}
109
110extern "C" {
111    /// Specifies the ICC profile for destination image buffers.
112    ///
113    /// Specifying this value may lead to performance degradation, as a color
114    /// matching operation may need to be performed between the source and
115    /// the destination.
116    ///
117    /// See also [Apple's documentation](https://developer.apple.com/documentation/videotoolbox/kvtpixeltransferpropertykey_destinationiccprofile?language=objc)
118    pub static kVTPixelTransferPropertyKey_DestinationICCProfile: &'static CFString;
119}
120
121extern "C" {
122    /// Specifies the color matrix to be used for YCbCr->RGB conversions
123    /// involving the destination image buffers.
124    ///
125    /// Specifying this value may lead to performance degradation, as a color
126    /// matching operation may need to be performed between the source and
127    /// the destination.
128    ///
129    /// See also [Apple's documentation](https://developer.apple.com/documentation/videotoolbox/kvtpixeltransferpropertykey_destinationycbcrmatrix?language=objc)
130    pub static kVTPixelTransferPropertyKey_DestinationYCbCrMatrix: &'static CFString;
131}
132
133extern "C" {
134    /// Hints the transfer session that the operation is, or is not, being performed in real time.
135    ///
136    /// Set this property to kCFBooleanTrue to indicate that the transfer is part of realtime operation.  If set to
137    /// true, the VTPixelTransferSession may be given precedence over non-realtime tasks.  This can be set to false
138    /// for transfers being performed as part of background operations.
139    /// By default this value is NULL indicating that it is unspecified.
140    ///
141    /// See also [Apple's documentation](https://developer.apple.com/documentation/videotoolbox/kvtpixeltransferpropertykey_realtime?language=objc)
142    pub static kVTPixelTransferPropertyKey_RealTime: &'static CFString;
143}