Package apple.videotoolbox.c
Class VideoToolbox
- java.lang.Object
-
- apple.videotoolbox.c.VideoToolbox
-
public final class VideoToolbox extends java.lang.Object
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static interfaceVideoToolbox.Block_VTCompressionSessionEncodeFrameWithOutputHandlerstatic interfaceVideoToolbox.Block_VTCompressionSessionEncodeMultiImageFrameWithOutputHandlerstatic interfaceVideoToolbox.Block_VTDecompressionSessionDecodeFrameWithMultiImageCapableOutputHandlerstatic interfaceVideoToolbox.Block_VTDecompressionSessionDecodeFrameWithOutputHandlerstatic interfaceVideoToolbox.Block_VTFrameSiloCallBlockForEachSampleBufferstatic interfaceVideoToolbox.Function_VTCompressionSessionCreatestatic interfaceVideoToolbox.Function_VTDecompressionSessionSetMultiImageCallbackstatic interfaceVideoToolbox.Function_VTFrameSiloCallFunctionForEachSampleBuffer
-
Method Summary
All Methods Static Methods Concrete Methods Modifier and Type Method Description static @NotNull CFStringRefkVTAlphaChannelMode_PremultipliedAlpha()API-Since: 13.0static @NotNull CFStringRefkVTAlphaChannelMode_StraightAlpha()API-Since: 13.0static @NotNull CFStringRefkVTCompressionPropertyKey_AllowFrameReordering()Read/Write, CFBoolean, Optional, defaults to true API-Since: 8.0static @NotNull CFStringRefkVTCompressionPropertyKey_AllowOpenGOP()Read/Write, CFBoolean, Optional API-Since: 12.0static @NotNull CFStringRefkVTCompressionPropertyKey_AllowTemporalCompression()Read/Write, CFBoolean, Optional, defaults to true API-Since: 8.0static @NotNull CFStringRefkVTCompressionPropertyKey_AlphaChannelMode()Read/write, Optional, CFString(kVTAlphaChannelMode_*); if property is not set, matches first source frame's attachment; if that's also not set, defaults to premultiplied alpha API-Since: 13.0static @NotNull CFStringRefkVTCompressionPropertyKey_AspectRatio16x9()Read/write, CFBoolean, Optional API-Since: 8.0static @NotNull CFStringRefkVTCompressionPropertyKey_AverageBitRate()Read/write, CFNumber, Optional API-Since: 8.0 static @NotNull CFStringRefkVTCompressionPropertyKey_BaseLayerBitRateFraction()Read/write, CFNumber, Optional API-Since: 15.0 static @NotNull CFStringRefkVTCompressionPropertyKey_BaseLayerFrameRate()Read/write, CFNumber, Optional API-Since: 11.0static @NotNull CFStringRefkVTCompressionPropertyKey_BaseLayerFrameRateFraction()Read/write, CFNumber, Optional API-Since: 14.5 static @NotNull CFStringRefkVTCompressionPropertyKey_CleanAperture()Read/write, CFDictionary (see CMFormatDescription.h), Optional API-Since: 8.0static @NotNull CFStringRefkVTCompressionPropertyKey_ColorPrimaries()Read/write, CFString (see kCMFormatDescriptionExtension_ColorPrimaries), Optional API-Since: 8.0static @NotNull CFStringRefkVTCompressionPropertyKey_ConstantBitRate()CFNumber bits per second, Optional API-Since: 16.0static @NotNull CFStringRefkVTCompressionPropertyKey_ContentLightLevelInfo()Read/write, CFData(4 bytes) (see kCMFormatDescriptionExtension_ContentLightLevelInfo), Optional API-Since: 11.0static @NotNull CFStringRefkVTCompressionPropertyKey_DataRateLimits()Read/write, CFArray[CFNumber], [bytes, seconds, bytes, seconds...], Optional API-Since: 8.0static @NotNull CFStringRefkVTCompressionPropertyKey_Depth()Read/write, CFNumber (CMPixelFormatType), Optional API-Since: 8.0static @NotNull CFStringRefkVTCompressionPropertyKey_EnableLTR()Read/write, CFBoolean, Optional API-Since: 15.0static @NotNull CFStringRefkVTCompressionPropertyKey_EncoderID()CFStringRef API-Since: 11.0static @NotNull CFStringRefkVTCompressionPropertyKey_EstimatedAverageBytesPerFrame()Read Only, CFNumber (bytes per frame) API-Since: 16.0static @NotNull CFStringRefkVTCompressionPropertyKey_ExpectedDuration()Read/write, CFNumber(seconds), Optional API-Since: 8.0static @NotNull CFStringRefkVTCompressionPropertyKey_ExpectedFrameRate()Read/write, CFNumber, Optional API-Since: 8.0static @NotNull CFStringRefkVTCompressionPropertyKey_FieldCount()Read/write, CFNumber (see kCMFormatDescriptionExtension_FieldCount), Optional API-Since: 8.0static @NotNull CFStringRefkVTCompressionPropertyKey_FieldDetail()Read/write, CFString (see kCMFormatDescriptionExtension_FieldDetail), Optional API-Since: 8.0static @NotNull CFStringRefkVTCompressionPropertyKey_GammaLevel()Read/write, CFNumber (see kCMFormatDescriptionExtension_GammaLevel), Optionalstatic @NotNull CFStringRefkVTCompressionPropertyKey_H264EntropyMode()Read/write, CFString, optional API-Since: 8.0static @NotNull CFStringRefkVTCompressionPropertyKey_HasLeftStereoEyeView()CFBoolean, see kCMFormatDescriptionExtension_HasLeftStereoEyeView API-Since: 17.0static @NotNull CFStringRefkVTCompressionPropertyKey_HasRightStereoEyeView()CFBoolean, see kCMFormatDescriptionExtension_HasRightStereoEyeView API-Since: 17.0static @NotNull CFStringRefkVTCompressionPropertyKey_HDRMetadataInsertionMode()Read/write, CFString, Optional, default is kVTHDRMetadataInsertionMode_Auto API-Since: 14.0static @NotNull CFStringRefkVTCompressionPropertyKey_HeroEye()CFString, see kCMFormatDescriptionExtension_HeroEye API-Since: 17.0static @NotNull CFStringRefkVTCompressionPropertyKey_HorizontalDisparityAdjustment()CFNumber(int32), see kCMFormatDescriptionExtension_HorizontalDisparityAdjustment API-Since: 17.0static @NotNull CFStringRefkVTCompressionPropertyKey_ICCProfile()Read/write, CFData (see kCMFormatDescriptionExtension_ICCProfile), Optional API-Since: 8.0static @NotNull CFStringRefkVTCompressionPropertyKey_MasteringDisplayColorVolume()Read/write, CFData(24 bytes) (see kCMFormatDescriptionExtension_MasteringDisplayColorVolume), Optional API-Since: 11.0static @NotNull CFStringRefkVTCompressionPropertyKey_MaxAllowedFrameQP()Read/write, CFNumberRef, Optional API-Since: 15.0static @NotNull CFStringRefkVTCompressionPropertyKey_MaxFrameDelayCount()Read/write, CFNumber, Optional API-Since: 8.0static @NotNull CFStringRefkVTCompressionPropertyKey_MaxH264SliceBytes()Read/write, CFNumber, Optional API-Since: 8.0 static @NotNull CFStringRefkVTCompressionPropertyKey_MaximizePowerEfficiency()Read/write, CFBoolean or NULL, Optional, default is false API-Since: 12.0static @NotNull CFStringRefkVTCompressionPropertyKey_MaxKeyFrameInterval()Read/write, CFNumber, Optional API-Since: 8.0 static @NotNull CFStringRefkVTCompressionPropertyKey_MaxKeyFrameIntervalDuration()Read/write, CFNumber, Optional API-Since: 8.0 static @NotNull CFStringRefkVTCompressionPropertyKey_MinAllowedFrameQP()Read/write, CFNumberRef, Optional API-Since: 16.0static @NotNull CFStringRefkVTCompressionPropertyKey_MoreFramesAfterEnd()Read/write, CFBoolean, Optional API-Since: 8.0static @NotNull CFStringRefkVTCompressionPropertyKey_MoreFramesBeforeStart()Read/write, CFBoolean, Optional API-Since: 8.0static @NotNull CFStringRefkVTCompressionPropertyKey_MultiPassStorage()VTMultiPassStorage, optional, default is NULL API-Since: 8.0static @NotNull CFStringRefkVTCompressionPropertyKey_MVHEVCLeftAndRightViewIDs()Read/write, CFArray[CFNumber(left view ID), CFNumber(right view ID)], Optional API-Since: 17.0static @NotNull CFStringRefkVTCompressionPropertyKey_MVHEVCVideoLayerIDs()Read/write, CFArray(CFNumber), Optional API-Since: 17.0static @NotNull CFStringRefkVTCompressionPropertyKey_MVHEVCViewIDs()Read/write, CFArray(CFNumber), Optional API-Since: 17.0static @NotNull CFStringRefkVTCompressionPropertyKey_NumberOfPendingFrames()Read-only, CFNumberAPI-Since: 8.0 static @NotNull CFStringRefkVTCompressionPropertyKey_OutputBitDepth()Read/write, Optional, CFNumber, NULL by default API-Since: 15.4static @NotNull CFStringRefkVTCompressionPropertyKey_PixelAspectRatio()Read/write, CFDictionary (see CMFormatDescription.h), Optional API-Since: 8.0static @NotNull CFStringRefkVTCompressionPropertyKey_PixelBufferPoolIsShared()Read-only, CFBoolean API-Since: 8.0static @NotNull CFStringRefkVTCompressionPropertyKey_PixelTransferProperties()Read/Write, CFDictionary containing properties from VTPixelTransferProperties.h.static @NotNull CFStringRefkVTCompressionPropertyKey_PreserveAlphaChannel()Read/write, CFBoolean, Optional, (effectively) kCFBooleanTrue by default API-Since: 16.0static @NotNull CFStringRefkVTCompressionPropertyKey_PreserveDynamicHDRMetadata()CFBoolean, Write, Optional API-Since: 14.0static @NotNull CFStringRefkVTCompressionPropertyKey_PrioritizeEncodingSpeedOverQuality()CFBoolean, Optional API-Since: 14.0static @NotNull CFStringRefkVTCompressionPropertyKey_ProfileLevel()Read/write, CFString (enumeration), Optional API-Since: 8.0static @NotNull CFStringRefkVTCompressionPropertyKey_ProgressiveScan()Read/write, CFBoolean, Optional API-Since: 8.0static @NotNull CFStringRefkVTCompressionPropertyKey_Quality()Read/write, CFNumber, Optional API-Since: 8.0 static @NotNull CFStringRefkVTCompressionPropertyKey_RealTime()Read/write, CFBoolean or NULL, Optional, default NULL API-Since: 8.0static @NotNull CFStringRefkVTCompressionPropertyKey_ReferenceBufferCount()CFNumber, Optional API-Since: 16.0static @NotNull CFStringRefkVTCompressionPropertyKey_SourceFrameCount()Read/write, CFNumber, Optional API-Since: 8.0static @NotNull CFStringRefkVTCompressionPropertyKey_StereoCameraBaseline()CFNumber(uint32), see kCMFormatDescriptionExtension_StereoCameraBaseline API-Since: 17.0static @NotNull CFStringRefkVTCompressionPropertyKey_SupportsBaseFrameQP()Read only, CFBoolean, Optional, false by default API-Since: 15.0static @NotNull CFStringRefkVTCompressionPropertyKey_TargetQualityForAlpha()Read/write, CFNumber, Optional, NULL by default API-Since: 13.0 static @NotNull CFStringRefkVTCompressionPropertyKey_TransferFunction()Read/write, CFString (see kCMFormatDescriptionExtension_TransferFunction), Optional API-Since: 8.0static @NotNull CFStringRefkVTCompressionPropertyKey_UsingGPURegistryID()CFNumberRef, Read;static @NotNull CFStringRefkVTCompressionPropertyKey_VideoEncoderPixelBufferAttributes()Read-only, CFDictionary API-Since: 8.0static @NotNull CFStringRefkVTCompressionPropertyKey_YCbCrMatrix()Read/write, CFString (see kCMFormatDescriptionExtension_YCbCrMatrix), Optional API-Since: 8.0static @NotNull CFStringRefkVTDecompressionProperty_DeinterlaceMode_Temporal()apply filter that makes use of a window of multiple frames to generate deinterlaced results, and provides a better result at the expense of a pipeline delay; this mode is only used if kVTDecodeFrame_EnableTemporalProcessing is set, otherwise a non-temporal mode (eg, VerticalFilter) will be used instead API-Since: 8.0static @NotNull CFStringRefkVTDecompressionProperty_DeinterlaceMode_VerticalFilter()apply 0.25-0.50-0.25 vertical filter to individual interlaced frames; default mode API-Since: 8.0static @NotNull CFStringRefkVTDecompressionProperty_FieldMode_BothFields()API-Since: 8.0static @NotNull CFStringRefkVTDecompressionProperty_FieldMode_BottomFieldOnly()API-Since: 8.0static @NotNull CFStringRefkVTDecompressionProperty_FieldMode_DeinterlaceFields()API-Since: 8.0static @NotNull CFStringRefkVTDecompressionProperty_FieldMode_SingleField()Most appropriate of either TopFieldOnly or BottomFieldOnly API-Since: 8.0static @NotNull CFStringRefkVTDecompressionProperty_FieldMode_TopFieldOnly()API-Since: 8.0static @NotNull CFStringRefkVTDecompressionProperty_OnlyTheseFrames_AllFrames()API-Since: 8.0static @NotNull CFStringRefkVTDecompressionProperty_OnlyTheseFrames_IFrames()API-Since: 8.0static @NotNull CFStringRefkVTDecompressionProperty_OnlyTheseFrames_KeyFrames()API-Since: 8.0static @NotNull CFStringRefkVTDecompressionProperty_OnlyTheseFrames_NonDroppableFrames()API-Since: 8.0static @NotNull CFStringRefkVTDecompressionProperty_TemporalLevelLimit()Read/write, CFNumber API-Since: 11.0static @NotNull CFStringRefkVTDecompressionPropertyKey_ContentHasInterframeDependencies()Read-only, CFBoolean API-Since: 8.0static @NotNull CFStringRefkVTDecompressionPropertyKey_DeinterlaceMode()Read/write, CFString; only applicable if kVTDecompressionPropertyKey_FieldMode is kVTDecompressionProperty_FieldMode_DeinterlaceFields; supported values may include: API-Since: 8.0static @NotNull CFStringRefkVTDecompressionPropertyKey_FieldMode()Read/write, CFString, one of API-Since: 8.0static @NotNull CFStringRefkVTDecompressionPropertyKey_GeneratePerFrameHDRDisplayMetadata()CFBoolean, Read/Write, Optional, kCFBooleanFalse by default API-Since: 17.0static @NotNull CFStringRefkVTDecompressionPropertyKey_MaximizePowerEfficiency()Read/write, CFBoolean or NULL, Optional, default is false API-Since: 8.0static @NotNull CFStringRefkVTDecompressionPropertyKey_MaxOutputPresentationTimeStampOfFramesBeingDecoded()Read-only, CMTime as CFDictionary.static @NotNull CFStringRefkVTDecompressionPropertyKey_MinOutputPresentationTimeStampOfFramesBeingDecoded()Read-only, CMTime as CFDictionary.static @NotNull CFStringRefkVTDecompressionPropertyKey_NumberOfFramesBeingDecoded()Read-only, CFNumber.static @NotNull CFStringRefkVTDecompressionPropertyKey_OnlyTheseFrames()Read/write, CFString, supported values may include: API-Since: 8.0static @NotNull CFStringRefkVTDecompressionPropertyKey_OutputPoolRequestedMinimumBufferCount()Read/Write, CFNumberRef API-Since: 8.0static @NotNull CFStringRefkVTDecompressionPropertyKey_PixelBufferPool()Read-only, CVPixelBufferPool API-Since: 8.0static @NotNull CFStringRefkVTDecompressionPropertyKey_PixelBufferPoolIsShared()Read-only, CFBoolean API-Since: 8.0static @NotNull CFStringRefkVTDecompressionPropertyKey_PixelFormatsWithReducedResolutionSupport()Read-only, CFArray[CFNumber(CMPixelFormatType)], optional API-Since: 8.0static @NotNull CFStringRefkVTDecompressionPropertyKey_PixelTransferProperties()Read/Write, CFDictionary containing properties from VTPixelTransferProperties.h.static @NotNull CFStringRefkVTDecompressionPropertyKey_PropagatePerFrameHDRDisplayMetadata()Read/write, CFBoolean, Optional, default is kCFBooleanTrue API-Since: 14.0static @NotNull CFStringRefkVTDecompressionPropertyKey_RealTime()Read/write, CFBoolean or NULL, Optional, default is true API-Since: 8.0static @NotNull CFStringRefkVTDecompressionPropertyKey_ReducedCoefficientDecode()Read/write, CFNumber API-Since: 8.0static @NotNull CFStringRefkVTDecompressionPropertyKey_ReducedFrameDelivery()Read/write, CFNumber in range [0.0,1.0].static @NotNull CFStringRefkVTDecompressionPropertyKey_ReducedResolutionDecode()Read/write, CFDictionary containing width and height keys and CFNumber values: API-Since: 8.0static @NotNull CFStringRefkVTDecompressionPropertyKey_RequestedMVHEVCVideoLayerIDs()Read/write, CFArray(CFNumber), Optional API-Since: 17.0static @NotNull CFStringRefkVTDecompressionPropertyKey_SuggestedQualityOfServiceTiers()Read-only, CFArray of CFDictionaries containing property key/value pairs API-Since: 8.0static @NotNull CFStringRefkVTDecompressionPropertyKey_SupportedPixelFormatsOrderedByPerformance()Read-only, CFArray[CFNumber(CMPixelFormatType)] ordered fast to slow, optional API-Since: 8.0static @NotNull CFStringRefkVTDecompressionPropertyKey_SupportedPixelFormatsOrderedByQuality()Read-only, CFArray[CFNumber(CMPixelFormatType)] ordered best to worst, optional API-Since: 8.0static @NotNull CFStringRefkVTDecompressionPropertyKey_ThreadCount()Read/write, CFNumber API-Since: 8.0static @NotNull CFStringRefkVTDecompressionPropertyKey_UsingGPURegistryID()CFNumberRef, Read;static @NotNull CFStringRefkVTDecompressionPropertyKey_UsingHardwareAcceleratedVideoDecoder()CFBoolean, Read; assumed false by default API-Since: 17.0static @NotNull CFStringRefkVTDecompressionResolutionKey_Height()CFNumber API-Since: 8.0static @NotNull CFStringRefkVTDecompressionResolutionKey_Width()CFNumber API-Since: 8.0static @NotNull CFStringRefkVTDownsamplingMode_Average()Average missing samples (default center) API-Since: 9.0static @NotNull CFStringRefkVTDownsamplingMode_Decimate()Default, decimate extra samples API-Since: 9.0static @NotNull CFStringRefkVTEncodeFrameOptionKey_AcknowledgedLTRTokens()CFArray[CFNumberRef], Optional API-Since: 15.0static @NotNull CFStringRefkVTEncodeFrameOptionKey_BaseFrameQP()CFNumberRef, Optional API-Since: 15.0static @NotNull CFStringRefkVTEncodeFrameOptionKey_ForceKeyFrame()CFBoolean API-Since: 8.0static @NotNull CFStringRefkVTEncodeFrameOptionKey_ForceLTRRefresh()CFNumberRef, Optional API-Since: 15.0static @NotNull CFStringRefkVTH264EntropyMode_CABAC()API-Since: 8.0static @NotNull CFStringRefkVTH264EntropyMode_CAVLC()API-Since: 8.0static @NotNull CFStringRefkVTHDRMetadataInsertionMode_Auto()API-Since: 14.0static @NotNull CFStringRefkVTHDRMetadataInsertionMode_None()API-Since: 14.0static @NotNull CFStringRefkVTMultiPassStorageCreationOption_DoNotDelete()CFBoolean, false by default.static @NotNull CFStringRefkVTPixelRotationPropertyKey_FlipHorizontalOrientation()[@constant] kVTPixelRotationPropertyKey_FlipHorizontalOrientation Specifies the horizontal flip.static @NotNull CFStringRefkVTPixelRotationPropertyKey_FlipVerticalOrientation()[@constant] kVTPixelRotationPropertyKey_FlipVerticalOrientation Specifies the vertical flip.static @NotNull CFStringRefkVTPixelRotationPropertyKey_Rotation()[@constant] kVTPixelRotationPropertyKey_Rotation Specifies the amount of rotation in degrees.static @NotNull CFStringRefkVTPixelTransferPropertyKey_DestinationCleanAperture()Read/write, CFDictionary with same keys as used in kCVImageBufferCleanApertureKey dictionary.static @NotNull CFStringRefkVTPixelTransferPropertyKey_DestinationColorPrimaries()Read/write, CFString (see kCMFormatDescriptionExtension_ColorPrimaries), Optional API-Since: 9.0static @NotNull CFStringRefkVTPixelTransferPropertyKey_DestinationICCProfile()Read/write, CFData (see kCMFormatDescriptionExtension_ICCProfile), Optional API-Since: 9.0static @NotNull CFStringRefkVTPixelTransferPropertyKey_DestinationPixelAspectRatio()Read/write, CFDictionary with same keys as used in kCVImageBufferPixelAspectRatioKey dictionary.static @NotNull CFStringRefkVTPixelTransferPropertyKey_DestinationTransferFunction()Read/write, CFString (see kCMFormatDescriptionExtension_TransferFunction), Optional API-Since: 9.0static @NotNull CFStringRefkVTPixelTransferPropertyKey_DestinationYCbCrMatrix()Read/write, CFString (see kCMFormatDescriptionExtension_YCbCrMatrix), Optional API-Since: 9.0static @NotNull CFStringRefkVTPixelTransferPropertyKey_DownsamplingMode()Read/write, CFStringRef, one of: API-Since: 9.0static @NotNull CFStringRefkVTPixelTransferPropertyKey_RealTime()Read/write, CFBoolean, default NULLstatic @NotNull CFStringRefkVTPixelTransferPropertyKey_ScalingMode()Read/write, CFStringRef, one of kVTScalingMode_* API-Since: 9.0static @NotNull CFStringRefkVTProfileLevel_H263_Profile0_Level10()API-Since: 8.0static @NotNull CFStringRefkVTProfileLevel_H263_Profile0_Level45()API-Since: 8.0static @NotNull CFStringRefkVTProfileLevel_H263_Profile3_Level45()API-Since: 8.0static @NotNull CFStringRefkVTProfileLevel_H264_Baseline_1_3()API-Since: 8.0static @NotNull CFStringRefkVTProfileLevel_H264_Baseline_3_0()API-Since: 8.0static @NotNull CFStringRefkVTProfileLevel_H264_Baseline_3_1()API-Since: 8.0static @NotNull CFStringRefkVTProfileLevel_H264_Baseline_3_2()API-Since: 8.0static @NotNull CFStringRefkVTProfileLevel_H264_Baseline_4_0()API-Since: 8.0static @NotNull CFStringRefkVTProfileLevel_H264_Baseline_4_1()API-Since: 8.0static @NotNull CFStringRefkVTProfileLevel_H264_Baseline_4_2()API-Since: 8.0static @NotNull CFStringRefkVTProfileLevel_H264_Baseline_5_0()API-Since: 8.0static @NotNull CFStringRefkVTProfileLevel_H264_Baseline_5_1()API-Since: 8.0static @NotNull CFStringRefkVTProfileLevel_H264_Baseline_5_2()API-Since: 8.0static @NotNull CFStringRefkVTProfileLevel_H264_Baseline_AutoLevel()API-Since: 8.0static @NotNull CFStringRefkVTProfileLevel_H264_ConstrainedBaseline_AutoLevel()API-Since: 15.0static @NotNull CFStringRefkVTProfileLevel_H264_ConstrainedHigh_AutoLevel()API-Since: 15.0static @NotNull CFStringRefkVTProfileLevel_H264_Extended_5_0()API-Since: 8.0static @NotNull CFStringRefkVTProfileLevel_H264_Extended_AutoLevel()API-Since: 8.0static @NotNull CFStringRefkVTProfileLevel_H264_High_3_0()API-Since: 8.0static @NotNull CFStringRefkVTProfileLevel_H264_High_3_1()API-Since: 8.0static @NotNull CFStringRefkVTProfileLevel_H264_High_3_2()API-Since: 8.0static @NotNull CFStringRefkVTProfileLevel_H264_High_4_0()API-Since: 8.0static @NotNull CFStringRefkVTProfileLevel_H264_High_4_1()API-Since: 8.0static @NotNull CFStringRefkVTProfileLevel_H264_High_4_2()API-Since: 8.0static @NotNull CFStringRefkVTProfileLevel_H264_High_5_0()API-Since: 8.0static @NotNull CFStringRefkVTProfileLevel_H264_High_5_1()API-Since: 8.0static @NotNull CFStringRefkVTProfileLevel_H264_High_5_2()API-Since: 8.0static @NotNull CFStringRefkVTProfileLevel_H264_High_AutoLevel()API-Since: 8.0static @NotNull CFStringRefkVTProfileLevel_H264_Main_3_0()API-Since: 8.0static @NotNull CFStringRefkVTProfileLevel_H264_Main_3_1()API-Since: 8.0static @NotNull CFStringRefkVTProfileLevel_H264_Main_3_2()API-Since: 8.0static @NotNull CFStringRefkVTProfileLevel_H264_Main_4_0()API-Since: 8.0static @NotNull CFStringRefkVTProfileLevel_H264_Main_4_1()API-Since: 8.0static @NotNull CFStringRefkVTProfileLevel_H264_Main_4_2()API-Since: 8.0static @NotNull CFStringRefkVTProfileLevel_H264_Main_5_0()API-Since: 8.0static @NotNull CFStringRefkVTProfileLevel_H264_Main_5_1()API-Since: 8.0static @NotNull CFStringRefkVTProfileLevel_H264_Main_5_2()API-Since: 8.0static @NotNull CFStringRefkVTProfileLevel_H264_Main_AutoLevel()API-Since: 8.0static @NotNull CFStringRefkVTProfileLevel_HEVC_Main_AutoLevel()API-Since: 11.0static @NotNull CFStringRefkVTProfileLevel_HEVC_Main10_AutoLevel()API-Since: 11.0static @NotNull CFStringRefkVTProfileLevel_HEVC_Main42210_AutoLevel()API-Since: 15.4static @NotNull CFStringRefkVTProfileLevel_MP4V_AdvancedSimple_L0()API-Since: 8.0static @NotNull CFStringRefkVTProfileLevel_MP4V_AdvancedSimple_L1()API-Since: 8.0static @NotNull CFStringRefkVTProfileLevel_MP4V_AdvancedSimple_L2()API-Since: 8.0static @NotNull CFStringRefkVTProfileLevel_MP4V_AdvancedSimple_L3()API-Since: 8.0static @NotNull CFStringRefkVTProfileLevel_MP4V_AdvancedSimple_L4()API-Since: 8.0static @NotNull CFStringRefkVTProfileLevel_MP4V_Main_L2()API-Since: 8.0static @NotNull CFStringRefkVTProfileLevel_MP4V_Main_L3()API-Since: 8.0static @NotNull CFStringRefkVTProfileLevel_MP4V_Main_L4()API-Since: 8.0static @NotNull CFStringRefkVTProfileLevel_MP4V_Simple_L0()API-Since: 8.0static @NotNull CFStringRefkVTProfileLevel_MP4V_Simple_L1()API-Since: 8.0static @NotNull CFStringRefkVTProfileLevel_MP4V_Simple_L2()API-Since: 8.0static @NotNull CFStringRefkVTProfileLevel_MP4V_Simple_L3()API-Since: 8.0static @NotNull CFStringRefkVTPropertyDocumentationKey()a CFString for developer eyes only API-Since: 8.0static @NotNull CFStringRefkVTPropertyReadWriteStatus_ReadOnly()API-Since: 8.0static @NotNull CFStringRefkVTPropertyReadWriteStatus_ReadWrite()API-Since: 8.0static @NotNull CFStringRefkVTPropertyReadWriteStatusKey()API-Since: 8.0static @NotNull CFStringRefkVTPropertyShouldBeSerializedKey()CFBoolean, false by default API-Since: 8.0static @NotNull CFStringRefkVTPropertySupportedValueListKey()CFArray of appropriate values API-Since: 8.0static @NotNull CFStringRefkVTPropertySupportedValueMaximumKey()CFNumber API-Since: 8.0static @NotNull CFStringRefkVTPropertySupportedValueMinimumKey()CFNumber API-Since: 8.0static @NotNull CFStringRefkVTPropertyType_Boolean()value is a CFBoolean API-Since: 8.0static @NotNull CFStringRefkVTPropertyType_Enumeration()value is one of a list of CFStrings API-Since: 8.0static @NotNull CFStringRefkVTPropertyType_Number()value is a CFNumber API-Since: 8.0static @NotNull CFStringRefkVTPropertyTypeKey()value is CFStringRef, one of the following: API-Since: 8.0static @NotNull CFStringRefkVTRotation_0()API-Since: 16.0static @NotNull CFStringRefkVTRotation_180()API-Since: 16.0static @NotNull CFStringRefkVTRotation_CCW90()API-Since: 16.0static @NotNull CFStringRefkVTRotation_CW90()API-Since: 16.0static @NotNull CFStringRefkVTSampleAttachmentKey_RequireLTRAcknowledgementToken()CFNumberRef, Optional API-Since: 15.0static @NotNull CFStringRefkVTScalingMode_CropSourceToCleanAperture()Crop to remove edge processing region; scale remainder to destination clean aperture.static @NotNull CFStringRefkVTScalingMode_Letterbox()Preserve aspect ratio of the source, and fill remaining areas with black in to fit destination dimensions API-Since: 9.0static @NotNull CFStringRefkVTScalingMode_Normal()Copy full width and height.static @NotNull CFStringRefkVTScalingMode_Trim()Preserve aspect ratio of the source, and crop picture to fit destination dimensions API-Since: 9.0static @NotNull CFStringRefkVTVideoDecoderSpecification_EnableHardwareAcceleratedVideoDecoder()CFBoolean, Optional, true by default API-Since: 17.0static @NotNull CFStringRefkVTVideoDecoderSpecification_PreferredDecoderGPURegistryID()CFNumber, Optionalstatic @NotNull CFStringRefkVTVideoDecoderSpecification_RequiredDecoderGPURegistryID()CFNumber, Optionalstatic @NotNull CFStringRefkVTVideoDecoderSpecification_RequireHardwareAcceleratedVideoDecoder()CFBoolean, Optional API-Since: 17.0static @NotNull CFStringRefkVTVideoEncoderList_CodecName()CFString, for display to user (eg, "H.264") API-Since: 8.0static @NotNull CFStringRefkVTVideoEncoderList_CodecType()CFNumber for four-char-code (eg, 'avc1') API-Since: 8.0static @NotNull CFStringRefkVTVideoEncoderList_DisplayName()CFString (same as CodecName if there is only one encoder for that format, otherwise same as EncoderName) API-Since: 8.0static @NotNull CFStringRefkVTVideoEncoderList_EncoderID()CFString, reverse-DNS-style unique identifier for this encoder; may be passed as kVTVideoEncoderSpecification_EncoderID API-Since: 8.0static @NotNull CFStringRefkVTVideoEncoderList_EncoderName()CFString, for display to user (eg, "Apple H.264") API-Since: 8.0static @NotNull CFStringRefkVTVideoEncoderList_GPURegistryID()optional.static @NotNull CFStringRefkVTVideoEncoderList_InstanceLimit()optional.static @NotNull CFStringRefkVTVideoEncoderList_IsHardwareAccelerated()optional.static @NotNull CFStringRefkVTVideoEncoderList_PerformanceRating()optional.static @NotNull CFStringRefkVTVideoEncoderList_QualityRating()optional.static @NotNull CFStringRefkVTVideoEncoderList_SupportedSelectionProperties()optional.static @NotNull CFStringRefkVTVideoEncoderList_SupportsFrameReordering()optional.static @NotNull CFStringRefkVTVideoEncoderListOption_IncludeStandardDefinitionDVEncoders()optional.static @NotNull CFStringRefkVTVideoEncoderSpecification_EnableLowLatencyRateControl()Read/write, CFBoolean, Optional API-Since: 14.5static @NotNull CFStringRefkVTVideoEncoderSpecification_EncoderID()CFString API-Since: 8.0static @NotNull CFStringRefkVTVideoEncoderSpecification_PreferredEncoderGPURegistryID()CFNumber, Optionalstatic @NotNull CFStringRefkVTVideoEncoderSpecification_RequiredEncoderGPURegistryID()CFNumber, Optionalstatic intVTCompressionSessionBeginPass(@NotNull VTCompressionSessionRef session, int beginPassFlags, @Nullable org.moe.natj.general.ptr.IntPtr reserved)[@function] VTCompressionSessionBeginPass Call to announce the start of a specific compression pass.static intVTCompressionSessionCompleteFrames(@NotNull VTCompressionSessionRef session, CMTime completeUntilPresentationTimeStamp)[@function] VTCompressionSessionCompleteFrames Forces the compression session to complete encoding frames.static intVTCompressionSessionCreate(@Nullable CFAllocatorRef allocator, int width, int height, int codecType, @Nullable CFDictionaryRef encoderSpecification, @Nullable CFDictionaryRef sourceImageBufferAttributes, @Nullable CFAllocatorRef compressedDataAllocator, @Nullable VideoToolbox.Function_VTCompressionSessionCreate outputCallback, @Nullable org.moe.natj.general.ptr.VoidPtr outputCallbackRefCon, @NotNull org.moe.natj.general.ptr.Ptr<VTCompressionSessionRef> compressionSessionOut)[@function] VTCompressionSessionCreate Creates a session for compressing video frames.static intVTCompressionSessionEncodeFrame(@NotNull VTCompressionSessionRef session, @NotNull CVBufferRef imageBuffer, CMTime presentationTimeStamp, CMTime duration, @Nullable CFDictionaryRef frameProperties, @Nullable org.moe.natj.general.ptr.VoidPtr sourceFrameRefcon, @Nullable org.moe.natj.general.ptr.IntPtr infoFlagsOut)[@function] VTCompressionSessionEncodeFrame Call this function to present frames to the compression session.static intVTCompressionSessionEncodeFrameWithOutputHandler(@NotNull VTCompressionSessionRef session, @NotNull CVBufferRef imageBuffer, CMTime presentationTimeStamp, CMTime duration, @Nullable CFDictionaryRef frameProperties, @Nullable org.moe.natj.general.ptr.IntPtr infoFlagsOut, @NotNull VideoToolbox.Block_VTCompressionSessionEncodeFrameWithOutputHandler outputHandler)[@function] VTCompressionSessionEncodeFrameWithOutputHandler Call this function to present frames to the compression session.static intVTCompressionSessionEncodeMultiImageFrame(@NotNull VTCompressionSessionRef session, @NotNull CMTaggedBufferGroupRef taggedBufferGroup, CMTime presentationTimeStamp, CMTime duration, @Nullable CFDictionaryRef frameProperties, @Nullable org.moe.natj.general.ptr.VoidPtr sourceFrameRefcon, @Nullable org.moe.natj.general.ptr.IntPtr infoFlagsOut)[@function] VTCompressionSessionEncodeMultiImageFrame Call this function to present a multi-image frame to the compression session.static intVTCompressionSessionEncodeMultiImageFrameWithOutputHandler(@NotNull VTCompressionSessionRef session, @NotNull CMTaggedBufferGroupRef taggedBufferGroup, CMTime presentationTimeStamp, CMTime duration, @Nullable CFDictionaryRef frameProperties, @Nullable org.moe.natj.general.ptr.IntPtr infoFlagsOut, @NotNull VideoToolbox.Block_VTCompressionSessionEncodeMultiImageFrameWithOutputHandler outputHandler)[@function] VTCompressionSessionEncodeMultiImageFrameWithOutputHandler Call this function to present a multi-image frame to the compression session.static intVTCompressionSessionEndPass(@NotNull VTCompressionSessionRef session, @Nullable org.moe.natj.general.ptr.BytePtr furtherPassesRequestedOut, @Nullable org.moe.natj.general.ptr.IntPtr reserved)[@function] VTCompressionSessionEndPass Call to announce the end of a pass.static @Nullable CVPixelBufferPoolRefVTCompressionSessionGetPixelBufferPool(@NotNull VTCompressionSessionRef session)[@function] VTCompressionSessionGetPixelBufferPool Returns a pool that can provide ideal source pixel buffers for a compression session.static intVTCompressionSessionGetTimeRangesForNextPass(@NotNull VTCompressionSessionRef session, @NotNull org.moe.natj.general.ptr.NIntPtr timeRangeCountOut, @NotNull org.moe.natj.general.ptr.Ptr<org.moe.natj.general.ptr.ConstPtr<CMTimeRange>> timeRangeArrayOut)[@function] VTCompressionSessionGetTimeRangesForNextPass Retrieves the time ranges for the next pass.static longVTCompressionSessionGetTypeID()[@function] VTCompressionSessionGetTypeID Returns the CFTypeID for compression sessions.static voidVTCompressionSessionInvalidate(@NotNull VTCompressionSessionRef session)[@function] VTCompressionSessionInvalidate Tears down a compression session.static intVTCompressionSessionPrepareToEncodeFrames(@NotNull VTCompressionSessionRef session)[@function] VTCompressionSessionPrepareToEncodeFrames You can optionally call this function to provide the encoder with an opportunity to perform any necessary resource allocation before it begins encoding frames.static intVTCopySupportedPropertyDictionaryForEncoder(int width, int height, int codecType, @Nullable CFDictionaryRef encoderSpecification, @Nullable org.moe.natj.general.ptr.Ptr<CFStringRef> encoderIDOut, @Nullable org.moe.natj.general.ptr.Ptr<CFDictionaryRef> supportedPropertiesOut)[@function] VTCopySupportedPropertyDictionaryForEncoder Builds a list of supported properties and encoder ID for an encoder The caller must CFRelease the returned supported properties and encoder ID.static intVTCopyVideoEncoderList(@Nullable CFDictionaryRef options, @NotNull org.moe.natj.general.ptr.Ptr<CFArrayRef> listOfVideoEncodersOut)[@function] VTCopyVideoEncoderList Builds a list of available video encoders.static intVTCreateCGImageFromCVPixelBuffer(@NotNull CVBufferRef pixelBuffer, @Nullable CFDictionaryRef options, @NotNull org.moe.natj.general.ptr.Ptr<CGImageRef> imageOut)[@function] VTCreateCGImageFromCVPixelBuffer Creates a CGImage using the provided CVPixelBuffer This routine creates a CGImage representation of the image data contained in the provided CVPixelBuffer.static byteVTDecompressionSessionCanAcceptFormatDescription(@NotNull VTDecompressionSessionRef session, @NotNull CMFormatDescriptionRef newFormatDesc)[@function] VTDecompressionSessionCanAcceptFormatDescription Indicates whether the session can decode frames with the given format description.static intVTDecompressionSessionCopyBlackPixelBuffer(@NotNull VTDecompressionSessionRef session, @NotNull org.moe.natj.general.ptr.Ptr<CVBufferRef> pixelBufferOut)[@function] VTDecompressionSessionCopyBlackPixelBuffer Copies a black pixel buffer from the decompression session.static intVTDecompressionSessionCreate(@Nullable CFAllocatorRef allocator, @NotNull CMFormatDescriptionRef videoFormatDescription, @Nullable CFDictionaryRef videoDecoderSpecification, @Nullable CFDictionaryRef destinationImageBufferAttributes, @Nullable VTDecompressionOutputCallbackRecord outputCallback, @NotNull org.moe.natj.general.ptr.Ptr<VTDecompressionSessionRef> decompressionSessionOut)[@function] VTDecompressionSessionCreate Creates a session for decompressing video frames.static intVTDecompressionSessionDecodeFrame(@NotNull VTDecompressionSessionRef session, @NotNull CMSampleBufferRef sampleBuffer, int decodeFlags, @Nullable org.moe.natj.general.ptr.VoidPtr sourceFrameRefCon, @Nullable org.moe.natj.general.ptr.IntPtr infoFlagsOut)[@function] VTDecompressionSessionDecodeFrame Decompresses a video frame.static intVTDecompressionSessionDecodeFrameWithMultiImageCapableOutputHandler(@NotNull VTDecompressionSessionRef session, @NotNull CMSampleBufferRef sampleBuffer, int decodeFlags, @Nullable org.moe.natj.general.ptr.IntPtr infoFlagsOut, @NotNull VideoToolbox.Block_VTDecompressionSessionDecodeFrameWithMultiImageCapableOutputHandler multiImageCapableOutputHandler)[@function] VTDecompressionSessionDecodeFrameWithMultiImageCapableOutputHandler Decompresses a video frame.static intVTDecompressionSessionDecodeFrameWithOutputHandler(@NotNull VTDecompressionSessionRef session, @NotNull CMSampleBufferRef sampleBuffer, int decodeFlags, @Nullable org.moe.natj.general.ptr.IntPtr infoFlagsOut, @NotNull VideoToolbox.Block_VTDecompressionSessionDecodeFrameWithOutputHandler outputHandler)[@function] VTDecompressionSessionDecodeFrameWithOutputHandler Decompresses a video frame.static intVTDecompressionSessionFinishDelayedFrames(@NotNull VTDecompressionSessionRef session)[@function] VTDecompressionSessionFinishDelayedFrames Directs the decompression session to emit all delayed frames.static longVTDecompressionSessionGetTypeID()[@function] VTDecompressionSessionGetTypeID Returns the CFTypeID for decompression sessions.static voidVTDecompressionSessionInvalidate(@NotNull VTDecompressionSessionRef session)[@function] VTDecompressionSessionInvalidate Tears down a decompression session.static intVTDecompressionSessionSetMultiImageCallback(@NotNull VTDecompressionSessionRef decompressionSession, @NotNull VideoToolbox.Function_VTDecompressionSessionSetMultiImageCallback outputMultiImageCallback, @Nullable org.moe.natj.general.ptr.VoidPtr outputMultiImageRefcon)[@function] VTDecompressionSessionSetMultiImageCallback Provides a callback capable of receiving multiple images for individual DecodeFrame requests.static intVTDecompressionSessionWaitForAsynchronousFrames(@NotNull VTDecompressionSessionRef session)[@function] VTDecompressionSessionWaitForAsynchronousFrames Waits for any and all outstanding asynchronous and delayed frames to complete, then returns.static intVTFrameSiloAddSampleBuffer(@NotNull VTFrameSiloRef silo, @NotNull CMSampleBufferRef sampleBuffer)[@function] VTFrameSiloAddSampleBuffer Adds a sample buffer to a VTFrameSilo object.static intVTFrameSiloCallBlockForEachSampleBuffer(@NotNull VTFrameSiloRef silo, CMTimeRange timeRange, @NotNull VideoToolbox.Block_VTFrameSiloCallBlockForEachSampleBuffer handler)[@function] VTFrameSiloCallBlockForEachSampleBuffer Retrieves sample buffers from a VTFrameSilo object.static intVTFrameSiloCallFunctionForEachSampleBuffer(@NotNull VTFrameSiloRef silo, CMTimeRange timeRange, @Nullable org.moe.natj.general.ptr.VoidPtr refcon, @NotNull VideoToolbox.Function_VTFrameSiloCallFunctionForEachSampleBuffer callback)[@function] VTFrameSiloCallFunctionForEachSampleBuffer Retrieves sample buffers from a VTFrameSilo object.static intVTFrameSiloCreate(@Nullable CFAllocatorRef allocator, @Nullable CFURLRef fileURL, CMTimeRange timeRange, @Nullable CFDictionaryRef options, @NotNull org.moe.natj.general.ptr.Ptr<VTFrameSiloRef> frameSiloOut)[@function] VTFrameSiloCreate Creates a VTFrameSilo object using a temporary file.static intVTFrameSiloGetProgressOfCurrentPass(@NotNull VTFrameSiloRef silo, @NotNull org.moe.natj.general.ptr.FloatPtr progressOut)[@function] VTFrameSiloGetProgressOfCurrentPass Gets the progress of the current pass.static longVTFrameSiloGetTypeID()API-Since: 8.0static intVTFrameSiloSetTimeRangesForNextPass(@NotNull VTFrameSiloRef silo, long timeRangeCount, @NotNull CMTimeRange timeRangeArray)[@function] VTFrameSiloSetTimeRangesForNextPass Begins a new pass of samples to be added to a VTFrameSilo object.static byteVTIsHardwareDecodeSupported(int codecType)[@function] VTIsHardwareDecodeSupported Indicates whether the current system supports hardware decode for a given codec This routine reports whether the current system supports hardware decode.static byteVTIsStereoMVHEVCDecodeSupported()[@function] VTIsStereoMVHEVCDecodeSupported Indicates whether the current system supports stereo MV-HEVC decode.static byteVTIsStereoMVHEVCEncodeSupported()[@function] VTIsStereoMVHEVCEncodeSupported Indicates whether the current system supports stereo MV-HEVC encode.static intVTMultiPassStorageClose(@NotNull VTMultiPassStorageRef multiPassStorage)[@function] VTMultiPassStorageClose Ensures that any pending data is written to the multipass storage file and closes the file.static intVTMultiPassStorageCreate(@Nullable CFAllocatorRef allocator, @Nullable CFURLRef fileURL, CMTimeRange timeRange, @Nullable CFDictionaryRef options, @NotNull org.moe.natj.general.ptr.Ptr<VTMultiPassStorageRef> multiPassStorageOut)[@function] VTMultiPassStorageCreate Creates a VTMultiPassStorage object using a temporary file.static longVTMultiPassStorageGetTypeID()API-Since: 8.0static intVTPixelRotationSessionCreate(@Nullable CFAllocatorRef allocator, @NotNull org.moe.natj.general.ptr.Ptr<VTPixelRotationSessionRef> pixelRotationSessionOut)[@function] VTPixelRotationSessionCreate Creates a session for rotating images between CVPixelBuffers.static longVTPixelRotationSessionGetTypeID()[@function] VTPixelRotationSessionGetTypeID Returns the CFTypeID for pixel rotation sessions.static voidVTPixelRotationSessionInvalidate(@NotNull VTPixelRotationSessionRef session)[@function] VTPixelRotationSessionInvalidate Tears down a pixel rotation session.static intVTPixelRotationSessionRotateImage(@NotNull VTPixelRotationSessionRef session, @NotNull CVBufferRef sourceBuffer, @NotNull CVBufferRef destinationBuffer)[@function] VTPixelRotationSessionRotateImage Rotates a pixel buffer.static intVTPixelTransferSessionCreate(@Nullable CFAllocatorRef allocator, @NotNull org.moe.natj.general.ptr.Ptr<VTPixelTransferSessionRef> pixelTransferSessionOut)[@function] VTPixelTransferSessionCreate Creates a session for transferring images between CVPixelBuffers.static longVTPixelTransferSessionGetTypeID()[@function] VTPixelTransferSessionGetTypeID Returns the CFTypeID for pixel transfer sessions.static voidVTPixelTransferSessionInvalidate(@NotNull VTPixelTransferSessionRef session)[@function] VTPixelTransferSessionInvalidate Tears down a pixel transfer session.static intVTPixelTransferSessionTransferImage(@NotNull VTPixelTransferSessionRef session, @NotNull CVBufferRef sourceBuffer, @NotNull CVBufferRef destinationBuffer)[@function] VTPixelTransferSessionTransferImage Copies and/or converts an image from one pixel buffer to another.static intVTSessionCopyProperty(@NotNull org.moe.natj.general.ptr.ConstVoidPtr session, @NotNull CFStringRef propertyKey, @Nullable CFAllocatorRef allocator, @Nullable org.moe.natj.general.ptr.VoidPtr propertyValueOut)[@function] VTSessionCopyProperty Retrieves a property on a video toolbox session.static intVTSessionCopySerializableProperties(@NotNull org.moe.natj.general.ptr.ConstVoidPtr session, @Nullable CFAllocatorRef allocator, @NotNull org.moe.natj.general.ptr.Ptr<CFDictionaryRef> dictionaryOut)[@function] VTSessionCopySerializableProperties Retrieves the set of serializable property keys and their current values.static intVTSessionCopySupportedPropertyDictionary(@NotNull org.moe.natj.general.ptr.ConstVoidPtr session, @NotNull org.moe.natj.general.ptr.Ptr<CFDictionaryRef> supportedPropertyDictionaryOut)[@function] VTSessionCopySupportedPropertyDictionary Returns a dictionary enumerating all the supported properties of a video toolbox session.static intVTSessionSetProperties(@NotNull org.moe.natj.general.ptr.ConstVoidPtr session, @NotNull CFDictionaryRef propertyDictionary)[@function] VTSessionSetProperties Sets multiple properties at once.static intVTSessionSetProperty(@NotNull org.moe.natj.general.ptr.ConstVoidPtr session, @NotNull CFStringRef propertyKey, @Nullable org.moe.natj.general.ptr.ConstVoidPtr propertyValue)[@function] VTSessionSetProperty Sets a property on a video toolbox session.
-
-
-
Method Detail
-
VTSessionCopySupportedPropertyDictionary
public static int VTSessionCopySupportedPropertyDictionary(@NotNull @NotNull org.moe.natj.general.ptr.ConstVoidPtr session, @NotNull @NotNull org.moe.natj.general.ptr.Ptr<CFDictionaryRef> supportedPropertyDictionaryOut)[@function] VTSessionCopySupportedPropertyDictionary Returns a dictionary enumerating all the supported properties of a video toolbox session. The keys of the returned dictionary are the supported property keys. The values are themselves dictionaries, each containing the following optional fields:- the type of value, (kVTPropertyTypeKey)
- the read/write status of the property (kVTPropertyReadWriteStatusKey),
- whether the property is suitable for serialization (kVTPropertyShouldBeSerializedKey),
- a range or list of the supported values, if appropriate, and
- developer-level documentation for the property (kVTPropertyDocumentationKey).
-
VTSessionSetProperty
public static int VTSessionSetProperty(@NotNull @NotNull org.moe.natj.general.ptr.ConstVoidPtr session, @NotNull @NotNull CFStringRef propertyKey, @Nullable @Nullable org.moe.natj.general.ptr.ConstVoidPtr propertyValue)[@function] VTSessionSetProperty Sets a property on a video toolbox session. Setting a property value to NULL restores the default value. API-Since: 8.0
-
VTSessionCopyProperty
public static int VTSessionCopyProperty(@NotNull @NotNull org.moe.natj.general.ptr.ConstVoidPtr session, @NotNull @NotNull CFStringRef propertyKey, @Nullable @Nullable CFAllocatorRef allocator, @Nullable @Nullable org.moe.natj.general.ptr.VoidPtr propertyValueOut)[@function] VTSessionCopyProperty Retrieves a property on a video toolbox session. The caller must release the retrieved property value.
Note: for most types of property, the returned values should be considered immutable. In particular, for CFPropertyList types, sharing of mutable property value objects between the client, session and codec should be avoided. However, some properties will be used for exchanging service objects that are inherently mutable (eg, CVPixelBufferPool).- Parameters:
propertyKey- The key for the property to retrieve.allocator- An allocator suitable for use when copying property values.propertyValueOut- Points to a variable to receive the property value, which must be a CF-registered type -- the caller may call CFGetTypeID() on it to identify which specific type. The caller must release the this property value.- Returns:
- noErr if successful; kVTPropertyNotSupportedErr for unrecognized or unsupported properties. API-Since: 8.0
-
VTSessionSetProperties
public static int VTSessionSetProperties(@NotNull @NotNull org.moe.natj.general.ptr.ConstVoidPtr session, @NotNull @NotNull CFDictionaryRef propertyDictionary)[@function] VTSessionSetProperties Sets multiple properties at once. Sets the properties specified by keys in propertyDictionary to the corresponding values. API-Since: 8.0
-
VTSessionCopySerializableProperties
public static int VTSessionCopySerializableProperties(@NotNull @NotNull org.moe.natj.general.ptr.ConstVoidPtr session, @Nullable @Nullable CFAllocatorRef allocator, @NotNull @NotNull org.moe.natj.general.ptr.Ptr<CFDictionaryRef> dictionaryOut)[@function] VTSessionCopySerializableProperties Retrieves the set of serializable property keys and their current values. The serializable properties are those which can be saved and applied to a different session. The caller must release the returned dictionary. API-Since: 8.0
-
VTCompressionSessionCreate
public static int VTCompressionSessionCreate(@Nullable @Nullable CFAllocatorRef allocator, int width, int height, int codecType, @Nullable @Nullable CFDictionaryRef encoderSpecification, @Nullable @Nullable CFDictionaryRef sourceImageBufferAttributes, @Nullable @Nullable CFAllocatorRef compressedDataAllocator, @Nullable @Nullable VideoToolbox.Function_VTCompressionSessionCreate outputCallback, @Nullable @Nullable org.moe.natj.general.ptr.VoidPtr outputCallbackRefCon, @NotNull @NotNull org.moe.natj.general.ptr.Ptr<VTCompressionSessionRef> compressionSessionOut)[@function] VTCompressionSessionCreate Creates a session for compressing video frames. Compressed frames will be emitted through calls to outputCallback.- Parameters:
allocator- An allocator for the session. Pass NULL to use the default allocator.width- The width of frames, in pixels. If the video encoder cannot support the provided width and height it may change them.height- The height of frames in pixels.codecType- The codec type.encoderSpecification- Specifies a particular video encoder that must be used. Pass NULL to let the video toolbox choose a encoder.sourceImageBufferAttributes- Required attributes for source pixel buffers, used when creating a pixel buffer pool for source frames. If you do not want the Video Toolbox to create one for you, pass NULL. (Using pixel buffers not allocated by the Video Toolbox may increase the chance that it will be necessary to copy image data.)compressedDataAllocator- An allocator for the compressed data. Pass NULL to use the default allocator. Note: on MacOS 10.12 and later, using a compressedDataAllocator may trigger an extra buffer copy.outputCallback- The callback to be called with compressed frames. This function may be called asynchronously, on a different thread from the one that calls VTCompressionSessionEncodeFrame. Pass NULL if and only if you will be calling VTCompressionSessionEncodeFrameWithOutputHandler for encoding frames.outputCallbackRefCon- Client-defined reference value for the output callback.compressionSessionOut- Points to a variable to receive the new compression session. API-Since: 8.0
-
VTCompressionSessionInvalidate
public static void VTCompressionSessionInvalidate(@NotNull @NotNull VTCompressionSessionRef session)[@function] VTCompressionSessionInvalidate Tears down a compression session. When you are done with a compression session you created, call VTCompressionSessionInvalidate to tear it down and then CFRelease to release your object reference. When a compression session's retain count reaches zero, it is automatically invalidated, but since sessions may be retained by multiple parties, it can be hard to predict when this will happen. Calling VTCompressionSessionInvalidate ensures a deterministic, orderly teardown. API-Since: 8.0
-
VTCompressionSessionGetTypeID
public static long VTCompressionSessionGetTypeID()
[@function] VTCompressionSessionGetTypeID Returns the CFTypeID for compression sessions. API-Since: 8.0
-
VTCompressionSessionGetPixelBufferPool
@Nullable public static @Nullable CVPixelBufferPoolRef VTCompressionSessionGetPixelBufferPool(@NotNull @NotNull VTCompressionSessionRef session)
[@function] VTCompressionSessionGetPixelBufferPool Returns a pool that can provide ideal source pixel buffers for a compression session. The compression session creates this pixel buffer pool based on the compressor's pixel buffer attributes and any pixel buffer attributes passed in to VTCompressionSessionCreate. If the source pixel buffer attributes and the compressor pixel buffer attributes cannot be reconciled, the pool is based on the source pixel buffer attributes and the Video Toolbox converts each CVImageBuffer internally.
While clients can call VTCompressionSessionGetPixelBufferPool once and retain the resulting pool, the call is cheap enough that it's OK to call it once per frame. If a change of session properties causes the compressor's pixel buffer attributes to change, it's possible that VTCompressionSessionGetPixelBufferPool might return a different pool. API-Since: 8.0
-
VTCompressionSessionPrepareToEncodeFrames
public static int VTCompressionSessionPrepareToEncodeFrames(@NotNull @NotNull VTCompressionSessionRef session)[@function] VTCompressionSessionPrepareToEncodeFrames You can optionally call this function to provide the encoder with an opportunity to perform any necessary resource allocation before it begins encoding frames. This optional call can be used to provide the encoder an opportunity to allocate any resources necessary before it begins encoding frames. If this isn't called, any necessary resources will be allocated on the first VTCompressionSessionEncodeFrame call. Extra calls to this function will have no effect.- Parameters:
session- The compression session. API-Since: 8.0
-
VTCompressionSessionEncodeFrame
public static int VTCompressionSessionEncodeFrame(@NotNull @NotNull VTCompressionSessionRef session, @NotNull @NotNull CVBufferRef imageBuffer, CMTime presentationTimeStamp, CMTime duration, @Nullable @Nullable CFDictionaryRef frameProperties, @Nullable @Nullable org.moe.natj.general.ptr.VoidPtr sourceFrameRefcon, @Nullable @Nullable org.moe.natj.general.ptr.IntPtr infoFlagsOut)[@function] VTCompressionSessionEncodeFrame Call this function to present frames to the compression session. Encoded frames may or may not be output before the function returns. The client should not modify the pixel data after making this call. The session and/or encoder will retain the image buffer as long as necessary.- Parameters:
session- The compression session.imageBuffer- A CVImageBuffer containing a video frame to be compressed. Must have a nonzero reference count.presentationTimeStamp- The presentation timestamp for this frame, to be attached to the sample buffer. Each presentation timestamp passed to a session must be greater than the previous one.duration- The presentation duration for this frame, to be attached to the sample buffer. If you do not have duration information, pass kCMTimeInvalid.frameProperties- Contains key/value pairs specifying additional properties for encoding this frame. Note that some session properties may also be changed between frames. Such changes have effect on subsequently encoded frames.sourceFrameRefcon- Your reference value for the frame, which will be passed to the output callback function.infoFlagsOut- Points to a VTEncodeInfoFlags to receive information about the encode operation. The kVTEncodeInfo_Asynchronous bit may be set if the encode is (or was) running asynchronously. The kVTEncodeInfo_FrameDropped bit may be set if the frame was dropped (synchronously). Pass NULL if you do not want to receive this information. API-Since: 8.0
-
VTCompressionSessionEncodeFrameWithOutputHandler
public static int VTCompressionSessionEncodeFrameWithOutputHandler(@NotNull @NotNull VTCompressionSessionRef session, @NotNull @NotNull CVBufferRef imageBuffer, CMTime presentationTimeStamp, CMTime duration, @Nullable @Nullable CFDictionaryRef frameProperties, @Nullable @Nullable org.moe.natj.general.ptr.IntPtr infoFlagsOut, @NotNull @NotNull VideoToolbox.Block_VTCompressionSessionEncodeFrameWithOutputHandler outputHandler)[@function] VTCompressionSessionEncodeFrameWithOutputHandler Call this function to present frames to the compression session. Encoded frames may or may not be output before the function returns. The client should not modify the pixel data after making this call. The session and/or encoder will retain the image buffer as long as necessary. Cannot be called with a session created with a VTCompressionOutputCallback.- Parameters:
session- The compression session.imageBuffer- A CVImageBuffer containing a video frame to be compressed. Must have a nonzero reference count.presentationTimeStamp- The presentation timestamp for this frame, to be attached to the sample buffer. Each presentation timestamp passed to a session must be greater than the previous one.duration- The presentation duration for this frame, to be attached to the sample buffer. If you do not have duration information, pass kCMTimeInvalid.frameProperties- Contains key/value pairs specifying additional properties for encoding this frame. Note that some session properties may also be changed between frames. Such changes have effect on subsequently encoded frames.infoFlagsOut- Points to a VTEncodeInfoFlags to receive information about the encode operation. The kVTEncodeInfo_Asynchronous bit may be set if the encode is (or was) running asynchronously. The kVTEncodeInfo_FrameDropped bit may be set if the frame was dropped (synchronously). Pass NULL if you do not want to receive this information.outputHandler- The block to be called when encoding the frame is completed. This block may be called asynchronously, on a different thread from the one that calls VTCompressionSessionEncodeFrameWithOutputHandler. API-Since: 9.0
-
VTCompressionSessionCompleteFrames
public static int VTCompressionSessionCompleteFrames(@NotNull @NotNull VTCompressionSessionRef session, CMTime completeUntilPresentationTimeStamp)[@function] VTCompressionSessionCompleteFrames Forces the compression session to complete encoding frames. If completeUntilPresentationTimeStamp is numeric, frames with presentation timestamps up to and including this timestamp will be emitted before the function returns. If completeUntilPresentationTimeStamp is non-numeric, all pending frames will be emitted before the function returns. API-Since: 8.0
-
VTCompressionSessionBeginPass
public static int VTCompressionSessionBeginPass(@NotNull @NotNull VTCompressionSessionRef session, int beginPassFlags, @Nullable @Nullable org.moe.natj.general.ptr.IntPtr reserved)[@function] VTCompressionSessionBeginPass Call to announce the start of a specific compression pass. During multi-pass encoding, this function must be called before VTCompressionSessionEncodeFrame. It is an error to call this function when multi-pass encoding has not been enabled by setting kVTCompressionPropertyKey_MultiPassStorage.- Parameters:
beginPassFlags- Pass kVTCompressionSessionBeginFinalPass to inform the encoder that the pass must be the final pass. API-Since: 8.0
-
VTCompressionSessionEndPass
public static int VTCompressionSessionEndPass(@NotNull @NotNull VTCompressionSessionRef session, @Nullable @Nullable org.moe.natj.general.ptr.BytePtr furtherPassesRequestedOut, @Nullable @Nullable org.moe.natj.general.ptr.IntPtr reserved)[@function] VTCompressionSessionEndPass Call to announce the end of a pass. VTCompressionSessionEndPass can take a long time, since the video encoder may perform significant processing between passes. VTCompressionSessionEndPass will indicate via the furtherPassesRequestedOut argument whether the video encoder would like to perform another pass. There is no particular bound on the number of passes the video encoder may request, but the client is free to disregard this request and use the last-emitted set of frames. It is an error to call this function when multi-pass encoding has not been enabled by setting kVTCompressionPropertyKey_MultiPassStorage.- Parameters:
furtherPassesRequestedOut- Points to a Boolean that will be set to true if the video encoder would like to perform another pass, false otherwise. You may pass NULL to indicate that the client is certain to use this as the final pass, in which case the video encoder can skip that evaluation step. API-Since: 8.0
-
VTCompressionSessionGetTimeRangesForNextPass
public static int VTCompressionSessionGetTimeRangesForNextPass(@NotNull @NotNull VTCompressionSessionRef session, @NotNull @NotNull org.moe.natj.general.ptr.NIntPtr timeRangeCountOut, @NotNull @NotNull org.moe.natj.general.ptr.Ptr<org.moe.natj.general.ptr.ConstPtr<CMTimeRange>> timeRangeArrayOut)[@function] VTCompressionSessionGetTimeRangesForNextPass Retrieves the time ranges for the next pass. If VTCompressionSessionEndPass sets *furtherPassesRequestedOut to true, call VTCompressionSessionGetTimeRangesForNextPass to find out the time ranges for the next pass. Source frames outside these time ranges should be skipped. Each time range is considered to include any frame at its start time and not to include any frame at its end time. It is an error to call this function when multi-pass encoding has not been enabled by setting kVTCompressionPropertyKey_MultiPassStorage, or when VTCompressionSessionEndPass did not set *furtherPassesRequestedOut to true.- Parameters:
timeRangeCountOut- Points to a CMItemCount to receive the number of CMTimeRanges.timeRangeArrayOut- Points to a const CMTimeRange * to receive a pointer to a C array of CMTimeRanges. The storage for this array belongs to the VTCompressionSession and should not be modified. The pointer will be valid until the next call to VTCompressionSessionEndPass, or until the VTCompressionSession is invalidated or finalized. API-Since: 8.0
-
VTDecompressionSessionCreate
public static int VTDecompressionSessionCreate(@Nullable @Nullable CFAllocatorRef allocator, @NotNull @NotNull CMFormatDescriptionRef videoFormatDescription, @Nullable @Nullable CFDictionaryRef videoDecoderSpecification, @Nullable @Nullable CFDictionaryRef destinationImageBufferAttributes, @Nullable @Nullable VTDecompressionOutputCallbackRecord outputCallback, @NotNull @NotNull org.moe.natj.general.ptr.Ptr<VTDecompressionSessionRef> decompressionSessionOut)[@function] VTDecompressionSessionCreate Creates a session for decompressing video frames. Decompressed frames will be emitted through calls to outputCallback.- Parameters:
allocator- An allocator for the session. Pass NULL to use the default allocator.videoFormatDescription- Describes the source video frames.videoDecoderSpecification- Specifies a particular video decoder that must be used. Pass NULL to let the video toolbox choose a decoder.destinationImageBufferAttributes- Describes requirements for emitted pixel buffers. Pass NULL to set no requirements.outputCallback- The callback to be called with decompressed frames. Pass NULL if and only if you will be calling VTDecompressionSessionDecodeFrameWithOutputHandler for decoding frames.decompressionSessionOut- Points to a variable to receive the new decompression session. API-Since: 8.0
-
VTDecompressionSessionInvalidate
public static void VTDecompressionSessionInvalidate(@NotNull @NotNull VTDecompressionSessionRef session)[@function] VTDecompressionSessionInvalidate Tears down a decompression session. When you are done with a decompression session you created, call VTDecompressionSessionInvalidate to tear it down and then CFRelease to release your object reference. When a decompression session's retain count reaches zero, it is automatically invalidated, but since sessions may be retained by multiple parties, it can be hard to predict when this will happen. Calling VTDecompressionSessionInvalidate ensures a deterministic, orderly teardown. API-Since: 8.0
-
VTDecompressionSessionGetTypeID
public static long VTDecompressionSessionGetTypeID()
[@function] VTDecompressionSessionGetTypeID Returns the CFTypeID for decompression sessions. API-Since: 8.0
-
VTDecompressionSessionDecodeFrame
public static int VTDecompressionSessionDecodeFrame(@NotNull @NotNull VTDecompressionSessionRef session, @NotNull @NotNull CMSampleBufferRef sampleBuffer, int decodeFlags, @Nullable @Nullable org.moe.natj.general.ptr.VoidPtr sourceFrameRefCon, @Nullable @Nullable org.moe.natj.general.ptr.IntPtr infoFlagsOut)[@function] VTDecompressionSessionDecodeFrame Decompresses a video frame. If an error is returned from this function, there will be no callback. Otherwise the callback provided during VTDecompressionSessionCreate will be called.- Parameters:
session- The decompression session.sampleBuffer- A CMSampleBuffer containing one or more video frames.decodeFlags- A bitfield of directives to the decompression session and decoder. The kVTDecodeFrame_EnableAsynchronousDecompression bit indicates whether the video decoder may decompress the frame asynchronously. The kVTDecodeFrame_EnableTemporalProcessing bit indicates whether the decoder may delay calls to the output callback so as to enable processing in temporal (display) order. If both flags are clear, the decompression shall complete and your output callback function will be called before VTDecompressionSessionDecodeFrame returns. If either flag is set, VTDecompressionSessionDecodeFrame may return before the output callback function is called.sourceFrameRefCon- Your reference value for the frame. Note that if sampleBuffer contains multiple frames, the output callback function will be called multiple times with this sourceFrameRefCon.infoFlagsOut- Points to a VTDecodeInfoFlags to receive information about the decode operation. The kVTDecodeInfo_Asynchronous bit may be set if the decode is (or was) running asynchronously. The kVTDecodeInfo_FrameDropped bit may be set if the frame was dropped (synchronously). Pass NULL if you do not want to receive this information. API-Since: 8.0
-
VTDecompressionSessionDecodeFrameWithOutputHandler
public static int VTDecompressionSessionDecodeFrameWithOutputHandler(@NotNull @NotNull VTDecompressionSessionRef session, @NotNull @NotNull CMSampleBufferRef sampleBuffer, int decodeFlags, @Nullable @Nullable org.moe.natj.general.ptr.IntPtr infoFlagsOut, @NotNull @NotNull VideoToolbox.Block_VTDecompressionSessionDecodeFrameWithOutputHandler outputHandler)[@function] VTDecompressionSessionDecodeFrameWithOutputHandler Decompresses a video frame. Cannot be called with a session created with a VTDecompressionOutputCallbackRecord. If the VTDecompressionSessionDecodeFrameWithOutputHandler call returns an error, the block will not be called.- Parameters:
session- The decompression session.sampleBuffer- A CMSampleBuffer containing one or more video frames.decodeFlags- A bitfield of directives to the decompression session and decoder. The kVTDecodeFrame_EnableAsynchronousDecompression bit indicates whether the video decoder may decompress the frame asynchronously. The kVTDecodeFrame_EnableTemporalProcessing bit indicates whether the decoder may delay calls to the output callback so as to enable processing in temporal (display) order. If both flags are clear, the decompression shall complete and your output callback function will be called before VTDecompressionSessionDecodeFrame returns. If either flag is set, VTDecompressionSessionDecodeFrame may return before the output callback function is called.infoFlagsOut- Points to a VTDecodeInfoFlags to receive information about the decode operation. The kVTDecodeInfo_Asynchronous bit may be set if the decode is (or was) running asynchronously. The kVTDecodeInfo_FrameDropped bit may be set if the frame was dropped (synchronously). Pass NULL if you do not want to receive this information.outputHandler- The block to be called when decoding the frame is completed. If the VTDecompressionSessionDecodeFrameWithOutputHandler call returns an error, the block will not be called. API-Since: 9.0
-
VTDecompressionSessionFinishDelayedFrames
public static int VTDecompressionSessionFinishDelayedFrames(@NotNull @NotNull VTDecompressionSessionRef session)[@function] VTDecompressionSessionFinishDelayedFrames Directs the decompression session to emit all delayed frames. By default, the decompression session may not delay frames indefinitely; frames may only be indefinitely delayed if the client opts in via kVTDecodeFrame_EnableTemporalProcessing. IMPORTANT NOTE: This function may return before all delayed frames are emitted. To wait for them, call VTDecompressionSessionWaitForAsynchronousFrames instead. API-Since: 8.0
-
VTDecompressionSessionCanAcceptFormatDescription
public static byte VTDecompressionSessionCanAcceptFormatDescription(@NotNull @NotNull VTDecompressionSessionRef session, @NotNull @NotNull CMFormatDescriptionRef newFormatDesc)[@function] VTDecompressionSessionCanAcceptFormatDescription Indicates whether the session can decode frames with the given format description. Some video decoders are able to accommodate minor changes in format without needing to be completely reset in a new session. This function can be used to test whether a format change is sufficiently minor. API-Since: 8.0
-
VTDecompressionSessionWaitForAsynchronousFrames
public static int VTDecompressionSessionWaitForAsynchronousFrames(@NotNull @NotNull VTDecompressionSessionRef session)[@function] VTDecompressionSessionWaitForAsynchronousFrames Waits for any and all outstanding asynchronous and delayed frames to complete, then returns. This function automatically calls VTDecompressionSessionFinishDelayedFrames, so clients don't have to call both. API-Since: 8.0
-
VTDecompressionSessionCopyBlackPixelBuffer
public static int VTDecompressionSessionCopyBlackPixelBuffer(@NotNull @NotNull VTDecompressionSessionRef session, @NotNull @NotNull org.moe.natj.general.ptr.Ptr<CVBufferRef> pixelBufferOut)[@function] VTDecompressionSessionCopyBlackPixelBuffer Copies a black pixel buffer from the decompression session. The pixel buffer is in the same format that the session is decompressing to.- Parameters:
session- The decompression session.pixelBufferOut- Points to a variable to receive the copied pixel buffer. API-Since: 8.0
-
VTFrameSiloGetTypeID
public static long VTFrameSiloGetTypeID()
API-Since: 8.0
-
VTFrameSiloCreate
public static int VTFrameSiloCreate(@Nullable @Nullable CFAllocatorRef allocator, @Nullable @Nullable CFURLRef fileURL, CMTimeRange timeRange, @Nullable @Nullable CFDictionaryRef options, @NotNull @NotNull org.moe.natj.general.ptr.Ptr<VTFrameSiloRef> frameSiloOut)[@function] VTFrameSiloCreate Creates a VTFrameSilo object using a temporary file. The returned VTFrameSilo object may be used to gather frames produced by multi-pass encoding.- Parameters:
fileURL- Specifies where to put the backing file for the VTFrameSilo object. If you pass NULL for fileURL, the video toolbox will pick a unique temporary file name.options- Reserved, pass NULL.timeRange- The valid time range for the frame silo. Must be valid for progress reporting.frameSiloOut- Points to a VTFrameSiloRef to receive the newly created object. Call CFRelease to release your retain on the created VTFrameSilo object when you are done with it. API-Since: 8.0
-
VTFrameSiloAddSampleBuffer
public static int VTFrameSiloAddSampleBuffer(@NotNull @NotNull VTFrameSiloRef silo, @NotNull @NotNull CMSampleBufferRef sampleBuffer)[@function] VTFrameSiloAddSampleBuffer Adds a sample buffer to a VTFrameSilo object. Within each pass, sample buffers must have strictly increasing decode timestamps. Passes after the first pass are begun with a call to VTFrameSiloSetTimeRangesForNextPass. After a call to VTFrameSiloSetTimeRangesForNextPass, sample buffer decode timestamps must also be within the stated time ranges. Note that CMTimeRanges are considered to contain their start times but not their end times.- Returns:
- Returns kVTFrameSiloInvalidTimeStampErr if an attempt is made to add a sample buffer with an inappropriate decode timestamp. API-Since: 8.0
-
VTFrameSiloSetTimeRangesForNextPass
public static int VTFrameSiloSetTimeRangesForNextPass(@NotNull @NotNull VTFrameSiloRef silo, long timeRangeCount, @NotNull @NotNull CMTimeRange timeRangeArray)[@function] VTFrameSiloSetTimeRangesForNextPass Begins a new pass of samples to be added to a VTFrameSilo object. Previously-added sample buffers with decode timestamps within the time ranges will be deleted from the VTFrameSilo. It is not necessary to call VTFrameSiloSetTimeRangesForNextPass before adding the first pass' sample buffers.- Returns:
- Returns kVTFrameSiloInvalidTimeRangeErr if any time ranges are non-numeric, overlap or are not in ascending order. API-Since: 8.0
-
VTFrameSiloGetProgressOfCurrentPass
public static int VTFrameSiloGetProgressOfCurrentPass(@NotNull @NotNull VTFrameSiloRef silo, @NotNull @NotNull org.moe.natj.general.ptr.FloatPtr progressOut)[@function] VTFrameSiloGetProgressOfCurrentPass Gets the progress of the current pass. Calculates the current progress based on the most recent sample buffer added and the current pass time ranges.- Returns:
- Returns kVTFrameSiloInvalidTimeRangeErr if any time ranges are non-numeric, overlap or are not in ascending order. API-Since: 8.0
-
VTFrameSiloCallFunctionForEachSampleBuffer
public static int VTFrameSiloCallFunctionForEachSampleBuffer(@NotNull @NotNull VTFrameSiloRef silo, CMTimeRange timeRange, @Nullable @Nullable org.moe.natj.general.ptr.VoidPtr refcon, @NotNull @NotNull VideoToolbox.Function_VTFrameSiloCallFunctionForEachSampleBuffer callback)[@function] VTFrameSiloCallFunctionForEachSampleBuffer Retrieves sample buffers from a VTFrameSilo object. You call this function to retrieve sample buffers at the end of a multi-pass compression session.- Parameters:
timeRange- The decode time range of sample buffers to retrieve. Pass kCMTimeRangeInvalid to retrieve all sample buffers from the VTFrameSilo.callback- A function to be called, in decode order, with each sample buffer that was added. To abort iteration early, return a nonzero status. The VTFrameSilo may write sample buffers and data to the backing file between addition and retrieval; do not expect to get identical object pointers back.- Returns:
- Returns kVTFrameSiloInvalidTimeRangeErr if any time ranges are non-numeric, overlap or are not in ascending order. Returns any nonzero status returned by the callback function. API-Since: 8.0
-
VTFrameSiloCallBlockForEachSampleBuffer
public static int VTFrameSiloCallBlockForEachSampleBuffer(@NotNull @NotNull VTFrameSiloRef silo, CMTimeRange timeRange, @NotNull @NotNull VideoToolbox.Block_VTFrameSiloCallBlockForEachSampleBuffer handler)[@function] VTFrameSiloCallBlockForEachSampleBuffer Retrieves sample buffers from a VTFrameSilo object. You call this function to retrieve sample buffers at the end of a multi-pass compression session.- Parameters:
timeRange- The decode time range of sample buffers to retrieve. Pass kCMTimeRangeInvalid to retrieve all sample buffers from the VTFrameSilo.handler- A block to be called, in decode order, with each sample buffer that was added. To abort iteration early, return a nonzero status. The VTFrameSilo may write sample buffers and data to the backing file between addition and retrieval; do not expect to get identical object pointers back.- Returns:
- Returns kVTFrameSiloInvalidTimeRangeErr if any time ranges are non-numeric, overlap or are not in ascending order. Returns any nonzero status returned by the handler block. API-Since: 8.0
-
VTMultiPassStorageGetTypeID
public static long VTMultiPassStorageGetTypeID()
API-Since: 8.0
-
VTMultiPassStorageCreate
public static int VTMultiPassStorageCreate(@Nullable @Nullable CFAllocatorRef allocator, @Nullable @Nullable CFURLRef fileURL, CMTimeRange timeRange, @Nullable @Nullable CFDictionaryRef options, @NotNull @NotNull org.moe.natj.general.ptr.Ptr<VTMultiPassStorageRef> multiPassStorageOut)[@function] VTMultiPassStorageCreate Creates a VTMultiPassStorage object using a temporary file. The returned VTMultiPassStorage object may be used to perform multi-pass encoding; see kVTCompressionPropertyKey_MultiPassStorage. Call CFRelease to release your retain on the created VTMultiPassStorage object when you are done with it.- Parameters:
fileURL- Specifies where to put the backing file for the VTMultiPassStorage object. If you pass NULL for fileURL, the video toolbox will pick a unique temporary file name.timeRange- Gives a hint to the multi pass storage about valid time stamps for data.options- If the file did not exist when the storage was created, the file will be deleted when the VTMultiPassStorage object is finalized, unless you set the kVTMultiPassStorageCreationOption_DoNotDelete option to kCFBooleanTrue in the options dictionary. API-Since: 8.0
-
VTMultiPassStorageClose
public static int VTMultiPassStorageClose(@NotNull @NotNull VTMultiPassStorageRef multiPassStorage)[@function] VTMultiPassStorageClose Ensures that any pending data is written to the multipass storage file and closes the file. After this function is called, all methods on the multipass storage object will fail. It is still necessary to release the object by calling CFRelease. API-Since: 8.0
-
VTCopyVideoEncoderList
public static int VTCopyVideoEncoderList(@Nullable @Nullable CFDictionaryRef options, @NotNull @NotNull org.moe.natj.general.ptr.Ptr<CFArrayRef> listOfVideoEncodersOut)[@function] VTCopyVideoEncoderList Builds a list of available video encoders. The caller must CFRelease the returned list. API-Since: 8.0
-
VTCreateCGImageFromCVPixelBuffer
public static int VTCreateCGImageFromCVPixelBuffer(@NotNull @NotNull CVBufferRef pixelBuffer, @Nullable @Nullable CFDictionaryRef options, @NotNull @NotNull org.moe.natj.general.ptr.Ptr<CGImageRef> imageOut)[@function] VTCreateCGImageFromCVPixelBuffer Creates a CGImage using the provided CVPixelBuffer This routine creates a CGImage representation of the image data contained in the provided CVPixelBuffer. The source CVPixelBuffer may be retained for the lifetime of the CGImage. Changes to the CVPixelBuffer after making this call (other than releasing it) will have undefined results. Not all CVPixelBuffer pixel formats will support conversion into a CGImage compatible pixel format. API-Since: 9.0- Parameters:
pixelBuffer- The pixelBuffer to be used as the image data source for the CGImage.options- no options currently. pass NULL.imageOut- pointer to an address to receive the newly created CGImage.
-
kVTCompressionPropertyKey_NumberOfPendingFrames
@NotNull public static @NotNull CFStringRef kVTCompressionPropertyKey_NumberOfPendingFrames()
Read-only, CFNumberAPI-Since: 8.0
-
kVTCompressionPropertyKey_PixelBufferPoolIsShared
@NotNull public static @NotNull CFStringRef kVTCompressionPropertyKey_PixelBufferPoolIsShared()
Read-only, CFBoolean API-Since: 8.0
-
kVTCompressionPropertyKey_VideoEncoderPixelBufferAttributes
@NotNull public static @NotNull CFStringRef kVTCompressionPropertyKey_VideoEncoderPixelBufferAttributes()
Read-only, CFDictionary API-Since: 8.0
-
kVTCompressionPropertyKey_MaxKeyFrameInterval
@NotNull public static @NotNull CFStringRef kVTCompressionPropertyKey_MaxKeyFrameInterval()
Read/write, CFNumber, Optional API-Since: 8.0
-
kVTCompressionPropertyKey_MaxKeyFrameIntervalDuration
@NotNull public static @NotNull CFStringRef kVTCompressionPropertyKey_MaxKeyFrameIntervalDuration()
Read/write, CFNumber, Optional API-Since: 8.0
-
kVTCompressionPropertyKey_AllowTemporalCompression
@NotNull public static @NotNull CFStringRef kVTCompressionPropertyKey_AllowTemporalCompression()
Read/Write, CFBoolean, Optional, defaults to true API-Since: 8.0
-
kVTCompressionPropertyKey_AllowFrameReordering
@NotNull public static @NotNull CFStringRef kVTCompressionPropertyKey_AllowFrameReordering()
Read/Write, CFBoolean, Optional, defaults to true API-Since: 8.0
-
kVTCompressionPropertyKey_AverageBitRate
@NotNull public static @NotNull CFStringRef kVTCompressionPropertyKey_AverageBitRate()
Read/write, CFNumber, Optional API-Since: 8.0
-
kVTCompressionPropertyKey_DataRateLimits
@NotNull public static @NotNull CFStringRef kVTCompressionPropertyKey_DataRateLimits()
Read/write, CFArray[CFNumber], [bytes, seconds, bytes, seconds...], Optional API-Since: 8.0
-
kVTCompressionPropertyKey_Quality
@NotNull public static @NotNull CFStringRef kVTCompressionPropertyKey_Quality()
Read/write, CFNumber, Optional API-Since: 8.0
-
kVTCompressionPropertyKey_MoreFramesBeforeStart
@NotNull public static @NotNull CFStringRef kVTCompressionPropertyKey_MoreFramesBeforeStart()
Read/write, CFBoolean, Optional API-Since: 8.0
-
kVTCompressionPropertyKey_MoreFramesAfterEnd
@NotNull public static @NotNull CFStringRef kVTCompressionPropertyKey_MoreFramesAfterEnd()
Read/write, CFBoolean, Optional API-Since: 8.0
-
kVTCompressionPropertyKey_ProfileLevel
@NotNull public static @NotNull CFStringRef kVTCompressionPropertyKey_ProfileLevel()
Read/write, CFString (enumeration), Optional API-Since: 8.0
-
kVTProfileLevel_H264_Baseline_1_3
@NotNull public static @NotNull CFStringRef kVTProfileLevel_H264_Baseline_1_3()
API-Since: 8.0
-
kVTProfileLevel_H264_Baseline_3_0
@NotNull public static @NotNull CFStringRef kVTProfileLevel_H264_Baseline_3_0()
API-Since: 8.0
-
kVTProfileLevel_H264_Baseline_3_1
@NotNull public static @NotNull CFStringRef kVTProfileLevel_H264_Baseline_3_1()
API-Since: 8.0
-
kVTProfileLevel_H264_Baseline_3_2
@NotNull public static @NotNull CFStringRef kVTProfileLevel_H264_Baseline_3_2()
API-Since: 8.0
-
kVTProfileLevel_H264_Baseline_4_0
@NotNull public static @NotNull CFStringRef kVTProfileLevel_H264_Baseline_4_0()
API-Since: 8.0
-
kVTProfileLevel_H264_Baseline_4_1
@NotNull public static @NotNull CFStringRef kVTProfileLevel_H264_Baseline_4_1()
API-Since: 8.0
-
kVTProfileLevel_H264_Baseline_4_2
@NotNull public static @NotNull CFStringRef kVTProfileLevel_H264_Baseline_4_2()
API-Since: 8.0
-
kVTProfileLevel_H264_Baseline_5_0
@NotNull public static @NotNull CFStringRef kVTProfileLevel_H264_Baseline_5_0()
API-Since: 8.0
-
kVTProfileLevel_H264_Baseline_5_1
@NotNull public static @NotNull CFStringRef kVTProfileLevel_H264_Baseline_5_1()
API-Since: 8.0
-
kVTProfileLevel_H264_Baseline_5_2
@NotNull public static @NotNull CFStringRef kVTProfileLevel_H264_Baseline_5_2()
API-Since: 8.0
-
kVTProfileLevel_H264_Baseline_AutoLevel
@NotNull public static @NotNull CFStringRef kVTProfileLevel_H264_Baseline_AutoLevel()
API-Since: 8.0
-
kVTProfileLevel_H264_Main_3_0
@NotNull public static @NotNull CFStringRef kVTProfileLevel_H264_Main_3_0()
API-Since: 8.0
-
kVTProfileLevel_H264_Main_3_1
@NotNull public static @NotNull CFStringRef kVTProfileLevel_H264_Main_3_1()
API-Since: 8.0
-
kVTProfileLevel_H264_Main_3_2
@NotNull public static @NotNull CFStringRef kVTProfileLevel_H264_Main_3_2()
API-Since: 8.0
-
kVTProfileLevel_H264_Main_4_0
@NotNull public static @NotNull CFStringRef kVTProfileLevel_H264_Main_4_0()
API-Since: 8.0
-
kVTProfileLevel_H264_Main_4_1
@NotNull public static @NotNull CFStringRef kVTProfileLevel_H264_Main_4_1()
API-Since: 8.0
-
kVTProfileLevel_H264_Main_4_2
@NotNull public static @NotNull CFStringRef kVTProfileLevel_H264_Main_4_2()
API-Since: 8.0
-
kVTProfileLevel_H264_Main_5_0
@NotNull public static @NotNull CFStringRef kVTProfileLevel_H264_Main_5_0()
API-Since: 8.0
-
kVTProfileLevel_H264_Main_5_1
@NotNull public static @NotNull CFStringRef kVTProfileLevel_H264_Main_5_1()
API-Since: 8.0
-
kVTProfileLevel_H264_Main_5_2
@NotNull public static @NotNull CFStringRef kVTProfileLevel_H264_Main_5_2()
API-Since: 8.0
-
kVTProfileLevel_H264_Main_AutoLevel
@NotNull public static @NotNull CFStringRef kVTProfileLevel_H264_Main_AutoLevel()
API-Since: 8.0
-
kVTProfileLevel_H264_Extended_5_0
@NotNull public static @NotNull CFStringRef kVTProfileLevel_H264_Extended_5_0()
API-Since: 8.0
-
kVTProfileLevel_H264_Extended_AutoLevel
@NotNull public static @NotNull CFStringRef kVTProfileLevel_H264_Extended_AutoLevel()
API-Since: 8.0
-
kVTProfileLevel_H264_High_3_0
@NotNull public static @NotNull CFStringRef kVTProfileLevel_H264_High_3_0()
API-Since: 8.0
-
kVTProfileLevel_H264_High_3_1
@NotNull public static @NotNull CFStringRef kVTProfileLevel_H264_High_3_1()
API-Since: 8.0
-
kVTProfileLevel_H264_High_3_2
@NotNull public static @NotNull CFStringRef kVTProfileLevel_H264_High_3_2()
API-Since: 8.0
-
kVTProfileLevel_H264_High_4_0
@NotNull public static @NotNull CFStringRef kVTProfileLevel_H264_High_4_0()
API-Since: 8.0
-
kVTProfileLevel_H264_High_4_1
@NotNull public static @NotNull CFStringRef kVTProfileLevel_H264_High_4_1()
API-Since: 8.0
-
kVTProfileLevel_H264_High_4_2
@NotNull public static @NotNull CFStringRef kVTProfileLevel_H264_High_4_2()
API-Since: 8.0
-
kVTProfileLevel_H264_High_5_0
@NotNull public static @NotNull CFStringRef kVTProfileLevel_H264_High_5_0()
API-Since: 8.0
-
kVTProfileLevel_H264_High_5_1
@NotNull public static @NotNull CFStringRef kVTProfileLevel_H264_High_5_1()
API-Since: 8.0
-
kVTProfileLevel_H264_High_5_2
@NotNull public static @NotNull CFStringRef kVTProfileLevel_H264_High_5_2()
API-Since: 8.0
-
kVTProfileLevel_H264_High_AutoLevel
@NotNull public static @NotNull CFStringRef kVTProfileLevel_H264_High_AutoLevel()
API-Since: 8.0
-
kVTProfileLevel_MP4V_Simple_L0
@NotNull public static @NotNull CFStringRef kVTProfileLevel_MP4V_Simple_L0()
API-Since: 8.0
-
kVTProfileLevel_MP4V_Simple_L1
@NotNull public static @NotNull CFStringRef kVTProfileLevel_MP4V_Simple_L1()
API-Since: 8.0
-
kVTProfileLevel_MP4V_Simple_L2
@NotNull public static @NotNull CFStringRef kVTProfileLevel_MP4V_Simple_L2()
API-Since: 8.0
-
kVTProfileLevel_MP4V_Simple_L3
@NotNull public static @NotNull CFStringRef kVTProfileLevel_MP4V_Simple_L3()
API-Since: 8.0
-
kVTProfileLevel_MP4V_Main_L2
@NotNull public static @NotNull CFStringRef kVTProfileLevel_MP4V_Main_L2()
API-Since: 8.0
-
kVTProfileLevel_MP4V_Main_L3
@NotNull public static @NotNull CFStringRef kVTProfileLevel_MP4V_Main_L3()
API-Since: 8.0
-
kVTProfileLevel_MP4V_Main_L4
@NotNull public static @NotNull CFStringRef kVTProfileLevel_MP4V_Main_L4()
API-Since: 8.0
-
kVTProfileLevel_MP4V_AdvancedSimple_L0
@NotNull public static @NotNull CFStringRef kVTProfileLevel_MP4V_AdvancedSimple_L0()
API-Since: 8.0
-
kVTProfileLevel_MP4V_AdvancedSimple_L1
@NotNull public static @NotNull CFStringRef kVTProfileLevel_MP4V_AdvancedSimple_L1()
API-Since: 8.0
-
kVTProfileLevel_MP4V_AdvancedSimple_L2
@NotNull public static @NotNull CFStringRef kVTProfileLevel_MP4V_AdvancedSimple_L2()
API-Since: 8.0
-
kVTProfileLevel_MP4V_AdvancedSimple_L3
@NotNull public static @NotNull CFStringRef kVTProfileLevel_MP4V_AdvancedSimple_L3()
API-Since: 8.0
-
kVTProfileLevel_MP4V_AdvancedSimple_L4
@NotNull public static @NotNull CFStringRef kVTProfileLevel_MP4V_AdvancedSimple_L4()
API-Since: 8.0
-
kVTProfileLevel_H263_Profile0_Level10
@NotNull public static @NotNull CFStringRef kVTProfileLevel_H263_Profile0_Level10()
API-Since: 8.0
-
kVTProfileLevel_H263_Profile0_Level45
@NotNull public static @NotNull CFStringRef kVTProfileLevel_H263_Profile0_Level45()
API-Since: 8.0
-
kVTProfileLevel_H263_Profile3_Level45
@NotNull public static @NotNull CFStringRef kVTProfileLevel_H263_Profile3_Level45()
API-Since: 8.0
-
kVTCompressionPropertyKey_H264EntropyMode
@NotNull public static @NotNull CFStringRef kVTCompressionPropertyKey_H264EntropyMode()
Read/write, CFString, optional API-Since: 8.0
-
kVTH264EntropyMode_CAVLC
@NotNull public static @NotNull CFStringRef kVTH264EntropyMode_CAVLC()
API-Since: 8.0
-
kVTH264EntropyMode_CABAC
@NotNull public static @NotNull CFStringRef kVTH264EntropyMode_CABAC()
API-Since: 8.0
-
kVTCompressionPropertyKey_Depth
@NotNull public static @NotNull CFStringRef kVTCompressionPropertyKey_Depth()
Read/write, CFNumber (CMPixelFormatType), Optional API-Since: 8.0
-
kVTCompressionPropertyKey_MaxFrameDelayCount
@NotNull public static @NotNull CFStringRef kVTCompressionPropertyKey_MaxFrameDelayCount()
Read/write, CFNumber, Optional API-Since: 8.0
-
kVTCompressionPropertyKey_MaxH264SliceBytes
@NotNull public static @NotNull CFStringRef kVTCompressionPropertyKey_MaxH264SliceBytes()
Read/write, CFNumber, Optional API-Since: 8.0
-
kVTCompressionPropertyKey_RealTime
@NotNull public static @NotNull CFStringRef kVTCompressionPropertyKey_RealTime()
Read/write, CFBoolean or NULL, Optional, default NULL API-Since: 8.0
-
kVTCompressionPropertyKey_SourceFrameCount
@NotNull public static @NotNull CFStringRef kVTCompressionPropertyKey_SourceFrameCount()
Read/write, CFNumber, Optional API-Since: 8.0
-
kVTCompressionPropertyKey_ExpectedFrameRate
@NotNull public static @NotNull CFStringRef kVTCompressionPropertyKey_ExpectedFrameRate()
Read/write, CFNumber, Optional API-Since: 8.0
-
kVTCompressionPropertyKey_ExpectedDuration
@NotNull public static @NotNull CFStringRef kVTCompressionPropertyKey_ExpectedDuration()
Read/write, CFNumber(seconds), Optional API-Since: 8.0
-
kVTEncodeFrameOptionKey_ForceKeyFrame
@NotNull public static @NotNull CFStringRef kVTEncodeFrameOptionKey_ForceKeyFrame()
CFBoolean API-Since: 8.0
-
kVTCompressionPropertyKey_CleanAperture
@NotNull public static @NotNull CFStringRef kVTCompressionPropertyKey_CleanAperture()
Read/write, CFDictionary (see CMFormatDescription.h), Optional API-Since: 8.0
-
kVTCompressionPropertyKey_PixelAspectRatio
@NotNull public static @NotNull CFStringRef kVTCompressionPropertyKey_PixelAspectRatio()
Read/write, CFDictionary (see CMFormatDescription.h), Optional API-Since: 8.0
-
kVTCompressionPropertyKey_FieldCount
@NotNull public static @NotNull CFStringRef kVTCompressionPropertyKey_FieldCount()
Read/write, CFNumber (see kCMFormatDescriptionExtension_FieldCount), Optional API-Since: 8.0
-
kVTCompressionPropertyKey_FieldDetail
@NotNull public static @NotNull CFStringRef kVTCompressionPropertyKey_FieldDetail()
Read/write, CFString (see kCMFormatDescriptionExtension_FieldDetail), Optional API-Since: 8.0
-
kVTCompressionPropertyKey_AspectRatio16x9
@NotNull public static @NotNull CFStringRef kVTCompressionPropertyKey_AspectRatio16x9()
Read/write, CFBoolean, Optional API-Since: 8.0
-
kVTCompressionPropertyKey_ProgressiveScan
@NotNull public static @NotNull CFStringRef kVTCompressionPropertyKey_ProgressiveScan()
Read/write, CFBoolean, Optional API-Since: 8.0
-
kVTCompressionPropertyKey_ColorPrimaries
@NotNull public static @NotNull CFStringRef kVTCompressionPropertyKey_ColorPrimaries()
Read/write, CFString (see kCMFormatDescriptionExtension_ColorPrimaries), Optional API-Since: 8.0
-
kVTCompressionPropertyKey_TransferFunction
@NotNull public static @NotNull CFStringRef kVTCompressionPropertyKey_TransferFunction()
Read/write, CFString (see kCMFormatDescriptionExtension_TransferFunction), Optional API-Since: 8.0
-
kVTCompressionPropertyKey_YCbCrMatrix
@NotNull public static @NotNull CFStringRef kVTCompressionPropertyKey_YCbCrMatrix()
Read/write, CFString (see kCMFormatDescriptionExtension_YCbCrMatrix), Optional API-Since: 8.0
-
kVTCompressionPropertyKey_ICCProfile
@NotNull public static @NotNull CFStringRef kVTCompressionPropertyKey_ICCProfile()
Read/write, CFData (see kCMFormatDescriptionExtension_ICCProfile), Optional API-Since: 8.0
-
kVTCompressionPropertyKey_PixelTransferProperties
@NotNull public static @NotNull CFStringRef kVTCompressionPropertyKey_PixelTransferProperties()
Read/Write, CFDictionary containing properties from VTPixelTransferProperties.h. API-Since: 8.0
-
kVTCompressionPropertyKey_MultiPassStorage
@NotNull public static @NotNull CFStringRef kVTCompressionPropertyKey_MultiPassStorage()
VTMultiPassStorage, optional, default is NULL API-Since: 8.0
-
kVTPropertyTypeKey
@NotNull public static @NotNull CFStringRef kVTPropertyTypeKey()
value is CFStringRef, one of the following: API-Since: 8.0
-
kVTPropertyType_Enumeration
@NotNull public static @NotNull CFStringRef kVTPropertyType_Enumeration()
value is one of a list of CFStrings API-Since: 8.0
-
kVTPropertyType_Boolean
@NotNull public static @NotNull CFStringRef kVTPropertyType_Boolean()
value is a CFBoolean API-Since: 8.0
-
kVTPropertyType_Number
@NotNull public static @NotNull CFStringRef kVTPropertyType_Number()
value is a CFNumber API-Since: 8.0
-
kVTPropertyReadWriteStatusKey
@NotNull public static @NotNull CFStringRef kVTPropertyReadWriteStatusKey()
API-Since: 8.0
-
kVTPropertyReadWriteStatus_ReadOnly
@NotNull public static @NotNull CFStringRef kVTPropertyReadWriteStatus_ReadOnly()
API-Since: 8.0
-
kVTPropertyReadWriteStatus_ReadWrite
@NotNull public static @NotNull CFStringRef kVTPropertyReadWriteStatus_ReadWrite()
API-Since: 8.0
-
kVTPropertyShouldBeSerializedKey
@NotNull public static @NotNull CFStringRef kVTPropertyShouldBeSerializedKey()
CFBoolean, false by default API-Since: 8.0
-
kVTPropertySupportedValueMinimumKey
@NotNull public static @NotNull CFStringRef kVTPropertySupportedValueMinimumKey()
CFNumber API-Since: 8.0
-
kVTPropertySupportedValueMaximumKey
@NotNull public static @NotNull CFStringRef kVTPropertySupportedValueMaximumKey()
CFNumber API-Since: 8.0
-
kVTPropertySupportedValueListKey
@NotNull public static @NotNull CFStringRef kVTPropertySupportedValueListKey()
CFArray of appropriate values API-Since: 8.0
-
kVTPropertyDocumentationKey
@NotNull public static @NotNull CFStringRef kVTPropertyDocumentationKey()
a CFString for developer eyes only API-Since: 8.0
-
kVTVideoEncoderSpecification_EncoderID
@NotNull public static @NotNull CFStringRef kVTVideoEncoderSpecification_EncoderID()
CFString API-Since: 8.0
-
kVTDecompressionPropertyKey_PixelBufferPool
@NotNull public static @NotNull CFStringRef kVTDecompressionPropertyKey_PixelBufferPool()
Read-only, CVPixelBufferPool API-Since: 8.0
-
kVTDecompressionPropertyKey_PixelBufferPoolIsShared
@NotNull public static @NotNull CFStringRef kVTDecompressionPropertyKey_PixelBufferPoolIsShared()
Read-only, CFBoolean API-Since: 8.0
-
kVTDecompressionPropertyKey_OutputPoolRequestedMinimumBufferCount
@NotNull public static @NotNull CFStringRef kVTDecompressionPropertyKey_OutputPoolRequestedMinimumBufferCount()
Read/Write, CFNumberRef API-Since: 8.0
-
kVTDecompressionPropertyKey_NumberOfFramesBeingDecoded
@NotNull public static @NotNull CFStringRef kVTDecompressionPropertyKey_NumberOfFramesBeingDecoded()
Read-only, CFNumber. API-Since: 8.0
-
kVTDecompressionPropertyKey_MinOutputPresentationTimeStampOfFramesBeingDecoded
@NotNull public static @NotNull CFStringRef kVTDecompressionPropertyKey_MinOutputPresentationTimeStampOfFramesBeingDecoded()
Read-only, CMTime as CFDictionary. API-Since: 8.0
-
kVTDecompressionPropertyKey_MaxOutputPresentationTimeStampOfFramesBeingDecoded
@NotNull public static @NotNull CFStringRef kVTDecompressionPropertyKey_MaxOutputPresentationTimeStampOfFramesBeingDecoded()
Read-only, CMTime as CFDictionary. API-Since: 8.0
-
kVTDecompressionPropertyKey_ContentHasInterframeDependencies
@NotNull public static @NotNull CFStringRef kVTDecompressionPropertyKey_ContentHasInterframeDependencies()
Read-only, CFBoolean API-Since: 8.0
-
kVTDecompressionPropertyKey_RealTime
@NotNull public static @NotNull CFStringRef kVTDecompressionPropertyKey_RealTime()
Read/write, CFBoolean or NULL, Optional, default is true API-Since: 8.0
-
kVTDecompressionPropertyKey_ThreadCount
@NotNull public static @NotNull CFStringRef kVTDecompressionPropertyKey_ThreadCount()
Read/write, CFNumber API-Since: 8.0
-
kVTDecompressionPropertyKey_FieldMode
@NotNull public static @NotNull CFStringRef kVTDecompressionPropertyKey_FieldMode()
Read/write, CFString, one of API-Since: 8.0
-
kVTDecompressionProperty_FieldMode_BothFields
@NotNull public static @NotNull CFStringRef kVTDecompressionProperty_FieldMode_BothFields()
API-Since: 8.0
-
kVTDecompressionProperty_FieldMode_TopFieldOnly
@NotNull public static @NotNull CFStringRef kVTDecompressionProperty_FieldMode_TopFieldOnly()
API-Since: 8.0
-
kVTDecompressionProperty_FieldMode_BottomFieldOnly
@NotNull public static @NotNull CFStringRef kVTDecompressionProperty_FieldMode_BottomFieldOnly()
API-Since: 8.0
-
kVTDecompressionProperty_FieldMode_SingleField
@NotNull public static @NotNull CFStringRef kVTDecompressionProperty_FieldMode_SingleField()
Most appropriate of either TopFieldOnly or BottomFieldOnly API-Since: 8.0
-
kVTDecompressionProperty_FieldMode_DeinterlaceFields
@NotNull public static @NotNull CFStringRef kVTDecompressionProperty_FieldMode_DeinterlaceFields()
API-Since: 8.0
-
kVTDecompressionPropertyKey_DeinterlaceMode
@NotNull public static @NotNull CFStringRef kVTDecompressionPropertyKey_DeinterlaceMode()
Read/write, CFString; only applicable if kVTDecompressionPropertyKey_FieldMode is kVTDecompressionProperty_FieldMode_DeinterlaceFields; supported values may include: API-Since: 8.0
-
kVTDecompressionProperty_DeinterlaceMode_VerticalFilter
@NotNull public static @NotNull CFStringRef kVTDecompressionProperty_DeinterlaceMode_VerticalFilter()
apply 0.25-0.50-0.25 vertical filter to individual interlaced frames; default mode API-Since: 8.0
-
kVTDecompressionProperty_DeinterlaceMode_Temporal
@NotNull public static @NotNull CFStringRef kVTDecompressionProperty_DeinterlaceMode_Temporal()
apply filter that makes use of a window of multiple frames to generate deinterlaced results, and provides a better result at the expense of a pipeline delay; this mode is only used if kVTDecodeFrame_EnableTemporalProcessing is set, otherwise a non-temporal mode (eg, VerticalFilter) will be used instead API-Since: 8.0
-
kVTDecompressionPropertyKey_ReducedResolutionDecode
@NotNull public static @NotNull CFStringRef kVTDecompressionPropertyKey_ReducedResolutionDecode()
Read/write, CFDictionary containing width and height keys and CFNumber values: API-Since: 8.0
-
kVTDecompressionResolutionKey_Width
@NotNull public static @NotNull CFStringRef kVTDecompressionResolutionKey_Width()
CFNumber API-Since: 8.0
-
kVTDecompressionResolutionKey_Height
@NotNull public static @NotNull CFStringRef kVTDecompressionResolutionKey_Height()
CFNumber API-Since: 8.0
-
kVTDecompressionPropertyKey_ReducedCoefficientDecode
@NotNull public static @NotNull CFStringRef kVTDecompressionPropertyKey_ReducedCoefficientDecode()
Read/write, CFNumber API-Since: 8.0
-
kVTDecompressionPropertyKey_ReducedFrameDelivery
@NotNull public static @NotNull CFStringRef kVTDecompressionPropertyKey_ReducedFrameDelivery()
Read/write, CFNumber in range [0.0,1.0]. API-Since: 8.0
-
kVTDecompressionPropertyKey_OnlyTheseFrames
@NotNull public static @NotNull CFStringRef kVTDecompressionPropertyKey_OnlyTheseFrames()
Read/write, CFString, supported values may include: API-Since: 8.0
-
kVTDecompressionProperty_OnlyTheseFrames_AllFrames
@NotNull public static @NotNull CFStringRef kVTDecompressionProperty_OnlyTheseFrames_AllFrames()
API-Since: 8.0
-
kVTDecompressionProperty_OnlyTheseFrames_NonDroppableFrames
@NotNull public static @NotNull CFStringRef kVTDecompressionProperty_OnlyTheseFrames_NonDroppableFrames()
API-Since: 8.0
-
kVTDecompressionProperty_OnlyTheseFrames_IFrames
@NotNull public static @NotNull CFStringRef kVTDecompressionProperty_OnlyTheseFrames_IFrames()
API-Since: 8.0
-
kVTDecompressionProperty_OnlyTheseFrames_KeyFrames
@NotNull public static @NotNull CFStringRef kVTDecompressionProperty_OnlyTheseFrames_KeyFrames()
API-Since: 8.0
-
kVTDecompressionPropertyKey_SuggestedQualityOfServiceTiers
@NotNull public static @NotNull CFStringRef kVTDecompressionPropertyKey_SuggestedQualityOfServiceTiers()
Read-only, CFArray of CFDictionaries containing property key/value pairs API-Since: 8.0
-
kVTDecompressionPropertyKey_SupportedPixelFormatsOrderedByQuality
@NotNull public static @NotNull CFStringRef kVTDecompressionPropertyKey_SupportedPixelFormatsOrderedByQuality()
Read-only, CFArray[CFNumber(CMPixelFormatType)] ordered best to worst, optional API-Since: 8.0
-
kVTDecompressionPropertyKey_SupportedPixelFormatsOrderedByPerformance
@NotNull public static @NotNull CFStringRef kVTDecompressionPropertyKey_SupportedPixelFormatsOrderedByPerformance()
Read-only, CFArray[CFNumber(CMPixelFormatType)] ordered fast to slow, optional API-Since: 8.0
-
kVTDecompressionPropertyKey_PixelFormatsWithReducedResolutionSupport
@NotNull public static @NotNull CFStringRef kVTDecompressionPropertyKey_PixelFormatsWithReducedResolutionSupport()
Read-only, CFArray[CFNumber(CMPixelFormatType)], optional API-Since: 8.0
-
kVTDecompressionPropertyKey_PixelTransferProperties
@NotNull public static @NotNull CFStringRef kVTDecompressionPropertyKey_PixelTransferProperties()
Read/Write, CFDictionary containing properties from VTPixelTransferProperties.h. API-Since: 8.0
-
kVTMultiPassStorageCreationOption_DoNotDelete
@NotNull public static @NotNull CFStringRef kVTMultiPassStorageCreationOption_DoNotDelete()
CFBoolean, false by default. Provided for use when debugging video encoders.
-
kVTVideoEncoderList_CodecType
@NotNull public static @NotNull CFStringRef kVTVideoEncoderList_CodecType()
CFNumber for four-char-code (eg, 'avc1') API-Since: 8.0
-
kVTVideoEncoderList_EncoderID
@NotNull public static @NotNull CFStringRef kVTVideoEncoderList_EncoderID()
CFString, reverse-DNS-style unique identifier for this encoder; may be passed as kVTVideoEncoderSpecification_EncoderID API-Since: 8.0
-
kVTVideoEncoderList_CodecName
@NotNull public static @NotNull CFStringRef kVTVideoEncoderList_CodecName()
CFString, for display to user (eg, "H.264") API-Since: 8.0
-
kVTVideoEncoderList_EncoderName
@NotNull public static @NotNull CFStringRef kVTVideoEncoderList_EncoderName()
CFString, for display to user (eg, "Apple H.264") API-Since: 8.0
-
kVTVideoEncoderList_DisplayName
@NotNull public static @NotNull CFStringRef kVTVideoEncoderList_DisplayName()
CFString (same as CodecName if there is only one encoder for that format, otherwise same as EncoderName) API-Since: 8.0
-
kVTPixelTransferPropertyKey_ScalingMode
@NotNull public static @NotNull CFStringRef kVTPixelTransferPropertyKey_ScalingMode()
Read/write, CFStringRef, one of kVTScalingMode_* API-Since: 9.0
-
kVTScalingMode_Normal
@NotNull public static @NotNull CFStringRef kVTScalingMode_Normal()
Copy full width and height. Write adjusted clean aperture and pixel aspect ratios to compensate for any change in dimensions. API-Since: 9.0
-
kVTScalingMode_CropSourceToCleanAperture
@NotNull public static @NotNull CFStringRef kVTScalingMode_CropSourceToCleanAperture()
Crop to remove edge processing region; scale remainder to destination clean aperture. API-Since: 9.0
-
kVTScalingMode_Letterbox
@NotNull public static @NotNull CFStringRef kVTScalingMode_Letterbox()
Preserve aspect ratio of the source, and fill remaining areas with black in to fit destination dimensions API-Since: 9.0
-
kVTScalingMode_Trim
@NotNull public static @NotNull CFStringRef kVTScalingMode_Trim()
Preserve aspect ratio of the source, and crop picture to fit destination dimensions API-Since: 9.0
-
kVTPixelTransferPropertyKey_DestinationCleanAperture
@NotNull public static @NotNull CFStringRef kVTPixelTransferPropertyKey_DestinationCleanAperture()
Read/write, CFDictionary with same keys as used in kCVImageBufferCleanApertureKey dictionary. Used as applicable to current kVTPixelTransferPropertyKey_ScalingMode value. API-Since: 9.0
-
kVTPixelTransferPropertyKey_DestinationPixelAspectRatio
@NotNull public static @NotNull CFStringRef kVTPixelTransferPropertyKey_DestinationPixelAspectRatio()
Read/write, CFDictionary with same keys as used in kCVImageBufferPixelAspectRatioKey dictionary. Used as applicable to current kVTPixelTransferPropertyKey_ScalingMode value. API-Since: 9.0
-
kVTPixelTransferPropertyKey_DownsamplingMode
@NotNull public static @NotNull CFStringRef kVTPixelTransferPropertyKey_DownsamplingMode()
Read/write, CFStringRef, one of: API-Since: 9.0
-
kVTDownsamplingMode_Decimate
@NotNull public static @NotNull CFStringRef kVTDownsamplingMode_Decimate()
Default, decimate extra samples API-Since: 9.0
-
kVTDownsamplingMode_Average
@NotNull public static @NotNull CFStringRef kVTDownsamplingMode_Average()
Average missing samples (default center) API-Since: 9.0
-
kVTPixelTransferPropertyKey_DestinationColorPrimaries
@NotNull public static @NotNull CFStringRef kVTPixelTransferPropertyKey_DestinationColorPrimaries()
Read/write, CFString (see kCMFormatDescriptionExtension_ColorPrimaries), Optional API-Since: 9.0
-
kVTPixelTransferPropertyKey_DestinationTransferFunction
@NotNull public static @NotNull CFStringRef kVTPixelTransferPropertyKey_DestinationTransferFunction()
Read/write, CFString (see kCMFormatDescriptionExtension_TransferFunction), Optional API-Since: 9.0
-
kVTPixelTransferPropertyKey_DestinationICCProfile
@NotNull public static @NotNull CFStringRef kVTPixelTransferPropertyKey_DestinationICCProfile()
Read/write, CFData (see kCMFormatDescriptionExtension_ICCProfile), Optional API-Since: 9.0
-
kVTPixelTransferPropertyKey_DestinationYCbCrMatrix
@NotNull public static @NotNull CFStringRef kVTPixelTransferPropertyKey_DestinationYCbCrMatrix()
Read/write, CFString (see kCMFormatDescriptionExtension_YCbCrMatrix), Optional API-Since: 9.0
-
VTIsHardwareDecodeSupported
public static byte VTIsHardwareDecodeSupported(int codecType)
[@function] VTIsHardwareDecodeSupported Indicates whether the current system supports hardware decode for a given codec This routine reports whether the current system supports hardware decode. Using this information, clients can make informed decisions regarding remote assets to load, favoring alternate encodings when hardware decode is not supported. This call returning true does not guarantee that hardware decode resources will be available at all times. API-Since: 11.0
-
VTCopySupportedPropertyDictionaryForEncoder
public static int VTCopySupportedPropertyDictionaryForEncoder(int width, int height, int codecType, @Nullable @Nullable CFDictionaryRef encoderSpecification, @Nullable @Nullable org.moe.natj.general.ptr.Ptr<CFStringRef> encoderIDOut, @Nullable @Nullable org.moe.natj.general.ptr.Ptr<CFDictionaryRef> supportedPropertiesOut)[@function] VTCopySupportedPropertyDictionaryForEncoder Builds a list of supported properties and encoder ID for an encoder The caller must CFRelease the returned supported properties and encoder ID. API-Since: 11.0
-
kVTProfileLevel_HEVC_Main_AutoLevel
@NotNull public static @NotNull CFStringRef kVTProfileLevel_HEVC_Main_AutoLevel()
API-Since: 11.0
-
kVTProfileLevel_HEVC_Main10_AutoLevel
@NotNull public static @NotNull CFStringRef kVTProfileLevel_HEVC_Main10_AutoLevel()
API-Since: 11.0
-
kVTCompressionPropertyKey_BaseLayerFrameRate
@NotNull public static @NotNull CFStringRef kVTCompressionPropertyKey_BaseLayerFrameRate()
Read/write, CFNumber, Optional API-Since: 11.0
-
kVTCompressionPropertyKey_MasteringDisplayColorVolume
@NotNull public static @NotNull CFStringRef kVTCompressionPropertyKey_MasteringDisplayColorVolume()
Read/write, CFData(24 bytes) (see kCMFormatDescriptionExtension_MasteringDisplayColorVolume), Optional API-Since: 11.0
-
kVTCompressionPropertyKey_ContentLightLevelInfo
@NotNull public static @NotNull CFStringRef kVTCompressionPropertyKey_ContentLightLevelInfo()
Read/write, CFData(4 bytes) (see kCMFormatDescriptionExtension_ContentLightLevelInfo), Optional API-Since: 11.0
-
kVTCompressionPropertyKey_EncoderID
@NotNull public static @NotNull CFStringRef kVTCompressionPropertyKey_EncoderID()
CFStringRef API-Since: 11.0
-
kVTDecompressionProperty_TemporalLevelLimit
@NotNull public static @NotNull CFStringRef kVTDecompressionProperty_TemporalLevelLimit()
Read/write, CFNumber API-Since: 11.0
-
kVTCompressionPropertyKey_AllowOpenGOP
@NotNull public static @NotNull CFStringRef kVTCompressionPropertyKey_AllowOpenGOP()
Read/Write, CFBoolean, Optional API-Since: 12.0
-
kVTCompressionPropertyKey_TargetQualityForAlpha
@NotNull public static @NotNull CFStringRef kVTCompressionPropertyKey_TargetQualityForAlpha()
Read/write, CFNumber, Optional, NULL by default API-Since: 13.0
-
kVTCompressionPropertyKey_MaximizePowerEfficiency
@NotNull public static @NotNull CFStringRef kVTCompressionPropertyKey_MaximizePowerEfficiency()
Read/write, CFBoolean or NULL, Optional, default is false API-Since: 12.0
-
kVTVideoEncoderSpecification_RequiredEncoderGPURegistryID
@NotNull public static @NotNull CFStringRef kVTVideoEncoderSpecification_RequiredEncoderGPURegistryID()
CFNumber, Optional
-
kVTVideoEncoderSpecification_PreferredEncoderGPURegistryID
@NotNull public static @NotNull CFStringRef kVTVideoEncoderSpecification_PreferredEncoderGPURegistryID()
CFNumber, Optional
-
kVTCompressionPropertyKey_UsingGPURegistryID
@NotNull public static @NotNull CFStringRef kVTCompressionPropertyKey_UsingGPURegistryID()
CFNumberRef, Read;
-
kVTCompressionPropertyKey_GammaLevel
@NotNull public static @NotNull CFStringRef kVTCompressionPropertyKey_GammaLevel()
Read/write, CFNumber (see kCMFormatDescriptionExtension_GammaLevel), Optional
-
kVTCompressionPropertyKey_AlphaChannelMode
@NotNull public static @NotNull CFStringRef kVTCompressionPropertyKey_AlphaChannelMode()
Read/write, Optional, CFString(kVTAlphaChannelMode_*); if property is not set, matches first source frame's attachment; if that's also not set, defaults to premultiplied alpha API-Since: 13.0
-
kVTAlphaChannelMode_StraightAlpha
@NotNull public static @NotNull CFStringRef kVTAlphaChannelMode_StraightAlpha()
API-Since: 13.0
-
kVTAlphaChannelMode_PremultipliedAlpha
@NotNull public static @NotNull CFStringRef kVTAlphaChannelMode_PremultipliedAlpha()
API-Since: 13.0
-
kVTDecompressionPropertyKey_MaximizePowerEfficiency
@NotNull public static @NotNull CFStringRef kVTDecompressionPropertyKey_MaximizePowerEfficiency()
Read/write, CFBoolean or NULL, Optional, default is false API-Since: 8.0
-
kVTVideoDecoderSpecification_RequiredDecoderGPURegistryID
@NotNull public static @NotNull CFStringRef kVTVideoDecoderSpecification_RequiredDecoderGPURegistryID()
CFNumber, Optional
-
kVTVideoDecoderSpecification_PreferredDecoderGPURegistryID
@NotNull public static @NotNull CFStringRef kVTVideoDecoderSpecification_PreferredDecoderGPURegistryID()
CFNumber, Optional
-
kVTDecompressionPropertyKey_UsingGPURegistryID
@NotNull public static @NotNull CFStringRef kVTDecompressionPropertyKey_UsingGPURegistryID()
CFNumberRef, Read;
-
kVTVideoEncoderList_GPURegistryID
@NotNull public static @NotNull CFStringRef kVTVideoEncoderList_GPURegistryID()
optional. CFNumberRef. If encoder is associated with a specific GPU, this corresponds to the GPU registryID as reported by [MTLDevice registryID].
-
kVTVideoEncoderList_SupportedSelectionProperties
@NotNull public static @NotNull CFStringRef kVTVideoEncoderList_SupportedSelectionProperties()
optional. CFDictionary. If present, represents a subset of supported properties that may be useful during encoder selection API-Since: 13.0
-
kVTVideoEncoderList_PerformanceRating
@NotNull public static @NotNull CFStringRef kVTVideoEncoderList_PerformanceRating()
optional. CFNumber. If present, indicates a relative rating value for the encoder compared to other encoders of the same format. API-Since: 13.0
-
kVTVideoEncoderList_QualityRating
@NotNull public static @NotNull CFStringRef kVTVideoEncoderList_QualityRating()
optional. CFNumber. If present, indicates a Quality Rating value for the encoder relative to other encoders of the same format. This is a highly generalized value and different encoders may have strengths at different resolutions and bitrates. API-Since: 13.0
-
kVTVideoEncoderList_InstanceLimit
@NotNull public static @NotNull CFStringRef kVTVideoEncoderList_InstanceLimit()
optional. CFBoolean. If present and set to kCFBooleanTrue, there is a global instance limit cap on this encoder. Indicates that an encoder is a scarce resource which may potentially be unavailable. API-Since: 13.0
-
kVTVideoEncoderList_IsHardwareAccelerated
@NotNull public static @NotNull CFStringRef kVTVideoEncoderList_IsHardwareAccelerated()
optional. CFBoolean. If present and set to kCFBooleanTrue, indicates that the encoder is hardware accelerated. API-Since: 13.0
-
kVTPixelTransferPropertyKey_RealTime
@NotNull public static @NotNull CFStringRef kVTPixelTransferPropertyKey_RealTime()
Read/write, CFBoolean, default NULL
-
kVTCompressionPropertyKey_PrioritizeEncodingSpeedOverQuality
@NotNull public static @NotNull CFStringRef kVTCompressionPropertyKey_PrioritizeEncodingSpeedOverQuality()
CFBoolean, Optional API-Since: 14.0
-
kVTCompressionPropertyKey_HDRMetadataInsertionMode
@NotNull public static @NotNull CFStringRef kVTCompressionPropertyKey_HDRMetadataInsertionMode()
Read/write, CFString, Optional, default is kVTHDRMetadataInsertionMode_Auto API-Since: 14.0
-
kVTHDRMetadataInsertionMode_None
@NotNull public static @NotNull CFStringRef kVTHDRMetadataInsertionMode_None()
API-Since: 14.0
-
kVTHDRMetadataInsertionMode_Auto
@NotNull public static @NotNull CFStringRef kVTHDRMetadataInsertionMode_Auto()
API-Since: 14.0
-
kVTCompressionPropertyKey_PreserveDynamicHDRMetadata
@NotNull public static @NotNull CFStringRef kVTCompressionPropertyKey_PreserveDynamicHDRMetadata()
CFBoolean, Write, Optional API-Since: 14.0
-
kVTDecompressionPropertyKey_PropagatePerFrameHDRDisplayMetadata
@NotNull public static @NotNull CFStringRef kVTDecompressionPropertyKey_PropagatePerFrameHDRDisplayMetadata()
Read/write, CFBoolean, Optional, default is kCFBooleanTrue API-Since: 14.0
-
kVTVideoEncoderList_SupportsFrameReordering
@NotNull public static @NotNull CFStringRef kVTVideoEncoderList_SupportsFrameReordering()
optional. CFBoolean. By default, this is assumed to be true if not present. If present and set to kCFBooleanFalse, indicates that the encoder will not use B frames. API-Since: 14.0
-
kVTProfileLevel_H264_ConstrainedBaseline_AutoLevel
@NotNull public static @NotNull CFStringRef kVTProfileLevel_H264_ConstrainedBaseline_AutoLevel()
API-Since: 15.0
-
kVTProfileLevel_H264_ConstrainedHigh_AutoLevel
@NotNull public static @NotNull CFStringRef kVTProfileLevel_H264_ConstrainedHigh_AutoLevel()
API-Since: 15.0
-
kVTCompressionPropertyKey_BaseLayerFrameRateFraction
@NotNull public static @NotNull CFStringRef kVTCompressionPropertyKey_BaseLayerFrameRateFraction()
Read/write, CFNumber, Optional API-Since: 14.5
-
kVTCompressionPropertyKey_BaseLayerBitRateFraction
@NotNull public static @NotNull CFStringRef kVTCompressionPropertyKey_BaseLayerBitRateFraction()
Read/write, CFNumber, Optional API-Since: 15.0
-
kVTCompressionPropertyKey_SupportsBaseFrameQP
@NotNull public static @NotNull CFStringRef kVTCompressionPropertyKey_SupportsBaseFrameQP()
Read only, CFBoolean, Optional, false by default API-Since: 15.0
-
kVTEncodeFrameOptionKey_BaseFrameQP
@NotNull public static @NotNull CFStringRef kVTEncodeFrameOptionKey_BaseFrameQP()
CFNumberRef, Optional API-Since: 15.0
-
kVTVideoEncoderSpecification_EnableLowLatencyRateControl
@NotNull public static @NotNull CFStringRef kVTVideoEncoderSpecification_EnableLowLatencyRateControl()
Read/write, CFBoolean, Optional API-Since: 14.5
-
kVTCompressionPropertyKey_MaxAllowedFrameQP
@NotNull public static @NotNull CFStringRef kVTCompressionPropertyKey_MaxAllowedFrameQP()
Read/write, CFNumberRef, Optional API-Since: 15.0
-
kVTCompressionPropertyKey_EnableLTR
@NotNull public static @NotNull CFStringRef kVTCompressionPropertyKey_EnableLTR()
Read/write, CFBoolean, Optional API-Since: 15.0
-
kVTEncodeFrameOptionKey_AcknowledgedLTRTokens
@NotNull public static @NotNull CFStringRef kVTEncodeFrameOptionKey_AcknowledgedLTRTokens()
CFArray[CFNumberRef], Optional API-Since: 15.0
-
kVTEncodeFrameOptionKey_ForceLTRRefresh
@NotNull public static @NotNull CFStringRef kVTEncodeFrameOptionKey_ForceLTRRefresh()
CFNumberRef, Optional API-Since: 15.0
-
kVTSampleAttachmentKey_RequireLTRAcknowledgementToken
@NotNull public static @NotNull CFStringRef kVTSampleAttachmentKey_RequireLTRAcknowledgementToken()
CFNumberRef, Optional API-Since: 15.0
-
kVTVideoEncoderListOption_IncludeStandardDefinitionDVEncoders
@NotNull public static @NotNull CFStringRef kVTVideoEncoderListOption_IncludeStandardDefinitionDVEncoders()
optional. CFBoolean. By default, DV encoders will not be included in the list. If present and set to kCFBooleanTrue, DV encoders will be included. API-Since: 15.0
-
VTPixelTransferSessionCreate
public static int VTPixelTransferSessionCreate(@Nullable @Nullable CFAllocatorRef allocator, @NotNull @NotNull org.moe.natj.general.ptr.Ptr<VTPixelTransferSessionRef> pixelTransferSessionOut)[@function] VTPixelTransferSessionCreate Creates a session for transferring images between CVPixelBuffers. The function creates a session for transferring images between CVPixelBuffers.- Parameters:
allocator- An allocator for the session. Pass NULL to use the default allocator.pixelTransferSessionOut- Points to a variable to receive the new pixel transfer session.
-
VTPixelTransferSessionInvalidate
public static void VTPixelTransferSessionInvalidate(@NotNull @NotNull VTPixelTransferSessionRef session)[@function] VTPixelTransferSessionInvalidate Tears down a pixel transfer session. When you are done with a pixel transfer session you created, call VTPixelTransferSessionInvalidate to tear it down and then CFRelease to release your object reference. When a pixel transfer session's retain count reaches zero, it is automatically invalidated, but since sessions may be retained by multiple parties, it can be hard to predict when this will happen. Calling VTPixelTransferSessionInvalidate ensures a deterministic, orderly teardown.
-
VTPixelTransferSessionGetTypeID
public static long VTPixelTransferSessionGetTypeID()
[@function] VTPixelTransferSessionGetTypeID Returns the CFTypeID for pixel transfer sessions.
-
VTPixelTransferSessionTransferImage
public static int VTPixelTransferSessionTransferImage(@NotNull @NotNull VTPixelTransferSessionRef session, @NotNull @NotNull CVBufferRef sourceBuffer, @NotNull @NotNull CVBufferRef destinationBuffer)[@function] VTPixelTransferSessionTransferImage Copies and/or converts an image from one pixel buffer to another. By default, the full width and height of sourceBuffer are scaled to the full width and height of destinationBuffer. By default, all existing attachments on destinationBuffer are removed and new attachments are set describing the transferred image. Unrecognised attachments on sourceBuffer will be propagated to destinationBuffer. Some properties will modify this behaviour; see VTPixelTransferProperties.h for more details.- Parameters:
session- The pixel transfer session.sourceBuffer- The source buffer.destinationBuffer- The destination buffer.- Returns:
- If the transfer was successful, noErr; otherwise an error code, such as kVTPixelTransferNotSupportedErr.
-
VTPixelRotationSessionCreate
public static int VTPixelRotationSessionCreate(@Nullable @Nullable CFAllocatorRef allocator, @NotNull @NotNull org.moe.natj.general.ptr.Ptr<VTPixelRotationSessionRef> pixelRotationSessionOut)[@function] VTPixelRotationSessionCreate Creates a session for rotating images between CVPixelBuffers.- Parameters:
allocator- An allocator for the session. Pass NULL to use the default allocator.pixelRotationSessionOut- Points to a variable to receive the new pixel rotation session. API-Since: 16.0
-
VTPixelRotationSessionInvalidate
public static void VTPixelRotationSessionInvalidate(@NotNull @NotNull VTPixelRotationSessionRef session)[@function] VTPixelRotationSessionInvalidate Tears down a pixel rotation session. When you are done with an image rotation session you created, call VTPixelRotationSessionInvalidate to tear it down and then VTPixelRotationSessionRelease to release your object reference. When an pixel rotation session's retain count reaches zero, it is automatically invalidated, but since sessions may be retained by multiple parties, it can be hard to predict when this will happen. Calling VTPixelRotationSessionInvalidate ensures a deterministic, orderly teardown. API-Since: 16.0
-
VTPixelRotationSessionGetTypeID
public static long VTPixelRotationSessionGetTypeID()
[@function] VTPixelRotationSessionGetTypeID Returns the CFTypeID for pixel rotation sessions. API-Since: 16.0
-
VTPixelRotationSessionRotateImage
public static int VTPixelRotationSessionRotateImage(@NotNull @NotNull VTPixelRotationSessionRef session, @NotNull @NotNull CVBufferRef sourceBuffer, @NotNull @NotNull CVBufferRef destinationBuffer)[@function] VTPixelRotationSessionRotateImage Rotates a pixel buffer. Rotates sourceBuffer and places the output in destinationBuffer. For 90 and 270 degree rotations, the width and height of destinationBuffer must be the inverse of sourceBuffer. For 180 degree rotations, the width and height of destinationBuffer and sourceBuffer must match. By default, all existing attachments on destinationBuffer are removed and new attachments are set describing the transferred image. Unrecognised attachments on sourceBuffer will be propagated to destinationBuffer. Some properties may modify this behaviour; see VTPixelRotationProperties.h for more details.- Parameters:
session- The pixel rotation session.sourceBuffer- The source buffer.destinationBuffer- The destination buffer.- Returns:
- If the transfer was successful, noErr; otherwise an error code, such as kVTPixelRotationNotSupportedErr. API-Since: 16.0
-
kVTCompressionPropertyKey_ConstantBitRate
@NotNull public static @NotNull CFStringRef kVTCompressionPropertyKey_ConstantBitRate()
CFNumber bits per second, Optional API-Since: 16.0
-
kVTCompressionPropertyKey_EstimatedAverageBytesPerFrame
@NotNull public static @NotNull CFStringRef kVTCompressionPropertyKey_EstimatedAverageBytesPerFrame()
Read Only, CFNumber (bytes per frame) API-Since: 16.0
-
kVTProfileLevel_HEVC_Main42210_AutoLevel
@NotNull public static @NotNull CFStringRef kVTProfileLevel_HEVC_Main42210_AutoLevel()
API-Since: 15.4
-
kVTCompressionPropertyKey_OutputBitDepth
@NotNull public static @NotNull CFStringRef kVTCompressionPropertyKey_OutputBitDepth()
Read/write, Optional, CFNumber, NULL by default API-Since: 15.4
-
kVTCompressionPropertyKey_PreserveAlphaChannel
@NotNull public static @NotNull CFStringRef kVTCompressionPropertyKey_PreserveAlphaChannel()
Read/write, CFBoolean, Optional, (effectively) kCFBooleanTrue by default API-Since: 16.0
-
kVTCompressionPropertyKey_ReferenceBufferCount
@NotNull public static @NotNull CFStringRef kVTCompressionPropertyKey_ReferenceBufferCount()
CFNumber, Optional API-Since: 16.0
-
kVTCompressionPropertyKey_MinAllowedFrameQP
@NotNull public static @NotNull CFStringRef kVTCompressionPropertyKey_MinAllowedFrameQP()
Read/write, CFNumberRef, Optional API-Since: 16.0
-
kVTPixelRotationPropertyKey_Rotation
@NotNull public static @NotNull CFStringRef kVTPixelRotationPropertyKey_Rotation()
[@constant] kVTPixelRotationPropertyKey_Rotation Specifies the amount of rotation in degrees. Specifies the amount of rotation to apply when copying source to destination. Valid values: kVTRotation_0, kVTRotation_CW90, kVTRotation_180, and kVTRotation_CCW90 default is kVTRotation_0. API-Since: 16.0
-
kVTRotation_0
@NotNull public static @NotNull CFStringRef kVTRotation_0()
API-Since: 16.0
-
kVTRotation_CW90
@NotNull public static @NotNull CFStringRef kVTRotation_CW90()
API-Since: 16.0
-
kVTRotation_180
@NotNull public static @NotNull CFStringRef kVTRotation_180()
API-Since: 16.0
-
kVTRotation_CCW90
@NotNull public static @NotNull CFStringRef kVTRotation_CCW90()
API-Since: 16.0
-
kVTPixelRotationPropertyKey_FlipHorizontalOrientation
@NotNull public static @NotNull CFStringRef kVTPixelRotationPropertyKey_FlipHorizontalOrientation()
[@constant] kVTPixelRotationPropertyKey_FlipHorizontalOrientation Specifies the horizontal flip. kVTPixelRotationPropertyKey_FlipHorizontalOrientation must pass a CFBoolean as value. true will apply a horizontal flip after the rotation. default is false; API-Since: 16.0
-
kVTPixelRotationPropertyKey_FlipVerticalOrientation
@NotNull public static @NotNull CFStringRef kVTPixelRotationPropertyKey_FlipVerticalOrientation()
[@constant] kVTPixelRotationPropertyKey_FlipVerticalOrientation Specifies the vertical flip. kVTPixelRotationPropertyKey_FlipVerticalOrientation must pass a CFBoolean as value. true will apply a vertical flip after the rotation. default is false; API-Since: 16.0
-
VTIsStereoMVHEVCEncodeSupported
public static byte VTIsStereoMVHEVCEncodeSupported()
[@function] VTIsStereoMVHEVCEncodeSupported Indicates whether the current system supports stereo MV-HEVC encode. This call returning true does not guarantee that encode resources will be available at all times. API-Since: 17.0
-
VTCompressionSessionEncodeMultiImageFrame
public static int VTCompressionSessionEncodeMultiImageFrame(@NotNull @NotNull VTCompressionSessionRef session, @NotNull @NotNull CMTaggedBufferGroupRef taggedBufferGroup, CMTime presentationTimeStamp, CMTime duration, @Nullable @Nullable CFDictionaryRef frameProperties, @Nullable @Nullable org.moe.natj.general.ptr.VoidPtr sourceFrameRefcon, @Nullable @Nullable org.moe.natj.general.ptr.IntPtr infoFlagsOut)[@function] VTCompressionSessionEncodeMultiImageFrame Call this function to present a multi-image frame to the compression session. Encoded frames may or may not be output before the function returns. The client should not modify the pixel data after making this call. The session and/or encoder will retain the image buffer as long as necessary.- Parameters:
session- The compression session.taggedBufferGroup- A CMTaggedBufferGroup containing the multiple images for a video frame to be compressed.presentationTimeStamp- The presentation timestamp for this frame, to be attached to the sample buffer. Each presentation timestamp passed to a session must be greater than the previous one.duration- The presentation duration for this frame, to be attached to the sample buffer. If you do not have duration information, pass kCMTimeInvalid.frameProperties- Contains key/value pairs specifying additional properties for encoding this frame. Note that some session properties may also be changed between frames. Such changes have effect on subsequently encoded frames.sourceFrameRefcon- Your reference value for the frame, which will be passed to the output callback function.infoFlagsOut- Points to a VTEncodeInfoFlags to receive information about the encode operation. The kVTEncodeInfo_Asynchronous bit may be set if the encode is (or was) running asynchronously. The kVTEncodeInfo_FrameDropped bit may be set if the frame was dropped (synchronously). Pass NULL if you do not want to receive this information. API-Since: 17.0
-
VTCompressionSessionEncodeMultiImageFrameWithOutputHandler
public static int VTCompressionSessionEncodeMultiImageFrameWithOutputHandler(@NotNull @NotNull VTCompressionSessionRef session, @NotNull @NotNull CMTaggedBufferGroupRef taggedBufferGroup, CMTime presentationTimeStamp, CMTime duration, @Nullable @Nullable CFDictionaryRef frameProperties, @Nullable @Nullable org.moe.natj.general.ptr.IntPtr infoFlagsOut, @NotNull @NotNull VideoToolbox.Block_VTCompressionSessionEncodeMultiImageFrameWithOutputHandler outputHandler)[@function] VTCompressionSessionEncodeMultiImageFrameWithOutputHandler Call this function to present a multi-image frame to the compression session. Encoded frames may or may not be output before the function returns. The client should not modify the pixel data after making this call. The session and/or encoder will retain the image buffer as long as necessary. Cannot be called with a session created with a VTCompressionOutputCallback.- Parameters:
session- The compression session.taggedBufferGroup- A CMTaggedBufferGroup containing the multiple images for a video frame to be compressed.presentationTimeStamp- The presentation timestamp for this frame, to be attached to the sample buffer. Each presentation timestamp passed to a session must be greater than the previous one.duration- The presentation duration for this frame, to be attached to the sample buffer. If you do not have duration information, pass kCMTimeInvalid.frameProperties- Contains key/value pairs specifying additional properties for encoding this frame. Note that some session properties may also be changed between frames. Such changes have effect on subsequently encoded frames.infoFlagsOut- Points to a VTEncodeInfoFlags to receive information about the encode operation. The kVTEncodeInfo_Asynchronous bit may be set if the encode is (or was) running asynchronously. The kVTEncodeInfo_FrameDropped bit may be set if the frame was dropped (synchronously). Pass NULL if you do not want to receive this information.outputHandler- The block to be called when encoding the frame is completed. This block may be called asynchronously, on a different thread from the one that calls VTCompressionSessionEncodeMultiImageFrameWithOutputHandler. API-Since: 17.0
-
VTIsStereoMVHEVCDecodeSupported
public static byte VTIsStereoMVHEVCDecodeSupported()
[@function] VTIsStereoMVHEVCDecodeSupported Indicates whether the current system supports stereo MV-HEVC decode. This call returning true does not guarantee that decode resources will be available at all times. API-Since: 17.0
-
VTDecompressionSessionSetMultiImageCallback
public static int VTDecompressionSessionSetMultiImageCallback(@NotNull @NotNull VTDecompressionSessionRef decompressionSession, @NotNull @NotNull VideoToolbox.Function_VTDecompressionSessionSetMultiImageCallback outputMultiImageCallback, @Nullable @Nullable org.moe.natj.general.ptr.VoidPtr outputMultiImageRefcon)[@function] VTDecompressionSessionSetMultiImageCallback Provides a callback capable of receiving multiple images for individual DecodeFrame requests. The outputMultiImageCallback will be used when the video decoder outputs CMTaggedBufferGroups. When installed, outputMultiImageCallback will also be used when DecodeFrame operations fail and return a nonzero status. The original single-image callback will only be used in the case where the video decoder outputs a CVImageBuffer instead of a CMTaggedBufferGroup. Terminology note: in multi-image decompression, a single video sample (from one CMSampleBuffer) contains a single frame (with one PTS) that is decoded to produce multiple images. API-Since: 17.0
-
VTDecompressionSessionDecodeFrameWithMultiImageCapableOutputHandler
public static int VTDecompressionSessionDecodeFrameWithMultiImageCapableOutputHandler(@NotNull @NotNull VTDecompressionSessionRef session, @NotNull @NotNull CMSampleBufferRef sampleBuffer, int decodeFlags, @Nullable @Nullable org.moe.natj.general.ptr.IntPtr infoFlagsOut, @NotNull @NotNull VideoToolbox.Block_VTDecompressionSessionDecodeFrameWithMultiImageCapableOutputHandler multiImageCapableOutputHandler)[@function] VTDecompressionSessionDecodeFrameWithMultiImageCapableOutputHandler Decompresses a video frame. Cannot be called with a session created with a VTDecompressionOutputCallbackRecord. If the VTDecompressionSessionDecodeFrameWithOutputHandler call returns an error, the block will not be called.- Parameters:
session- The decompression session.sampleBuffer- A CMSampleBuffer containing one or more video frames.decodeFlags- A bitfield of directives to the decompression session and decoder. The kVTDecodeFrame_EnableAsynchronousDecompression bit indicates whether the video decoder may decompress the frame asynchronously. The kVTDecodeFrame_EnableTemporalProcessing bit indicates whether the decoder may delay calls to the output callback so as to enable processing in temporal (display) order. If both flags are clear, the decompression shall complete and your output callback function will be called before VTDecompressionSessionDecodeFrame returns. If either flag is set, VTDecompressionSessionDecodeFrame may return before the output callback function is called.infoFlagsOut- Points to a VTDecodeInfoFlags to receive information about the decode operation. The kVTDecodeInfo_Asynchronous bit may be set if the decode is (or was) running asynchronously. The kVTDecodeInfo_FrameDropped bit may be set if the frame was dropped (synchronously). Pass NULL if you do not want to receive this information.multiImageCapableHandler- The block to be called when decoding the frame is completed. If the VTDecompressionSessionDecodeFrameWithMultiImageCapableOutputHandler call returns an error, the block will not be called. API-Since: 17.0
-
kVTCompressionPropertyKey_MVHEVCVideoLayerIDs
@NotNull public static @NotNull CFStringRef kVTCompressionPropertyKey_MVHEVCVideoLayerIDs()
Read/write, CFArray(CFNumber), Optional API-Since: 17.0
-
kVTCompressionPropertyKey_MVHEVCViewIDs
@NotNull public static @NotNull CFStringRef kVTCompressionPropertyKey_MVHEVCViewIDs()
Read/write, CFArray(CFNumber), Optional API-Since: 17.0
-
kVTCompressionPropertyKey_MVHEVCLeftAndRightViewIDs
@NotNull public static @NotNull CFStringRef kVTCompressionPropertyKey_MVHEVCLeftAndRightViewIDs()
Read/write, CFArray[CFNumber(left view ID), CFNumber(right view ID)], Optional API-Since: 17.0
-
kVTCompressionPropertyKey_HeroEye
@NotNull public static @NotNull CFStringRef kVTCompressionPropertyKey_HeroEye()
CFString, see kCMFormatDescriptionExtension_HeroEye API-Since: 17.0
-
kVTCompressionPropertyKey_StereoCameraBaseline
@NotNull public static @NotNull CFStringRef kVTCompressionPropertyKey_StereoCameraBaseline()
CFNumber(uint32), see kCMFormatDescriptionExtension_StereoCameraBaseline API-Since: 17.0
-
kVTCompressionPropertyKey_HorizontalDisparityAdjustment
@NotNull public static @NotNull CFStringRef kVTCompressionPropertyKey_HorizontalDisparityAdjustment()
CFNumber(int32), see kCMFormatDescriptionExtension_HorizontalDisparityAdjustment API-Since: 17.0
-
kVTCompressionPropertyKey_HasLeftStereoEyeView
@NotNull public static @NotNull CFStringRef kVTCompressionPropertyKey_HasLeftStereoEyeView()
CFBoolean, see kCMFormatDescriptionExtension_HasLeftStereoEyeView API-Since: 17.0
-
kVTCompressionPropertyKey_HasRightStereoEyeView
@NotNull public static @NotNull CFStringRef kVTCompressionPropertyKey_HasRightStereoEyeView()
CFBoolean, see kCMFormatDescriptionExtension_HasRightStereoEyeView API-Since: 17.0
-
kVTVideoDecoderSpecification_EnableHardwareAcceleratedVideoDecoder
@NotNull public static @NotNull CFStringRef kVTVideoDecoderSpecification_EnableHardwareAcceleratedVideoDecoder()
CFBoolean, Optional, true by default API-Since: 17.0
-
kVTVideoDecoderSpecification_RequireHardwareAcceleratedVideoDecoder
@NotNull public static @NotNull CFStringRef kVTVideoDecoderSpecification_RequireHardwareAcceleratedVideoDecoder()
CFBoolean, Optional API-Since: 17.0
-
kVTDecompressionPropertyKey_UsingHardwareAcceleratedVideoDecoder
@NotNull public static @NotNull CFStringRef kVTDecompressionPropertyKey_UsingHardwareAcceleratedVideoDecoder()
CFBoolean, Read; assumed false by default API-Since: 17.0
-
kVTDecompressionPropertyKey_GeneratePerFrameHDRDisplayMetadata
@NotNull public static @NotNull CFStringRef kVTDecompressionPropertyKey_GeneratePerFrameHDRDisplayMetadata()
CFBoolean, Read/Write, Optional, kCFBooleanFalse by default API-Since: 17.0
-
kVTDecompressionPropertyKey_RequestedMVHEVCVideoLayerIDs
@NotNull public static @NotNull CFStringRef kVTDecompressionPropertyKey_RequestedMVHEVCVideoLayerIDs()
Read/write, CFArray(CFNumber), Optional API-Since: 17.0
-
-