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}