- Notifications
You must be signed in to change notification settings - Fork548
VideoToolbox macOS xcode16.0 b4
Rolf Bjarne Kvinge edited this pageAug 30, 2024 ·3 revisions
#VideoToolbox.frameworkhttps://github.com/xamarin/xamarin-macios/pull/21157
diff -ruN /Applications/Xcode_16.0.0-beta3.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/VideoToolbox.framework/Headers/VTDecompressionProperties.h /Applications/Xcode_16.0.0-beta4.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/VideoToolbox.framework/Headers/VTDecompressionProperties.h--- /Applications/Xcode_16.0.0-beta3.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/VideoToolbox.framework/Headers/VTDecompressionProperties.h2024-06-29 09:44:17+++ /Applications/Xcode_16.0.0-beta4.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/VideoToolbox.framework/Headers/VTDecompressionProperties.h2024-07-13 04:31:58@@ -370,6 +370,31 @@ */ VT_EXPORT const CFStringRef kVTDecompressionPropertyKey_PixelFormatsWithReducedResolutionSupport API_AVAILABLE(macos(10.8), ios(8.0), tvos(10.2), visionos(1.0)) API_UNAVAILABLE(watchos); // Read-only, CFArray[CFNumber(CMPixelFormatType)], optional+/*!+@constantkVTDecompressionPropertyKey_AllowBitstreamToChangeFrameDimensions+@abstract+True if decoder is allowed to output buffers matching reduced frame dimensions in the bitstream rather than+under-filling them.+@discussion+This is an optional property only supported by video decoders for bitstream formats which have a provision+for specifying output dimensions per-frame, such as AV1.++If a decoder does not support this property or if the property value is set to `kCFBooleanFalse`, all decoded+frames will have the same dimensions as specified in the format description. In this case, if the bitstream+changes the frame dimensions, the output buffer will be padded to the dimensions specified in the format+description.++When this property is set to `kCFBooleanTrue`, the decoder will set the dimensions of each output buffer to+match the dimensions specified in the bitstream for that frame.++In all cases, output buffer dimensions will never exceed the dimensions specified in the format description.++In apps linked to SDK versions before this property was added, the AV1 decoder will behave as if this property+is set to `kCFBooleanFalse`. Otherwise, value of this property defaults to `kCFBooleanTrue` where supported.+*/++VT_EXPORT const CFStringRef kVTDecompressionPropertyKey_AllowBitstreamToChangeFrameDimensions API_AVAILABLE(macos(15.0), ios(18.0), tvos(18.0), visionos(2.0)) API_UNAVAILABLE(watchos); // Read/Write, CFBoolean, Optional+ #pragma mark Post-decompression processing // Standard properties about processing to be performed after decompression.@@ -440,6 +465,34 @@ the decoded frame will be analyzed and metadata will be added as an attachment to the CVPixelBuffer. */ VT_EXPORT const CFStringRef kVTDecompressionPropertyKey_GeneratePerFrameHDRDisplayMetadata API_AVAILABLE(macos(14.0), ios(17.0), tvos(17.0), visionos(1.0)) API_UNAVAILABLE(watchos); // CFBoolean, Read/Write, Optional, kCFBooleanFalse by default++/*!+@constant kVTDecompressionPropertyKey_DecoderProducesRAWOutput+@abstract+Indicates whether the decoder can produce RAW output requiring a VTRAWProcessingSession for post-decode processing.+@discussion+If this property is not implemented, it is assumed that the decoder does not produce RAW output.+If the decoder reports that it produces RAW output the VTDecompressionSession will internally invoke a VTRAWProcessingSession by default to produce+processed output.+If the client sets kVTDecompressionPropertyKey_RequestRAWOutput, the VTDecompressionSession will do no processing and return the decoder's native RAW+output, and any requested destinationImageBufferAttributes on the VTDecompressionSession will be ignored.+*/+VT_EXPORT const CFStringRef kVTDecompressionPropertyKey_DecoderProducesRAWOutput API_AVAILABLE(macos(15.0)) API_UNAVAILABLE(ios, tvos, watchos, visionos); // CFBoolean, Read, Optional++/*!+@constant kVTDecompressionPropertyKey_RequestRAWOutput+@abstract+For decoders which produce RAW output, this property requests that the VTDecompressionSession provide output which has not been processed.+@discussion+When a decoder produces RAW output (signalled by kVTDecompressionPropertyKey_DecoderProducesRAWOutput) the VTDecompressionSession will automatically+invoke a VTRAWProcessingSession with default settings and emit processed frames by default, or when kVTDecompressionPropertyKey_RequestRAWOutput is set+to kCFBooleanFalse.+If a client wants to run a VTRAWProcessingSession on the RAW output themselves in order to control the post-decode processing of the decoded CVPixelBuffers,+they must set kVTDecompressionPropertyKey_RequestRAWOutput to kCFBooleanTrue.+If kVTDecompressionPropertyKey_RequestRAWOutput has been enabled and the decoder produces RAW output, the VTDecompressionSession+will return CVPixelBuffers in the decoder's native RAW format. Any destinationImageBufferAttributes set on the VTDecompressionSession will be ignored.+*/+VT_EXPORT const CFStringRef kVTDecompressionPropertyKey_RequestRAWOutput API_AVAILABLE(macos(15.0)) API_UNAVAILABLE(ios, tvos, watchos, visionos); // CFBoolean, Read/Write, Optional, kCFBooleanFalse by default #pragma mark Multi-image decompression