public final class CoreVideo
extends java.lang.Object
| Modifier and Type | Class and Description |
|---|---|
static interface |
CoreVideo.Function_CVPixelBufferCreateWithBytes |
static interface |
CoreVideo.Function_CVPixelBufferCreateWithPlanarBytes |
| Modifier and Type | Method and Description |
|---|---|
static org.moe.natj.general.ptr.ConstVoidPtr |
CVBufferCopyAttachment(CVBufferRef buffer,
CFStringRef key,
org.moe.natj.general.ptr.IntPtr attachmentMode)
[@function] CVBufferCopyAttachment
|
static CFDictionaryRef |
CVBufferCopyAttachments(CVBufferRef buffer,
int attachmentMode)
[@function] CVBufferCopyAttachments
|
static org.moe.natj.general.ptr.ConstVoidPtr |
CVBufferGetAttachment(CVBufferRef buffer,
CFStringRef key,
org.moe.natj.general.ptr.IntPtr attachmentMode)
[@function] CVBufferGetAttachment
|
static CFDictionaryRef |
CVBufferGetAttachments(CVBufferRef buffer,
int attachmentMode)
[@function] CVBufferGetAttachments
|
static byte |
CVBufferHasAttachment(CVBufferRef buffer,
CFStringRef key)
[@function] CVBufferHasAttachment
|
static void |
CVBufferPropagateAttachments(CVBufferRef sourceBuffer,
CVBufferRef destinationBuffer)
[@function] CVBufferPropagateAttachments
|
static void |
CVBufferRelease(CVBufferRef buffer)
[@function] CVBufferRelease
|
static void |
CVBufferRemoveAllAttachments(CVBufferRef buffer)
[@function] CVBufferRemoveAllAttachments
|
static void |
CVBufferRemoveAttachment(CVBufferRef buffer,
CFStringRef key)
[@function] CVBufferRemoveAttachment
|
static CVBufferRef |
CVBufferRetain(CVBufferRef buffer)
[@function] CVBufferRetain
|
static void |
CVBufferSetAttachment(CVBufferRef buffer,
CFStringRef key,
org.moe.natj.general.ptr.ConstVoidPtr value,
int attachmentMode)
[@function] CVBufferSetAttachment
|
static void |
CVBufferSetAttachments(CVBufferRef buffer,
CFDictionaryRef theAttachments,
int attachmentMode)
[@function] CVBufferSetAttachments
|
static int |
CVColorPrimariesGetIntegerCodePointForString(CFStringRef colorPrimariesString)
Returns the standard integer code point corresponding to a given CoreVideo ColorPrimaries constant string (in the kCVImageBufferColorPrimaries_...
|
static CFStringRef |
CVColorPrimariesGetStringForIntegerCodePoint(int colorPrimariesCodePoint)
Returns the CoreVideo ColorPrimaries constant string (in the kCVImageBufferColorPrimaries_...
|
static CGColorSpaceRef |
CVImageBufferCreateColorSpaceFromAttachments(CFDictionaryRef attachments)
[@function] CVImageBufferCreateColorSpaceFromAttachments
|
static CGRect |
CVImageBufferGetCleanRect(CVBufferRef imageBuffer)
[@function] CVImageBufferGetCleanRect
|
static CGSize |
CVImageBufferGetDisplaySize(CVBufferRef imageBuffer)
[@function] CVImageBufferGetDisplaySize
|
static CGSize |
CVImageBufferGetEncodedSize(CVBufferRef imageBuffer)
[@function] CVImageBufferGetEncodedSize
|
static byte |
CVImageBufferIsFlipped(CVBufferRef imageBuffer)
[@function] CVImageBufferIsFlipped
|
static byte |
CVIsCompressedPixelFormatAvailable(int pixelFormatType)
[@function] CVIsCompressedPixelFormatAvailable
|
static int |
CVMetalTextureCacheCreate(CFAllocatorRef allocator,
CFDictionaryRef cacheAttributes,
java.lang.Object metalDevice,
CFDictionaryRef textureAttributes,
org.moe.natj.general.ptr.Ptr<CVMetalTextureCacheRef> cacheOut)
[@function] CVMetalTextureCacheCreate
|
static int |
CVMetalTextureCacheCreateTextureFromImage(CFAllocatorRef allocator,
CVMetalTextureCacheRef textureCache,
CVBufferRef sourceImage,
CFDictionaryRef textureAttributes,
long pixelFormat,
long width,
long height,
long planeIndex,
org.moe.natj.general.ptr.Ptr<CVBufferRef> textureOut)
[@function] CVMetalTextureCacheCreateTextureFromImage
|
static void |
CVMetalTextureCacheFlush(CVMetalTextureCacheRef textureCache,
long options)
[@function] CVMetalTextureCacheFlush
|
static long |
CVMetalTextureCacheGetTypeID() |
static java.lang.Object |
CVMetalTextureGetTexture(CVBufferRef image)
[@function] CVMetalTextureGetTexture
|
static long |
CVMetalTextureGetTypeID() |
static byte |
CVMetalTextureIsFlipped(CVBufferRef image)
[@function] CVMetalTextureIsFlipped
|
static int |
CVOpenGLESTextureCacheCreate(CFAllocatorRef allocator,
CFDictionaryRef cacheAttributes,
EAGLContext eaglContext,
CFDictionaryRef textureAttributes,
org.moe.natj.general.ptr.Ptr<CVOpenGLESTextureCacheRef> cacheOut)
[@function] CVOpenGLESTextureCacheCreate
|
static int |
CVOpenGLESTextureCacheCreateTextureFromImage(CFAllocatorRef allocator,
CVOpenGLESTextureCacheRef textureCache,
CVBufferRef sourceImage,
CFDictionaryRef textureAttributes,
int target,
int internalFormat,
int width,
int height,
int format,
int type,
long planeIndex,
org.moe.natj.general.ptr.Ptr<CVBufferRef> textureOut)
[@function] CVOpenGLESTextureCacheCreateTextureFromImage
|
static void |
CVOpenGLESTextureCacheFlush(CVOpenGLESTextureCacheRef textureCache,
long options)
[@function] CVOpenGLESTextureCacheFlush
|
static long |
CVOpenGLESTextureCacheGetTypeID()
textureAttributes - reserved for future use
|
static int |
CVOpenGLESTextureGetName(CVBufferRef image)
[@function] CVOpenGLESTextureGetName
|
static int |
CVOpenGLESTextureGetTarget(CVBufferRef image)
[@function] CVOpenGLESTextureGetTarget
|
static long |
CVOpenGLESTextureGetTypeID() |
static byte |
CVOpenGLESTextureIsFlipped(CVBufferRef image)
[@function] CVOpenGLESTextureIsFlipped
|
static CFDictionaryRef |
CVPixelBufferCopyCreationAttributes(CVBufferRef pixelBuffer)
[@function] CVPixelBufferCopyCreationAttributes
|
static int |
CVPixelBufferCreate(CFAllocatorRef allocator,
long width,
long height,
int pixelFormatType,
CFDictionaryRef pixelBufferAttributes,
org.moe.natj.general.ptr.Ptr<CVBufferRef> pixelBufferOut)
[@function] CVPixelBufferCreate
|
static int |
CVPixelBufferCreateResolvedAttributesDictionary(CFAllocatorRef allocator,
CFArrayRef attributes,
org.moe.natj.general.ptr.Ptr<CFDictionaryRef> resolvedDictionaryOut)
[@function] CVPixelBufferCreateResolvedAttributesDictionary
|
static int |
CVPixelBufferCreateWithBytes(CFAllocatorRef allocator,
long width,
long height,
int pixelFormatType,
org.moe.natj.general.ptr.VoidPtr baseAddress,
long bytesPerRow,
CoreVideo.Function_CVPixelBufferCreateWithBytes releaseCallback,
org.moe.natj.general.ptr.VoidPtr releaseRefCon,
CFDictionaryRef pixelBufferAttributes,
org.moe.natj.general.ptr.Ptr<CVBufferRef> pixelBufferOut)
[@function] CVPixelBufferCreateWithBytes
|
static int |
CVPixelBufferCreateWithIOSurface(CFAllocatorRef allocator,
IOSurfaceRef surface,
CFDictionaryRef pixelBufferAttributes,
org.moe.natj.general.ptr.Ptr<CVBufferRef> pixelBufferOut)
[@function] CVPixelBufferCreateWithIOSurface
|
static int |
CVPixelBufferCreateWithPlanarBytes(CFAllocatorRef allocator,
long width,
long height,
int pixelFormatType,
org.moe.natj.general.ptr.VoidPtr dataPtr,
long dataSize,
long numberOfPlanes,
org.moe.natj.general.ptr.Ptr<org.moe.natj.general.ptr.VoidPtr> planeBaseAddress,
org.moe.natj.general.ptr.NUIntPtr planeWidth,
org.moe.natj.general.ptr.NUIntPtr planeHeight,
org.moe.natj.general.ptr.NUIntPtr planeBytesPerRow,
CoreVideo.Function_CVPixelBufferCreateWithPlanarBytes releaseCallback,
org.moe.natj.general.ptr.VoidPtr releaseRefCon,
CFDictionaryRef pixelBufferAttributes,
org.moe.natj.general.ptr.Ptr<CVBufferRef> pixelBufferOut)
[@function] CVPixelBufferCreateWithPlanarBytes
|
static int |
CVPixelBufferFillExtendedPixels(CVBufferRef pixelBuffer)
[@function] CVPixelBufferFillExtendedPixels
|
static org.moe.natj.general.ptr.VoidPtr |
CVPixelBufferGetBaseAddress(CVBufferRef pixelBuffer)
[@function] CVPixelBufferGetBaseAddress
|
static org.moe.natj.general.ptr.VoidPtr |
CVPixelBufferGetBaseAddressOfPlane(CVBufferRef pixelBuffer,
long planeIndex)
[@function] CVPixelBufferGetBaseAddressOfPlane
|
static long |
CVPixelBufferGetBytesPerRow(CVBufferRef pixelBuffer)
[@function] CVPixelBufferGetBytesPerRow
|
static long |
CVPixelBufferGetBytesPerRowOfPlane(CVBufferRef pixelBuffer,
long planeIndex)
[@function] CVPixelBufferGetBytesPerRowOfPlane
|
static long |
CVPixelBufferGetDataSize(CVBufferRef pixelBuffer)
[@function] CVPixelBufferGetDataSize
|
static void |
CVPixelBufferGetExtendedPixels(CVBufferRef pixelBuffer,
org.moe.natj.general.ptr.NUIntPtr extraColumnsOnLeft,
org.moe.natj.general.ptr.NUIntPtr extraColumnsOnRight,
org.moe.natj.general.ptr.NUIntPtr extraRowsOnTop,
org.moe.natj.general.ptr.NUIntPtr extraRowsOnBottom)
[@function] CVPixelBufferGetExtendedPixels
|
static long |
CVPixelBufferGetHeight(CVBufferRef pixelBuffer)
[@function] CVPixelBufferGetHeight
|
static long |
CVPixelBufferGetHeightOfPlane(CVBufferRef pixelBuffer,
long planeIndex)
[@function] CVPixelBufferGetHeightOfPlane
|
static IOSurfaceRef |
CVPixelBufferGetIOSurface(CVBufferRef pixelBuffer)
[@function] CVPixelBufferGetIOSurface
|
static int |
CVPixelBufferGetPixelFormatType(CVBufferRef pixelBuffer)
[@function] CVPixelBufferGetPixelFormatType
|
static long |
CVPixelBufferGetPlaneCount(CVBufferRef pixelBuffer)
[@function] CVPixelBufferGetPlaneCount
|
static long |
CVPixelBufferGetTypeID() |
static long |
CVPixelBufferGetWidth(CVBufferRef pixelBuffer)
[@function] CVPixelBufferGetWidth
|
static long |
CVPixelBufferGetWidthOfPlane(CVBufferRef pixelBuffer,
long planeIndex)
[@function] CVPixelBufferGetWidthOfPlane
|
static byte |
CVPixelBufferIsPlanar(CVBufferRef pixelBuffer)
[@function] CVPixelBufferIsPlanar
|
static int |
CVPixelBufferLockBaseAddress(CVBufferRef pixelBuffer,
long lockFlags)
[@function] CVPixelBufferLockBaseAddress
|
static int |
CVPixelBufferPoolCreate(CFAllocatorRef allocator,
CFDictionaryRef poolAttributes,
CFDictionaryRef pixelBufferAttributes,
org.moe.natj.general.ptr.Ptr<CVPixelBufferPoolRef> poolOut)
[@function] CVPixelBufferPoolCreate
|
static int |
CVPixelBufferPoolCreatePixelBuffer(CFAllocatorRef allocator,
CVPixelBufferPoolRef pixelBufferPool,
org.moe.natj.general.ptr.Ptr<CVBufferRef> pixelBufferOut)
[@function] CVPixelBufferPoolCreatePixelBuffer
|
static int |
CVPixelBufferPoolCreatePixelBufferWithAuxAttributes(CFAllocatorRef allocator,
CVPixelBufferPoolRef pixelBufferPool,
CFDictionaryRef auxAttributes,
org.moe.natj.general.ptr.Ptr<CVBufferRef> pixelBufferOut)
[@function] CVPixelBufferPoolCreatePixelBufferWithAuxAttributes
|
static void |
CVPixelBufferPoolFlush(CVPixelBufferPoolRef pool,
long options)
[@function] CVPixelBufferPoolFlush
|
static CFDictionaryRef |
CVPixelBufferPoolGetAttributes(CVPixelBufferPoolRef pool)
[@function] CVPixelBufferPoolGetAttributes
|
static CFDictionaryRef |
CVPixelBufferPoolGetPixelBufferAttributes(CVPixelBufferPoolRef pool)
[@function] CVPixelBufferPoolGetPixelBufferAttributes
|
static long |
CVPixelBufferPoolGetTypeID() |
static void |
CVPixelBufferPoolRelease(CVPixelBufferPoolRef pixelBufferPool)
[@function] CVPixelBufferPoolRelease
|
static CVPixelBufferPoolRef |
CVPixelBufferPoolRetain(CVPixelBufferPoolRef pixelBufferPool)
[@function] CVPixelBufferPoolRetain
|
static void |
CVPixelBufferRelease(CVBufferRef texture)
[@function] CVPixelBufferRelease
|
static CVBufferRef |
CVPixelBufferRetain(CVBufferRef texture)
[@function] CVPixelBufferRetain
|
static int |
CVPixelBufferUnlockBaseAddress(CVBufferRef pixelBuffer,
long unlockFlags)
[@function] CVPixelBufferUnlockBaseAddress
|
static CFArrayRef |
CVPixelFormatDescriptionArrayCreateWithAllPixelFormatTypes(CFAllocatorRef allocator)
Get a CFArray of CFNumbers containing all known pixel formats as OSTypes
|
static CFDictionaryRef |
CVPixelFormatDescriptionCreateWithPixelFormatType(CFAllocatorRef allocator,
int pixelFormat)
Create a description of a pixel format from a provided OSType
|
static void |
CVPixelFormatDescriptionRegisterDescriptionWithPixelFormatType(CFDictionaryRef description,
int pixelFormat)
Register a new pixel format with CoreVideo
|
static int |
CVTransferFunctionGetIntegerCodePointForString(CFStringRef transferFunctionString)
Returns the standard integer code point corresponding to a given CoreVideo TransferFunction constant string (in the kCVImageBufferTransferFunction_...
|
static CFStringRef |
CVTransferFunctionGetStringForIntegerCodePoint(int transferFunctionCodePoint)
Returns the CoreVideo TransferFunction constant string (in the kCVImageBufferTransferFunction_...
|
static int |
CVYCbCrMatrixGetIntegerCodePointForString(CFStringRef yCbCrMatrixString)
Returns the standard integer code point corresponding to a given CoreVideo YCbCrMatrix constant string (in the kCVImageBufferYCbCrMatrix_...
|
static CFStringRef |
CVYCbCrMatrixGetStringForIntegerCodePoint(int yCbCrMatrixCodePoint)
Returns the CoreVideo YCbCrMatrix constant string (in the kCVImageBufferYCbCrMatrix_...
|
static CFStringRef |
kCVBufferMovieTimeKey()
Generally only available for frames emitted by QuickTime; CFDictionary containing these two keys:
|
static CFStringRef |
kCVBufferNonPropagatedAttachmentsKey() |
static CFStringRef |
kCVBufferPropagatedAttachmentsKey()
The following two keys are useful with the CoreVideo pool and texture cache APIs so that you can specify
an initial set of default buffer attachments to automatically be attached to the buffer when it is created.
|
static CFStringRef |
kCVBufferTimeScaleKey() |
static CFStringRef |
kCVBufferTimeValueKey() |
static CFStringRef |
kCVImageBufferAlphaChannelIsOpaque()
Can be set to kCFBooleanTrue as a hint that the alpha channel is fully opaque.
|
static CFStringRef |
kCVImageBufferAlphaChannelMode_PremultipliedAlpha() |
static CFStringRef |
kCVImageBufferAlphaChannelMode_StraightAlpha() |
static CFStringRef |
kCVImageBufferAlphaChannelModeKey() |
static CFStringRef |
kCVImageBufferAmbientViewingEnvironmentKey()
CFData (8 bytes) containing big-endian data matching payload of Ambient Viewing Environment SEI message
|
static CFStringRef |
kCVImageBufferCGColorSpaceKey()
CGColorSpaceRef
|
static CFStringRef |
kCVImageBufferChromaLocation_Bottom()
Chroma sample is horizontally centered, but co-sited with the bottom row of luma samples.
|
static CFStringRef |
kCVImageBufferChromaLocation_BottomLeft()
Chroma sample is co-sited with the bottom-left luma sample.
|
static CFStringRef |
kCVImageBufferChromaLocation_Center()
Chroma sample is fully centered
|
static CFStringRef |
kCVImageBufferChromaLocation_DV420()
Cr and Cb samples are alternately co-sited with the left luma samples of the same field.
|
static CFStringRef |
kCVImageBufferChromaLocation_Left()
Chroma sample is horizontally co-sited with the left column of luma samples, but centered vertically.
|
static CFStringRef |
kCVImageBufferChromaLocation_Top()
Chroma sample is horizontally centered, but co-sited with the top row of luma samples.
|
static CFStringRef |
kCVImageBufferChromaLocation_TopLeft()
Chroma sample is co-sited with the top-left luma sample.
|
static CFStringRef |
kCVImageBufferChromaLocationBottomFieldKey()
CFString with one of the following CFString values
|
static CFStringRef |
kCVImageBufferChromaLocationTopFieldKey()
CFString with one of the following CFString values
|
static CFStringRef |
kCVImageBufferChromaSubsampling_411() |
static CFStringRef |
kCVImageBufferChromaSubsampling_420() |
static CFStringRef |
kCVImageBufferChromaSubsampling_422() |
static CFStringRef |
kCVImageBufferChromaSubsamplingKey()
CFString/CFNumber with one of the following values
|
static CFStringRef |
kCVImageBufferCleanApertureHeightKey()
CFNumber
|
static CFStringRef |
kCVImageBufferCleanApertureHorizontalOffsetKey()
CFNumber, horizontal offset from center of image buffer
|
static CFStringRef |
kCVImageBufferCleanApertureKey()
CFDictionary containing the following four keys
|
static CFStringRef |
kCVImageBufferCleanApertureVerticalOffsetKey()
CFNumber, vertical offset from center of image buffer
|
static CFStringRef |
kCVImageBufferCleanApertureWidthKey()
CFNumber
|
static CFStringRef |
kCVImageBufferColorPrimaries_DCI_P3() |
static CFStringRef |
kCVImageBufferColorPrimaries_EBU_3213() |
static CFStringRef |
kCVImageBufferColorPrimaries_ITU_R_2020() |
static CFStringRef |
kCVImageBufferColorPrimaries_ITU_R_709_2() |
static CFStringRef |
kCVImageBufferColorPrimaries_P22() |
static CFStringRef |
kCVImageBufferColorPrimaries_P3_D65() |
static CFStringRef |
kCVImageBufferColorPrimaries_SMPTE_C() |
static CFStringRef |
kCVImageBufferColorPrimariesKey()
CFString describing the color primaries.
|
static CFStringRef |
kCVImageBufferContentLightLevelInfoKey()
CFData (4 bytes) containing big-endian data matching payload of Content Light Level Information SEI message
|
static CFStringRef |
kCVImageBufferDisplayDimensionsKey()
CFDictionary with the following two keys
|
static CFStringRef |
kCVImageBufferDisplayHeightKey()
CFNumber
|
static CFStringRef |
kCVImageBufferDisplayWidthKey()
CFNumber
|
static CFStringRef |
kCVImageBufferFieldCountKey()
CFNumber
|
static CFStringRef |
kCVImageBufferFieldDetailKey()
CFString with one of the following four values
|
static CFStringRef |
kCVImageBufferFieldDetailSpatialFirstLineEarly()
CFString
|
static CFStringRef |
kCVImageBufferFieldDetailSpatialFirstLineLate()
CFString
|
static CFStringRef |
kCVImageBufferFieldDetailTemporalBottomFirst()
CFString
|
static CFStringRef |
kCVImageBufferFieldDetailTemporalTopFirst()
CFString
|
static CFStringRef |
kCVImageBufferGammaLevelKey()
CFNumber describing the gamma level, used in absence of (or ignorance of) kCVImageBufferTransferFunctionKey
|
static CFStringRef |
kCVImageBufferICCProfileKey()
CFData representation of the ICC profile
|
static CFStringRef |
kCVImageBufferMasteringDisplayColorVolumeKey()
CFData (24 bytes) containing big-endian data matching payload of ISO/IEC 23008-2:2015(E), D.2.28 Mastering display colour volume SEI message
|
static CFStringRef |
kCVImageBufferPixelAspectRatioHorizontalSpacingKey()
CFNumber
|
static CFStringRef |
kCVImageBufferPixelAspectRatioKey()
CFDictionary with the following two keys
|
static CFStringRef |
kCVImageBufferPixelAspectRatioVerticalSpacingKey()
CFNumber
|
static CFStringRef |
kCVImageBufferPreferredCleanApertureKey()
CFDictionary containing same keys as kCVImageBufferCleanApertureKey
|
static CFStringRef |
kCVImageBufferRegionOfInterestKey()
[@constant] kCVImageBufferRegionOfInterestKey
|
static CFStringRef |
kCVImageBufferTransferFunction_ITU_R_2020()
note: kCVImageBufferTransferFunction_ITU_R_709_2 is equivalent, and preferred
|
static CFStringRef |
kCVImageBufferTransferFunction_ITU_R_2100_HLG() |
static CFStringRef |
kCVImageBufferTransferFunction_ITU_R_709_2() |
static CFStringRef |
kCVImageBufferTransferFunction_Linear() |
static CFStringRef |
kCVImageBufferTransferFunction_SMPTE_240M_1995() |
static CFStringRef |
kCVImageBufferTransferFunction_SMPTE_ST_2084_PQ() |
static CFStringRef |
kCVImageBufferTransferFunction_SMPTE_ST_428_1() |
static CFStringRef |
kCVImageBufferTransferFunction_sRGB()
IEC 61966-2-1 sRGB or sYCC
|
static CFStringRef |
kCVImageBufferTransferFunction_UseGamma() |
static CFStringRef |
kCVImageBufferTransferFunctionKey()
CFString describing the transfer function.
|
static CFStringRef |
kCVImageBufferYCbCrMatrix_DCI_P3()
CFString
|
static CFStringRef |
kCVImageBufferYCbCrMatrix_ITU_R_2020()
CFString
|
static CFStringRef |
kCVImageBufferYCbCrMatrix_ITU_R_601_4()
CFString
|
static CFStringRef |
kCVImageBufferYCbCrMatrix_ITU_R_709_2()
CFString
|
static CFStringRef |
kCVImageBufferYCbCrMatrix_P3_D65()
CFString
|
static CFStringRef |
kCVImageBufferYCbCrMatrix_SMPTE_240M_1995()
CFString
|
static CFStringRef |
kCVImageBufferYCbCrMatrixKey()
CFString describing the color matrix for YCbCr->RGB.
|
static CVTime |
kCVIndefiniteTime() |
static CFStringRef |
kCVMetalTextureCacheMaximumTextureAgeKey()
cacheAttributes
|
static CFStringRef |
kCVMetalTextureStorageMode()
kCVMetalTextureStorageMode is a property that can be placed on a CVMetalTextureCache to instruct the MTLTextureStorageMode of the created MTLTexture.
|
static CFStringRef |
kCVMetalTextureUsage()
kCVMetalTextureUsage is a property that can be placed on a CVMetalTextureCache to instruct the MTLTextureUsage of the created MTLTexture.
|
static CFStringRef |
kCVOpenGLESTextureCacheMaximumTextureAgeKey()
cacheAttributes
|
static CFStringRef |
kCVPixelBufferBytesPerRowAlignmentKey()
CFNumber
|
static CFStringRef |
kCVPixelBufferCGBitmapContextCompatibilityKey()
CFBoolean
|
static CFStringRef |
kCVPixelBufferCGImageCompatibilityKey()
CFBoolean
|
static CFStringRef |
kCVPixelBufferExtendedPixelsBottomKey()
CFNumber
|
static CFStringRef |
kCVPixelBufferExtendedPixelsLeftKey()
CFNumber
|
static CFStringRef |
kCVPixelBufferExtendedPixelsRightKey()
CFNumber
|
static CFStringRef |
kCVPixelBufferExtendedPixelsTopKey()
CFNumber
|
static CFStringRef |
kCVPixelBufferHeightKey()
CFNumber
|
static CFStringRef |
kCVPixelBufferIOSurfaceCoreAnimationCompatibilityKey()
CFBoolean
|
static CFStringRef |
kCVPixelBufferIOSurfaceOpenGLESFBOCompatibilityKey()
CFBoolean
|
static CFStringRef |
kCVPixelBufferIOSurfaceOpenGLESTextureCompatibilityKey()
CFBoolean
|
static CFStringRef |
kCVPixelBufferIOSurfacePropertiesKey()
CFDictionary; presence requests buffer allocation via IOSurface
|
static CFStringRef |
kCVPixelBufferMemoryAllocatorKey()
CFAllocatorRef
|
static CFStringRef |
kCVPixelBufferMetalCompatibilityKey()
CFBoolean
|
static CFStringRef |
kCVPixelBufferOpenGLCompatibilityKey()
CFBoolean
|
static CFStringRef |
kCVPixelBufferOpenGLESCompatibilityKey()
CFBoolean
|
static CFStringRef |
kCVPixelBufferOpenGLESTextureCacheCompatibilityKey() |
static CFStringRef |
kCVPixelBufferPixelFormatTypeKey()
A single CFNumber or a CFArray of CFNumbers (OSTypes)
|
static CFStringRef |
kCVPixelBufferPlaneAlignmentKey()
CFNumber
|
static CFStringRef |
kCVPixelBufferPoolAllocationThresholdKey()
CFNumberRef -- for use only in auxAttributes
|
static CFStringRef |
kCVPixelBufferPoolFreeBufferNotification()
kCVPixelBufferPoolFreeBufferNotification is posted if a buffer becomes available after
CVPixelBufferPoolCreatePixelBufferWithAuxAttributes has failed due to kCVPixelBufferPoolAllocationThresholdKey.
|
static CFStringRef |
kCVPixelBufferPoolMaximumBufferAgeKey() |
static CFStringRef |
kCVPixelBufferPoolMinimumBufferCountKey()
By default, buffers will age out after one second.
|
static CFStringRef |
kCVPixelBufferProResRAWKey_BlackLevel()
[@const] kCVPixelBufferProResRAWKey_BlackLevel
|
static CFStringRef |
kCVPixelBufferProResRAWKey_ColorMatrix()
[@const] kCVPixelBufferProResRAWKey_ColorMatrix
|
static CFStringRef |
kCVPixelBufferProResRAWKey_GainFactor()
[@const] kCVPixelBufferProResRAWKey_GainFactor
|
static CFStringRef |
kCVPixelBufferProResRAWKey_MetadataExtension()
[@const] kCVPixelBufferProResRAWKey_MetadataExtension
|
static CFStringRef |
kCVPixelBufferProResRAWKey_RecommendedCrop()
[@const] kCVPixelBufferProResRAWKey_RecommendedCrop
|
static CFStringRef |
kCVPixelBufferProResRAWKey_SenselSitingOffsets()
[@const] kCVPixelBufferProResRAWKey_SenselSitingOffsets
|
static CFStringRef |
kCVPixelBufferProResRAWKey_WhiteBalanceBlueFactor()
[@const] kCVPixelBufferProResRAWKey_WhiteBalanceBlueFactor
|
static CFStringRef |
kCVPixelBufferProResRAWKey_WhiteBalanceCCT()
[@const] kCVPixelBufferProResRAWKey_WhiteBalanceCCT
|
static CFStringRef |
kCVPixelBufferProResRAWKey_WhiteBalanceRedFactor()
[@const] kCVPixelBufferProResRAWKey_WhiteBalanceRedFactor
|
static CFStringRef |
kCVPixelBufferProResRAWKey_WhiteLevel()
[@const] kCVPixelBufferProResRAWKey_WhiteLevel
|
static CFStringRef |
kCVPixelBufferVersatileBayerKey_BayerPattern()
[@const] kCVPixelBufferVersatileBayerKey_BayerPattern
|
static CFStringRef |
kCVPixelBufferWidthKey()
CFNumber
|
static CFStringRef |
kCVPixelFormatBitsPerBlock()
This value must be present.
|
static CFStringRef |
kCVPixelFormatBlackBlock()
CFData containing the bit pattern for a block of black pixels.
|
static CFStringRef |
kCVPixelFormatBlockHeight() |
static CFStringRef |
kCVPixelFormatBlockHorizontalAlignment()
Used to state requirements on block multiples.
|
static CFStringRef |
kCVPixelFormatBlockVerticalAlignment() |
static CFStringRef |
kCVPixelFormatBlockWidth()
Used to assist with allocating memory for pixel formats that don't have an integer value for
bytes per pixel
Block width is essentially the width in pixels of the smallest "byte addressable" group of pixels
This works in close conjunction with BitsPerBlock
Examples:
8-bit luminance only, BlockWidth would be 1, BitsPerBlock would be 8
16-bit 1555 RGB, BlockWidth would be 1, BitsPerBlock would be 16
32-bit 8888 ARGB, BlockWidth would be 1, BitsPerBlock would be 32
2vuy (CbYCrY), BlockWidth would be 2, BitsPerBlock would be 32
1-bit bitmap, BlockWidth would be 8, BitsPerBlock would be 8
v210, BlockWidth would be 6, BitsPerBlock would be 128
Values assumed to 1 be one if not present
|
static CFStringRef |
kCVPixelFormatCGBitmapContextCompatibility() |
static CFStringRef |
kCVPixelFormatCGBitmapInfo()
CGBitmapInfo value, if required
|
static CFStringRef |
kCVPixelFormatCGImageCompatibility() |
static CFStringRef |
kCVPixelFormatCodecType()
This is the codec type constant, i.e.
|
static CFStringRef |
kCVPixelFormatComponentRange_FullRange() |
static CFStringRef |
kCVPixelFormatComponentRange_VideoRange() |
static CFStringRef |
kCVPixelFormatComponentRange_WideRange() |
static CFStringRef |
kCVPixelFormatComponentRange() |
static CFStringRef |
kCVPixelFormatConstant()
QuickTime/QuickDraw Pixel Format Type constant (OSType)
|
static CFStringRef |
kCVPixelFormatContainsAlpha()
kCFBooleanTrue indicates that the format contains alpha and some images may be considered transparent;
kCFBooleanFalse indicates that there is no alpha and images are always opaque.
|
static CFStringRef |
kCVPixelFormatContainsGrayscale()
kCFBooleanTrue indicates that the format contains Grayscale data;
|
static CFStringRef |
kCVPixelFormatContainsRGB()
kCFBooleanTrue indicates that the format contains RGB data;
|
static CFStringRef |
kCVPixelFormatContainsYCbCr()
kCFBooleanTrue indicates that the format contains YCbCr data;
|
static CFStringRef |
kCVPixelFormatFillExtendedPixelsCallback()
The value for this key is a CFData containing a CVFillExtendedPixelsCallBackData struct
|
static CFStringRef |
kCVPixelFormatFourCC()
This is the equivalent Microsoft FourCC code for this pixel format
|
static CFStringRef |
kCVPixelFormatHorizontalSubsampling()
Subsampling information for this plane.
|
static CFStringRef |
kCVPixelFormatName()
The canonical name for the format.
|
static CFStringRef |
kCVPixelFormatOpenGLCompatibility() |
static CFStringRef |
kCVPixelFormatOpenGLESCompatibility() |
static CFStringRef |
kCVPixelFormatOpenGLFormat()
If present, these two keys describe the OpenGL format and type enums you would use to describe this
image plane to OpenGL
|
static CFStringRef |
kCVPixelFormatOpenGLInternalFormat() |
static CFStringRef |
kCVPixelFormatOpenGLType() |
static CFStringRef |
kCVPixelFormatPlanes()
All buffers have one or more image planes.
|
static CFStringRef |
kCVPixelFormatQDCompatibility()
Pixel format compatibility flags
|
static CFStringRef |
kCVPixelFormatVerticalSubsampling() |
static CVTime |
kCVZeroTime() |
public static CVBufferRef CVBufferRetain(CVBufferRef buffer)
Retains a CVBuffer object
Like CFRetain CVBufferRetain increments the retain count of a CVBuffer object. In contrast to the CF call it is NULL safe.
buffer - A CVBuffer object that you want to retain.public static void CVBufferRelease(CVBufferRef buffer)
Release a CVBuffer object
Like CFRetain CVBufferRetain decrements the retain count of a CVBuffer object. If that count consequently becomes zero the memory allocated to the object is deallocated and the object is destroyed. In contrast to the CF call it is NULL safe.
buffer - A CVBuffer object that you want to release.public static void CVBufferSetAttachment(CVBufferRef buffer, CFStringRef key, org.moe.natj.general.ptr.ConstVoidPtr value, int attachmentMode)
Sets or adds a attachment of a CVBuffer object
You can attach any CF object to a CVBuffer object to store additional information. CVBufferGetAttachment stores an attachement identified by a key. If the key doesn't exist, the attachment will be added. If the key does exist, the existing attachment will be replaced. In bouth cases the retain count of the attachment will be incremented. The value can be any CFType but nil has no defined behavior.
buffer - Target CVBuffer object.key - Key in form of a CFString identifying the desired attachment.value - Attachment in form af a CF object.attachmentMode - Specifies which attachment mode is desired for this attachment. A particular attachment key may only exist in
a single mode at a time.public static org.moe.natj.general.ptr.ConstVoidPtr CVBufferGetAttachment(CVBufferRef buffer, CFStringRef key, org.moe.natj.general.ptr.IntPtr attachmentMode)
Returns a specific attachment of a CVBuffer object
You can attach any CF object to a CVBuffer object to store additional information. CVBufferGetAttachment retrieves an attachement identified by a key.
buffer - Target CVBuffer object.key - Key in form of a CFString identifying the desired attachment.attachmentMode. - Returns the mode of the attachment, if desired. May be NULL.public static void CVBufferRemoveAttachment(CVBufferRef buffer, CFStringRef key)
Removes a specific attachment of a CVBuffer object
CVBufferRemoveAttachment removes an attachement identified by a key. If found the attachement is removed and the retain count decremented.
buffer - Target CVBuffer object.key - Key in form of a CFString identifying the desired attachment.public static void CVBufferRemoveAllAttachments(CVBufferRef buffer)
Removes all attachments of a CVBuffer object
While CVBufferRemoveAttachment removes a specific attachement identified by a key CVBufferRemoveAllAttachments removes all attachments of a buffer and decrements their retain counts.
buffer - Target CVBuffer object.public static CFDictionaryRef CVBufferGetAttachments(CVBufferRef buffer, int attachmentMode)
Returns all attachments of a CVBuffer object
CVBufferGetAttachments is a convenience call that returns all attachments with their corresponding keys in a CFDictionary.
buffer - Target CVBuffer object.public static void CVBufferSetAttachments(CVBufferRef buffer, CFDictionaryRef theAttachments, int attachmentMode)
Sets a set of attachments for a CVBuffer
CVBufferSetAttachments is a convenience call that in turn calls CVBufferSetAttachment for each key and value in the given dictionary. All key value pairs must be in the root level of the dictionary.
buffer - Target CVBuffer object.public static void CVBufferPropagateAttachments(CVBufferRef sourceBuffer, CVBufferRef destinationBuffer)
Copy all propagatable attachments from one buffer to another.
CVBufferPropagateAttachments is a convenience call that copies all attachments with a mode of kCVAttachmentMode_ShouldPropagate from one buffer to another.
sourceBuffer - CVBuffer to copy attachments from.destinationBuffer - CVBuffer to copy attachments to.public static CGSize CVImageBufferGetEncodedSize(CVBufferRef imageBuffer)
Returns the full encoded dimensions of a CVImageBuffer. For example, for an NTSC DV frame this would be 720x480
imageBuffer - A CVImageBuffer that you wish to retrieve the encoded size from.public static CGSize CVImageBufferGetDisplaySize(CVBufferRef imageBuffer)
Returns the nominal output display size (in square pixels) of a CVImageBuffer. For example, for an NTSC DV frame this would be 640x480
imageBuffer - A CVImageBuffer that you wish to retrieve the display size from.public static CGRect CVImageBufferGetCleanRect(CVBufferRef imageBuffer)
Returns the source rectangle of a CVImageBuffer that represents the clean aperture of the buffer in encoded pixels. For example, an NTSC DV frame would return a CGRect with an origin of 8,0 and a size of 704,480. Note that the origin of this rect always the lower left corner. This is the same coordinate system as used by CoreImage.
imageBuffer - A CVImageBuffer that you wish to retrieve the display size from.public static byte CVImageBufferIsFlipped(CVBufferRef imageBuffer)
Returns whether the image is flipped vertically or not.
CVImageBuffer - targetpublic static long CVPixelBufferGetTypeID()
public static CVBufferRef CVPixelBufferRetain(CVBufferRef texture)
Retains a CVPixelBuffer object
Equivalent to CFRetain, but NULL safe
buffer - A CVPixelBuffer object that you want to retain.public static void CVPixelBufferRelease(CVBufferRef texture)
Releases a CVPixelBuffer object
Equivalent to CFRelease, but NULL safe
buffer - A CVPixelBuffer object that you want to release.public static int CVPixelBufferCreateResolvedAttributesDictionary(CFAllocatorRef allocator, CFArrayRef attributes, org.moe.natj.general.ptr.Ptr<CFDictionaryRef> resolvedDictionaryOut)
Takes a CFArray of CFDictionary objects describing various pixel buffer attributes and tries to resolve them into a single dictionary.
This is useful when you need to resolve multiple requirements between different potential clients of a buffer.
attributes - CFArray of CFDictionaries containing kCVPixelBuffer key/value pairs.resolvedDictionaryOut - The resulting dictionary will be placed here.public static int CVPixelBufferCreate(CFAllocatorRef allocator, long width, long height, int pixelFormatType, CFDictionaryRef pixelBufferAttributes, org.moe.natj.general.ptr.Ptr<CVBufferRef> pixelBufferOut)
Call to create a single PixelBuffer for a given size and pixelFormatType.
Creates a single PixelBuffer for a given size and pixelFormatType. It allocates the necessary memory based on the pixel dimensions, pixelFormatType and extended pixels described in the pixelBufferAttributes. Not all parameters of the pixelBufferAttributes will be used here.
width - Width of the PixelBuffer in pixels.height - Height of the PixelBuffer in pixels.pixelBufferOut - The new pixel buffer will be returned herepixelFormatType - Pixel format indentified by its respective OSType.pixelBufferAttributes - A dictionary with additional attributes for a pixel buffer. This parameter is optional. See BufferAttributeKeys for more details.public static int CVPixelBufferCreateWithBytes(CFAllocatorRef allocator, long width, long height, int pixelFormatType, org.moe.natj.general.ptr.VoidPtr baseAddress, long bytesPerRow, CoreVideo.Function_CVPixelBufferCreateWithBytes releaseCallback, org.moe.natj.general.ptr.VoidPtr releaseRefCon, CFDictionaryRef pixelBufferAttributes, org.moe.natj.general.ptr.Ptr<CVBufferRef> pixelBufferOut)
Call to create a single PixelBuffer for a given size and pixelFormatType based on a passed in piece of memory.
Creates a single PixelBuffer for a given size and pixelFormatType. Not all parameters of the pixelBufferAttributes will be used here. It requires a release callback function that will be called, when the PixelBuffer gets destroyed so that the owner of the pixels can free the memory.
width - Width of the PixelBuffer in pixelsheight - Height of the PixelBuffer in pixelspixelFormatType - Pixel format indentified by its respective OSType.baseAddress - Address of the memory storing the pixels.bytesPerRow - Row bytes of the pixel storage memory.releaseCallback - CVPixelBufferReleaseBytePointerCallback function that gets called when the PixelBuffer gets destroyed.releaseRefCon - User data identifying the PixelBuffer for the release callback.pixelBufferAttributes - A dictionary with additional attributes for a a pixel buffer. This parameter is optional. See PixelBufferAttributes for more details.pixelBufferOut - The new pixel buffer will be returned herepublic static int CVPixelBufferCreateWithPlanarBytes(CFAllocatorRef allocator, long width, long height, int pixelFormatType, org.moe.natj.general.ptr.VoidPtr dataPtr, long dataSize, long numberOfPlanes, org.moe.natj.general.ptr.Ptr<org.moe.natj.general.ptr.VoidPtr> planeBaseAddress, org.moe.natj.general.ptr.NUIntPtr planeWidth, org.moe.natj.general.ptr.NUIntPtr planeHeight, org.moe.natj.general.ptr.NUIntPtr planeBytesPerRow, CoreVideo.Function_CVPixelBufferCreateWithPlanarBytes releaseCallback, org.moe.natj.general.ptr.VoidPtr releaseRefCon, CFDictionaryRef pixelBufferAttributes, org.moe.natj.general.ptr.Ptr<CVBufferRef> pixelBufferOut)
Call to create a single PixelBuffer in planar format for a given size and pixelFormatType based on a passed in piece of memory.
Creates a single PixelBuffer for a given size and pixelFormatType. Not all parameters of the pixelBufferAttributes will be used here. It requires a release callback function that will be called, when the PixelBuffer gets destroyed so that the owner of the pixels can free the memory.
width - Width of the PixelBuffer in pixelsheight - Height of the PixelBuffer in pixelspixelFormatType - Pixel format indentified by its respective OSType.pixelBufferOut - The new pixel buffer will be returned heredataPtr - Pass a pointer to a plane descriptor block, or NULL.dataSize - pass size if planes are contiguous, NULL if not.numberOfPlanes - Number of planes.planeBaseAddress - Array of base addresses for the planes.planeWidth - Array of plane widths.planeHeight - Array of plane heights.planeBytesPerRow - Array of plane bytesPerRow values.releaseCallback - CVPixelBufferReleaseBytePointerCallback function that gets called when the PixelBuffer gets destroyed.releaseRefCon - User data identifying the PixelBuffer for the release callback.pixelBufferAttributes - A dictionary with additional attributes for a a pixel buffer. This parameter is optional. See PixelBufferAttributes for more details.public static int CVPixelBufferLockBaseAddress(CVBufferRef pixelBuffer, long lockFlags)
Description Locks the BaseAddress of the PixelBuffer to ensure that the memory is accessible.
This API ensures that the CVPixelBuffer is accessible in system memory. This should only be called if the base address is going to be used and the pixel data will be accessed by the CPU.
pixelBuffer - Target PixelBuffer.lockFlags - See CVPixelBufferLockFlags.public static int CVPixelBufferUnlockBaseAddress(CVBufferRef pixelBuffer, long unlockFlags)
Description Unlocks the BaseAddress of the PixelBuffer.
pixelBuffer - Target PixelBuffer.unlockFlags - See CVPixelBufferLockFlags.public static long CVPixelBufferGetWidth(CVBufferRef pixelBuffer)
Returns the width of the PixelBuffer.
pixelBuffer - Target PixelBuffer.public static long CVPixelBufferGetHeight(CVBufferRef pixelBuffer)
Returns the height of the PixelBuffer.
pixelBuffer - Target PixelBuffer.public static int CVPixelBufferGetPixelFormatType(CVBufferRef pixelBuffer)
Returns the PixelFormatType of the PixelBuffer.
pixelBuffer - Target PixelBuffer.public static org.moe.natj.general.ptr.VoidPtr CVPixelBufferGetBaseAddress(CVBufferRef pixelBuffer)
Returns the base address of the PixelBuffer.
Retrieving the base address for a PixelBuffer requires that the buffer base address be locked via a successful call to CVPixelBufferLockBaseAddress.
pixelBuffer - Target PixelBuffer.public static long CVPixelBufferGetBytesPerRow(CVBufferRef pixelBuffer)
Returns the rowBytes of the PixelBuffer.
pixelBuffer - Target PixelBuffer.public static long CVPixelBufferGetDataSize(CVBufferRef pixelBuffer)
Returns the data size for contigous planes of the PixelBuffer.
pixelBuffer - Target PixelBuffer.public static byte CVPixelBufferIsPlanar(CVBufferRef pixelBuffer)
Returns if the PixelBuffer is planar.
pixelBuffer - Target PixelBuffer.public static long CVPixelBufferGetPlaneCount(CVBufferRef pixelBuffer)
Returns number of planes of the PixelBuffer.
pixelBuffer - Target PixelBuffer.public static long CVPixelBufferGetWidthOfPlane(CVBufferRef pixelBuffer, long planeIndex)
Returns the width of the plane at planeIndex in the PixelBuffer.
On OSX 10.10 and earlier, or iOS 8 and earlier, calling this function with a non-planar buffer will have undefined behavior.
pixelBuffer - Target PixelBuffer.planeIndex - Identifying the plane.public static long CVPixelBufferGetHeightOfPlane(CVBufferRef pixelBuffer, long planeIndex)
Returns the height of the plane at planeIndex in the PixelBuffer.
On OSX 10.10 and earlier, or iOS 8 and earlier, calling this function with a non-planar buffer will have undefined behavior.
pixelBuffer - Target PixelBuffer.planeIndex - Identifying the plane.public static org.moe.natj.general.ptr.VoidPtr CVPixelBufferGetBaseAddressOfPlane(CVBufferRef pixelBuffer, long planeIndex)
Returns the base address of the plane at planeIndex in the PixelBuffer.
Retrieving the base address for a PixelBuffer requires that the buffer base address be locked via a successful call to CVPixelBufferLockBaseAddress. On OSX 10.10 and earlier, or iOS 8 and earlier, calling this function with a non-planar buffer will have undefined behavior.
pixelBuffer - Target PixelBuffer.planeIndex - Identifying the plane.public static long CVPixelBufferGetBytesPerRowOfPlane(CVBufferRef pixelBuffer, long planeIndex)
Returns the row bytes of the plane at planeIndex in the PixelBuffer.
On OSX 10.10 and earlier, or iOS 8 and earlier, calling this function with a non-planar buffer will have undefined behavior.
pixelBuffer - Target PixelBuffer.planeIndex - Identifying the plane.public static void CVPixelBufferGetExtendedPixels(CVBufferRef pixelBuffer, org.moe.natj.general.ptr.NUIntPtr extraColumnsOnLeft, org.moe.natj.general.ptr.NUIntPtr extraColumnsOnRight, org.moe.natj.general.ptr.NUIntPtr extraRowsOnTop, org.moe.natj.general.ptr.NUIntPtr extraRowsOnBottom)
Returns the size of extended pixels of the PixelBuffer.
On OSX 10.10 and earlier, or iOS 8 and earlier, calling this function with a non-planar buffer will have undefined behavior.
pixelBuffer - Target PixelBuffer.extraColumnsOnLeft - Returns the pixel row padding to the left. May be NULL.extraRowsOnTop - Returns the pixel row padding to the top. May be NULL.extraColumnsOnRight - Returns the pixel row padding to the right. May be NULL.extraRowsOnBottom - Returns the pixel row padding to the bottom. May be NULL.public static int CVPixelBufferFillExtendedPixels(CVBufferRef pixelBuffer)
Fills the extended pixels of the PixelBuffer. This function replicates edge pixels to fill the entire extended region of the image.
pixelBuffer - Target PixelBuffer.public static long CVPixelBufferPoolGetTypeID()
public static CVPixelBufferPoolRef CVPixelBufferPoolRetain(CVPixelBufferPoolRef pixelBufferPool)
Retains a CVPixelBufferPoolRef object
Equivalent to CFRetain, but NULL safe
buffer - A CVPixelBufferPoolRef object that you want to retain.public static void CVPixelBufferPoolRelease(CVPixelBufferPoolRef pixelBufferPool)
Releases a CVPixelBufferPoolRef object
Equivalent to CFRelease, but NULL safe
buffer - A CVPixelBufferPoolRef object that you want to release.public static int CVPixelBufferPoolCreate(CFAllocatorRef allocator, CFDictionaryRef poolAttributes, CFDictionaryRef pixelBufferAttributes, org.moe.natj.general.ptr.Ptr<CVPixelBufferPoolRef> poolOut)
Creates a new Pixel Buffer pool.
allocator - The CFAllocatorRef to use for allocating this buffer pool. May be NULL.attributes - A CFDictionaryRef containing the attributes to be used for creating new PixelBuffers within the pool.poolOut - The newly created pool will be placed herepublic static CFDictionaryRef CVPixelBufferPoolGetAttributes(CVPixelBufferPoolRef pool)
Returns the pool attributes dictionary for a CVPixelBufferPool
pool - The CVPixelBufferPoolRef to retrieve the attributes frompublic static CFDictionaryRef CVPixelBufferPoolGetPixelBufferAttributes(CVPixelBufferPoolRef pool)
Returns the attributes of pixel buffers that will be created from this pool.
This function is provided for those cases where you may need to know some information about the buffers that will be created up front.
pool - The CVPixelBufferPoolRef to retrieve the attributes frompublic static int CVPixelBufferPoolCreatePixelBuffer(CFAllocatorRef allocator, CVPixelBufferPoolRef pixelBufferPool, org.moe.natj.general.ptr.Ptr<CVBufferRef> pixelBufferOut)
Creates a new PixelBuffer object from the pool.
The function creates a new (attachment-free) CVPixelBuffer using the pixel buffer attributes specifed during pool creation.
allocator - The CFAllocatorRef to use for creating the pixel buffer. May be NULL.pool - The CVPixelBufferPool that should create the new CVPixelBuffer.pixelBufferOut - The newly created pixel buffer will be placed herepublic static int CVPixelBufferPoolCreatePixelBufferWithAuxAttributes(CFAllocatorRef allocator, CVPixelBufferPoolRef pixelBufferPool, CFDictionaryRef auxAttributes, org.moe.natj.general.ptr.Ptr<CVBufferRef> pixelBufferOut)
Creates a new PixelBuffer object from the pool.
This function creates a new CVPixelBuffer using the pixel buffer attributes specified during pool creation and the attributes specified in the auxAttributes parameter.
allocator - The CFAllocatorRef to use for creating the pixel buffer. May be NULL.pixelBufferPool - The CVPixelBufferPool that should create the new CVPixelBuffer.auxAttributes - Attributes describing this specific allocation request. May be NULL.pixelBufferOut - The newly created pixel buffer will be placed herepublic static void CVPixelBufferPoolFlush(CVPixelBufferPoolRef pool, long options)
Frees as many buffers from the pool as possible.
By default, this function will free all aged out buffers. Setting the kCVPixelBufferPoolFlushExcessBuffers flag will cause this call to free all unused buffers regardless of age.
pool - The CVPixelBufferPool to be flushed.options - Set to kCVPixelBufferPoolFlushExcessBuffers to free all unused buffers
regardless of their age.public static long CVOpenGLESTextureGetTypeID()
public static int CVOpenGLESTextureGetTarget(CVBufferRef image)
Returns the texture target (eg. 2D vs. rect texture extension) of the CVOpenGLESTexture
image - Target CVOpenGLESTexturepublic static int CVOpenGLESTextureGetName(CVBufferRef image)
Returns the texture target name of the CVOpenGLESTexture
image - Target CVOpenGLESTexturepublic static byte CVOpenGLESTextureIsFlipped(CVBufferRef image)
Returns whether the image is flipped vertically or not.
image - Target CVOpenGLESTexturepublic static long CVOpenGLESTextureCacheGetTypeID()
public static int CVOpenGLESTextureCacheCreate(CFAllocatorRef allocator, CFDictionaryRef cacheAttributes, EAGLContext eaglContext, CFDictionaryRef textureAttributes, org.moe.natj.general.ptr.Ptr<CVOpenGLESTextureCacheRef> cacheOut)
Creates a new Texture Cache.
allocator - The CFAllocatorRef to use for allocating the cache. May be NULL.cacheAttributes - A CFDictionaryRef containing the attributes of the cache itself. May be NULL.eaglContext - The OpenGLES 2.0 context into which the texture objects will be created. OpenGLES 1.x contexts are not supported.textureAttributes - A CFDictionaryRef containing the attributes to be used for creating the CVOpenGLESTexture objects. May be NULL.cacheOut - The newly created texture cache will be placed herepublic static int CVOpenGLESTextureCacheCreateTextureFromImage(CFAllocatorRef allocator, CVOpenGLESTextureCacheRef textureCache, CVBufferRef sourceImage, CFDictionaryRef textureAttributes, int target, int internalFormat, int width, int height, int format, int type, long planeIndex, org.moe.natj.general.ptr.Ptr<CVBufferRef> textureOut)
Creates a CVOpenGLESTexture object from an existing CVImageBuffer
Creates or returns a cached CVOpenGLESTexture texture object mapped to the CVImageBuffer and associated params. This creates a live binding between the CVImageBuffer and underlying CVOpenGLESTexture texture object. The EAGLContext associated with the cache may be modified, to create, delete, or bind textures. When used as a source texture or GL_COLOR_ATTACHMENT, the CVImageBuffer must be unlocked before rendering. The source or render buffer texture should not be re-used until the rendering has completed. This can be guaranteed by calling glFlush().
Here are some example mappings:
Mapping a BGRA buffer as a source texture: CVOpenGLESTextureCacheCreateTextureFromImage(kCFAllocatorDefault, textureCache, pixelBuffer, NULL, GL_TEXTURE_2D, GL_RGBA, width, height, GL_RGBA, GL_UNSIGNED_BYTE, 0, &outTexture);
Mapping a BGRA buffer as a renderbuffer: CVOpenGLESTextureCacheCreateTextureFromImage(kCFAllocatorDefault, textureCache, pixelBuffer, NULL, GL_RENDERBUFFER, GL_RGBA8_OES, width, height, GL_RGBA, GL_UNSIGNED_BYTE, 0, &outTexture);
Mapping the luma plane of a 420v buffer as a source texture: CVOpenGLESTextureCacheCreateTextureFromImage(kCFAllocatorDefault, textureCache, pixelBuffer, NULL, GL_TEXTURE_2D, GL_LUMINANCE, width, height, GL_LUMINANCE, GL_UNSIGNED_BYTE, 0, &outTexture);
Mapping the chroma plane of a 420v buffer as a source texture: CVOpenGLESTextureCacheCreateTextureFromImage(kCFAllocatorDefault, textureCache, pixelBuffer, NULL, GL_TEXTURE_2D, GL_LUMINANCE_ALPHA, width/2, height/2, GL_LUMINANCE_ALPHA, GL_UNSIGNED_BYTE, 1, &outTexture);
Mapping a yuvs buffer as a source texture (note: yuvs/f and 2vuy are unpacked and resampled -- not colorspace converted) CVOpenGLESTextureCacheCreateTextureFromImage(kCFAllocatorDefault, textureCache, pixelBuffer, NULL, GL_TEXTURE_2D, GL_RGB_422_APPLE, width, height, GL_RGB_422_APPLE, GL_UNSIGNED_SHORT_8_8_APPLE, 1, &outTexture);
allocator - The CFAllocatorRef to use for allocating the CVOpenGLESTexture object. May be NULL.textureCache - The texture cache object that will manage the texture.sourceImage - The CVImageBuffer that you want to create a CVOpenGLESTexture from.textureAttributes - A CFDictionaryRef containing attributes to be used for creating the CVOpenGLESTexture objects. May be NULL.target - Specifies the target texture. GL_TEXTURE_2D and GL_RENDERBUFFER are the only targets currently supported.internalFormat - Specifies the number of color components in the texture. Examples are GL_RGBA, GL_LUMINANCE, GL_RGBA8_OES, GL_RG, and GL_RED (NOTE: On GLES3 use GL_R8 instead of GL_RED).width - Specifies the width of the texture image.height - Specifies the height of the texture image.format - Specifies the format of the pixel data. Examples are GL_RGBA and GL_LUMINANCE.type - Specifies the data type of the pixel data. Examples are GL_UNSIGNED_BYTE.planeIndex - Specifies the plane of the CVImageBuffer to map bind. Ignored for non-planar CVImageBuffers.textureOut - The newly created texture object will be placed here.public static void CVOpenGLESTextureCacheFlush(CVOpenGLESTextureCacheRef textureCache, long options)
Performs internal housekeeping/recycling operations
This call must be made periodically to give the texture cache a chance to make OpenGLES calls on the OpenGLES context used to create it in order to do housekeeping operations. The EAGLContext associated with the cache may be used to delete or unbind textures.
textureCache - The texture cache object to flushoptions - Currently unused, set to 0.public static CFDictionaryRef CVPixelFormatDescriptionCreateWithPixelFormatType(CFAllocatorRef allocator, int pixelFormat)
public static CFArrayRef CVPixelFormatDescriptionArrayCreateWithAllPixelFormatTypes(CFAllocatorRef allocator)
public static void CVPixelFormatDescriptionRegisterDescriptionWithPixelFormatType(CFDictionaryRef description, int pixelFormat)
public static long CVMetalTextureGetTypeID()
public static java.lang.Object CVMetalTextureGetTexture(CVBufferRef image)
Returns the Meta MTLTexture object of the CVMetalTextureRef
image - Target CVMetalTexturepublic static byte CVMetalTextureIsFlipped(CVBufferRef image)
Returns whether the image is flipped vertically or not.
image - Target CVMetalTexturepublic static long CVMetalTextureCacheGetTypeID()
public static int CVMetalTextureCacheCreate(CFAllocatorRef allocator, CFDictionaryRef cacheAttributes, java.lang.Object metalDevice, CFDictionaryRef textureAttributes, org.moe.natj.general.ptr.Ptr<CVMetalTextureCacheRef> cacheOut)
Creates a new Texture Cache.
allocator - The CFAllocatorRef to use for allocating the cache. May be NULL.cacheAttributes - A CFDictionaryRef containing the attributes of the cache itself. May be NULL.metalDevice - The Metal device for which the texture objects will be created.textureAttributes - A CFDictionaryRef containing the attributes to be used for creating the CVMetalTexture objects. May be NULL.cacheOut - The newly created texture cache will be placed herepublic static int CVMetalTextureCacheCreateTextureFromImage(CFAllocatorRef allocator, CVMetalTextureCacheRef textureCache, CVBufferRef sourceImage, CFDictionaryRef textureAttributes, long pixelFormat, long width, long height, long planeIndex, org.moe.natj.general.ptr.Ptr<CVBufferRef> textureOut)
Creates a CVMetalTexture object from an existing CVImageBuffer
Creates or returns a cached CVMetalTexture texture object mapped to the CVImageBuffer and associated params. This creates a live binding between the CVImageBuffer and underlying CVMetalTexture texture object.
Note that CoreVideo does not explicitly declare any pixel format types to be Metal compatible. The assumption is that if the CVPixelBufferMetalCompatibilityKey has been specified, all buffers will be Metal compatible (IOSurface backed), and thus it is the developer's responsibility to choose an appropriate Metal pixel format for the CVPixelBuffers.
Here are some example mappings:
Mapping a BGRA buffer: CVMetalTextureCacheCreateTextureFromImage(kCFAllocatorDefault, textureCache, pixelBuffer, NULL, MTLPixelFormatBGRA8Unorm, width, height, 0, &outTexture);
Mapping the luma plane of a 420v buffer: CVMetalTextureCacheCreateTextureFromImage(kCFAllocatorDefault, textureCache, pixelBuffer, NULL, MTLPixelFormatR8Unorm, width, height, 0, &outTexture);
Mapping the chroma plane of a 420v buffer as a source texture: CVMetalTextureCacheCreateTextureFromImage(kCFAllocatorDefault, textureCache, pixelBuffer, NULL, MTLPixelFormatRG8Unorm width/2, height/2, 1, &outTexture);
Mapping a yuvs buffer as a source texture (note: yuvs/f and 2vuy are unpacked and resampled -- not colorspace converted) CVMetalTextureCacheCreateTextureFromImage(kCFAllocatorDefault, textureCache, pixelBuffer, NULL, MTLPixelFormatGBGR422, width, height, 1, &outTexture);
allocator - The CFAllocatorRef to use for allocating the CVMetalTexture object. May be NULL.textureCache - The texture cache object that will manage the texture.sourceImage - The CVImageBuffer that you want to create a CVMetalTexture from.textureAttributes - A CFDictionaryRef containing attributes to be used for creating the CVMetalTexture objects. May be NULL.pixelFormat - Specifies the Metal pixel format.width - Specifies the width of the texture image.height - Specifies the height of the texture image.planeIndex - Specifies the plane of the CVImageBuffer to map bind. Ignored for non-planar CVImageBuffers.textureOut - The newly created texture object will be placed here.public static void CVMetalTextureCacheFlush(CVMetalTextureCacheRef textureCache, long options)
Performs internal housekeeping/recycling operations
This call must be made periodically to give the texture cache a chance to do internal housekeeping operations.
textureCache - The texture cache object to flushoptions - Currently unused, set to 0.public static CVTime kCVZeroTime()
public static CVTime kCVIndefiniteTime()
public static CFStringRef kCVBufferPropagatedAttachmentsKey()
public static CFStringRef kCVBufferNonPropagatedAttachmentsKey()
public static CFStringRef kCVBufferMovieTimeKey()
public static CFStringRef kCVBufferTimeValueKey()
public static CFStringRef kCVBufferTimeScaleKey()
public static CFStringRef kCVImageBufferCGColorSpaceKey()
public static CFStringRef kCVImageBufferCleanApertureKey()
public static CFStringRef kCVImageBufferCleanApertureWidthKey()
public static CFStringRef kCVImageBufferCleanApertureHeightKey()
public static CFStringRef kCVImageBufferCleanApertureHorizontalOffsetKey()
public static CFStringRef kCVImageBufferCleanApertureVerticalOffsetKey()
public static CFStringRef kCVImageBufferPreferredCleanApertureKey()
public static CFStringRef kCVImageBufferFieldCountKey()
public static CFStringRef kCVImageBufferFieldDetailKey()
public static CFStringRef kCVImageBufferFieldDetailTemporalTopFirst()
public static CFStringRef kCVImageBufferFieldDetailTemporalBottomFirst()
public static CFStringRef kCVImageBufferFieldDetailSpatialFirstLineEarly()
public static CFStringRef kCVImageBufferFieldDetailSpatialFirstLineLate()
public static CFStringRef kCVImageBufferPixelAspectRatioKey()
public static CFStringRef kCVImageBufferPixelAspectRatioHorizontalSpacingKey()
public static CFStringRef kCVImageBufferPixelAspectRatioVerticalSpacingKey()
public static CFStringRef kCVImageBufferDisplayDimensionsKey()
public static CFStringRef kCVImageBufferDisplayWidthKey()
public static CFStringRef kCVImageBufferDisplayHeightKey()
public static CFStringRef kCVImageBufferGammaLevelKey()
public static CFStringRef kCVImageBufferICCProfileKey()
public static CFStringRef kCVImageBufferYCbCrMatrixKey()
public static CFStringRef kCVImageBufferYCbCrMatrix_ITU_R_709_2()
public static CFStringRef kCVImageBufferYCbCrMatrix_ITU_R_601_4()
public static CFStringRef kCVImageBufferYCbCrMatrix_SMPTE_240M_1995()
public static CFStringRef kCVImageBufferYCbCrMatrix_DCI_P3()
public static CFStringRef kCVImageBufferYCbCrMatrix_P3_D65()
public static CFStringRef kCVImageBufferYCbCrMatrix_ITU_R_2020()
public static CFStringRef kCVImageBufferColorPrimariesKey()
public static CFStringRef kCVImageBufferColorPrimaries_ITU_R_709_2()
public static CFStringRef kCVImageBufferColorPrimaries_EBU_3213()
public static CFStringRef kCVImageBufferColorPrimaries_SMPTE_C()
public static CFStringRef kCVImageBufferColorPrimaries_P22()
public static CFStringRef kCVImageBufferColorPrimaries_DCI_P3()
public static CFStringRef kCVImageBufferColorPrimaries_P3_D65()
public static CFStringRef kCVImageBufferColorPrimaries_ITU_R_2020()
public static CFStringRef kCVImageBufferTransferFunctionKey()
public static CFStringRef kCVImageBufferTransferFunction_ITU_R_709_2()
public static CFStringRef kCVImageBufferTransferFunction_SMPTE_240M_1995()
public static CFStringRef kCVImageBufferTransferFunction_UseGamma()
public static CFStringRef kCVImageBufferTransferFunction_ITU_R_2020()
public static CFStringRef kCVImageBufferTransferFunction_SMPTE_ST_428_1()
public static CFStringRef kCVImageBufferChromaLocationTopFieldKey()
public static CFStringRef kCVImageBufferChromaLocationBottomFieldKey()
public static CFStringRef kCVImageBufferChromaLocation_Left()
public static CFStringRef kCVImageBufferChromaLocation_Center()
public static CFStringRef kCVImageBufferChromaLocation_TopLeft()
public static CFStringRef kCVImageBufferChromaLocation_Top()
public static CFStringRef kCVImageBufferChromaLocation_BottomLeft()
public static CFStringRef kCVImageBufferChromaLocation_Bottom()
public static CFStringRef kCVImageBufferChromaLocation_DV420()
public static CFStringRef kCVImageBufferChromaSubsamplingKey()
public static CFStringRef kCVImageBufferChromaSubsampling_420()
public static CFStringRef kCVImageBufferChromaSubsampling_422()
public static CFStringRef kCVImageBufferChromaSubsampling_411()
public static CFStringRef kCVImageBufferAlphaChannelIsOpaque()
public static CFStringRef kCVPixelBufferPixelFormatTypeKey()
public static CFStringRef kCVPixelBufferMemoryAllocatorKey()
public static CFStringRef kCVPixelBufferWidthKey()
public static CFStringRef kCVPixelBufferHeightKey()
public static CFStringRef kCVPixelBufferExtendedPixelsLeftKey()
public static CFStringRef kCVPixelBufferExtendedPixelsTopKey()
public static CFStringRef kCVPixelBufferExtendedPixelsRightKey()
public static CFStringRef kCVPixelBufferExtendedPixelsBottomKey()
public static CFStringRef kCVPixelBufferBytesPerRowAlignmentKey()
public static CFStringRef kCVPixelBufferCGBitmapContextCompatibilityKey()
public static CFStringRef kCVPixelBufferCGImageCompatibilityKey()
public static CFStringRef kCVPixelBufferOpenGLCompatibilityKey()
public static CFStringRef kCVPixelBufferPlaneAlignmentKey()
public static CFStringRef kCVPixelBufferIOSurfacePropertiesKey()
public static CFStringRef kCVPixelBufferOpenGLESCompatibilityKey()
public static CFStringRef kCVPixelBufferMetalCompatibilityKey()
public static CFStringRef kCVPixelBufferOpenGLESTextureCacheCompatibilityKey()
public static CFStringRef kCVPixelBufferPoolMinimumBufferCountKey()
public static CFStringRef kCVPixelBufferPoolMaximumBufferAgeKey()
public static CFStringRef kCVPixelBufferPoolAllocationThresholdKey()
public static CFStringRef kCVPixelBufferPoolFreeBufferNotification()
public static CFStringRef kCVOpenGLESTextureCacheMaximumTextureAgeKey()
By default, textures will age out after one second. Setting a maximum texture age of zero will disable the age-out mechanism completely. CVOpenGLESTextureCacheFlush() can be used to force eviction in either case.
public static CFStringRef kCVPixelFormatName()
public static CFStringRef kCVPixelFormatConstant()
public static CFStringRef kCVPixelFormatCodecType()
public static CFStringRef kCVPixelFormatFourCC()
public static CFStringRef kCVPixelFormatContainsAlpha()
public static CFStringRef kCVPixelFormatContainsYCbCr()
public static CFStringRef kCVPixelFormatContainsRGB()
public static CFStringRef kCVPixelFormatComponentRange()
public static CFStringRef kCVPixelFormatComponentRange_VideoRange()
public static CFStringRef kCVPixelFormatComponentRange_FullRange()
public static CFStringRef kCVPixelFormatComponentRange_WideRange()
public static CFStringRef kCVPixelFormatPlanes()
public static CFStringRef kCVPixelFormatBlockWidth()
public static CFStringRef kCVPixelFormatBlockHeight()
public static CFStringRef kCVPixelFormatBitsPerBlock()
public static CFStringRef kCVPixelFormatBlockHorizontalAlignment()
public static CFStringRef kCVPixelFormatBlockVerticalAlignment()
public static CFStringRef kCVPixelFormatBlackBlock()
public static CFStringRef kCVPixelFormatHorizontalSubsampling()
public static CFStringRef kCVPixelFormatVerticalSubsampling()
public static CFStringRef kCVPixelFormatOpenGLFormat()
public static CFStringRef kCVPixelFormatOpenGLType()
public static CFStringRef kCVPixelFormatOpenGLInternalFormat()
public static CFStringRef kCVPixelFormatCGBitmapInfo()
public static CFStringRef kCVPixelFormatQDCompatibility()
public static CFStringRef kCVPixelFormatCGBitmapContextCompatibility()
public static CFStringRef kCVPixelFormatCGImageCompatibility()
public static CFStringRef kCVPixelFormatOpenGLCompatibility()
public static CFStringRef kCVPixelFormatOpenGLESCompatibility()
public static CFStringRef kCVPixelFormatFillExtendedPixelsCallback()
public static CFStringRef kCVMetalTextureCacheMaximumTextureAgeKey()
By default, textures will age out after one second. Setting a maximum texture age of zero will disable the age-out mechanism completely. CVMetalTextureCacheFlush() can be used to force eviction in either case.
public static int CVYCbCrMatrixGetIntegerCodePointForString(CFStringRef yCbCrMatrixString)
public static int CVColorPrimariesGetIntegerCodePointForString(CFStringRef colorPrimariesString)
public static int CVTransferFunctionGetIntegerCodePointForString(CFStringRef transferFunctionString)
public static CFStringRef CVYCbCrMatrixGetStringForIntegerCodePoint(int yCbCrMatrixCodePoint)
public static CFStringRef CVColorPrimariesGetStringForIntegerCodePoint(int colorPrimariesCodePoint)
public static CFStringRef CVTransferFunctionGetStringForIntegerCodePoint(int transferFunctionCodePoint)
public static CGColorSpaceRef CVImageBufferCreateColorSpaceFromAttachments(CFDictionaryRef attachments)
Attempts to synthesize a CGColorSpace from an image buffer's attachments.
To generate a CGColorSpace, the attachments dictionary should include values for either: 1. kCVImageBufferICCProfile 2. kCVImageBufferColorPrimariesKey, kCVImageBufferTransferFunctionKey, and kCVImageBufferYCbCrMatrixKey (and possibly kCVImageBufferGammaLevelKey) The client is responsible for releasing the CGColorSpaceRef when it is done with it (CGColorSpaceRelease() or CFRelease())
attachments - A CFDictionary of attachments for an image buffer, obtained using CVBufferCopyAttachments().public static IOSurfaceRef CVPixelBufferGetIOSurface(CVBufferRef pixelBuffer)
Returns the IOSurface backing the pixel buffer, or NULL if it is not backed by an IOSurface.
pixelBuffer - Target PixelBuffer.public static int CVPixelBufferCreateWithIOSurface(CFAllocatorRef allocator, IOSurfaceRef surface, CFDictionaryRef pixelBufferAttributes, org.moe.natj.general.ptr.Ptr<CVBufferRef> pixelBufferOut)
Call to create a single CVPixelBuffer for a passed-in IOSurface.
The CVPixelBuffer will retain the IOSurface. IMPORTANT NOTE: If you are using IOSurface to share CVPixelBuffers between processes and those CVPixelBuffers are allocated via a CVPixelBufferPool, it is important that the CVPixelBufferPool does not reuse CVPixelBuffers whose IOSurfaces are still in use in other processes. CoreVideo and IOSurface will take care of this for if you use IOSurfaceCreateMachPort and IOSurfaceLookupFromMachPort, but NOT if you pass IOSurfaceIDs.
surface - The IOSurface to wrap.pixelBufferAttributes - A dictionary with additional attributes for a a pixel buffer. This parameter is optional. See PixelBufferAttributes for more details.pixelBufferOut - The new pixel buffer will be returned herepublic static CFStringRef kCVImageBufferTransferFunction_sRGB()
public static CFStringRef kCVImageBufferTransferFunction_SMPTE_ST_2084_PQ()
public static CFStringRef kCVImageBufferTransferFunction_ITU_R_2100_HLG()
public static CFStringRef kCVImageBufferMasteringDisplayColorVolumeKey()
public static CFStringRef kCVImageBufferContentLightLevelInfoKey()
public static CFStringRef kCVPixelBufferIOSurfaceCoreAnimationCompatibilityKey()
public static CFStringRef kCVPixelBufferIOSurfaceOpenGLESTextureCompatibilityKey()
public static CFStringRef kCVPixelBufferIOSurfaceOpenGLESFBOCompatibilityKey()
public static CFStringRef kCVMetalTextureUsage()
public static CFStringRef kCVImageBufferTransferFunction_Linear()
public static CFStringRef kCVImageBufferAlphaChannelModeKey()
public static CFStringRef kCVImageBufferAlphaChannelMode_StraightAlpha()
public static CFStringRef kCVImageBufferAlphaChannelMode_PremultipliedAlpha()
public static CFStringRef kCVPixelFormatContainsGrayscale()
public static CFStringRef kCVMetalTextureStorageMode()
public static CFStringRef kCVPixelBufferVersatileBayerKey_BayerPattern()
Buffer attachment key for code indicating Bayer pattern (sensel arrangement).
Associated attachment is a CFNumber of type kCFNumberSInt32Type. The value follows the semantics of the ProRes RAW bayer_pattern bitstream syntax element, namely 0, 1, 2, or 3, where 0 means the top-left sensel of the frame is red-filtered ("RGGB"); 1 means the top-left sensel of the frame is green-filtered, with the top row alternating between green- and red-filtered sensels ("GRBG"); 2 means the top-left sensel of the frame is green- filtered, with the top row alternating between green- and blue-filtered sensels ("GBRG"); and 3 means the top-left sensel of the frame is blue-filtered ("BGGR"). This attachment applies only to buffers with VersatileBayer formats.
public static CFStringRef kCVPixelBufferProResRAWKey_SenselSitingOffsets()
Buffer attachment key for siting offsets, relative to pixel center, of individual sensels/components constituting each pixel.
Associated attachment is CFData containing an array of 8 32-bit floats. The eight CFData array elements specify, in order, the following sensel/component offsets from pixel center: red horizontal offset, red vertical offset, green horizontal offset, green vertical offset, blue horizontal offset, blue vertical offset, alpha horizontal offset, and alpha vertical offset. A positive offset value indicates that the sensel/component lies to the right of or below the center of its pixel, while a negative value indicates that the sensel/component lies to the left of or above the center of its pixel. Horizontal and vertical offset magnitudes are respectively in terms of the spacing between horizontally- and vertically-adjacent pixel centers. This attachment applies only to buffers with the bp64 format, and is optional for those buffers; if not present, all offsets are considered to be 0.
public static CFStringRef kCVPixelBufferProResRAWKey_BlackLevel()
Buffer attachment key for sensel black level.
Associated attachment is a CFNumber of type kCFNumberSInt32Type. The value is the sensel level corresponding to no light exposure. This attachment is required for buffers with either the bp16 or bp64 format.
public static CFStringRef kCVPixelBufferProResRAWKey_WhiteLevel()
Buffer attachment key for sensel white level.
Associated attachment is a CFNumber of type kCFNumberSInt32Type. The value is the sensel level corresponding to sensor (or camera A-to-D converter) saturation. This attachment is required for buffers with either the bp16 or bp64 format.
public static CFStringRef kCVPixelBufferProResRAWKey_WhiteBalanceCCT()
Buffer attachment key for illuminant correlated color temperature.
Associated attachment is a CFNumber of type kCFNumberSInt32Type. The value is the illuminant correlated color temperature (CCT), in kelvins, selected at the time of capture. May be 0, indicating that the CCT is unknown or unspecified. This attachment is optional for buffers with either the bp16 or bp64 format; if not present, the CCT is considered unknown or unspecified.
public static CFStringRef kCVPixelBufferProResRAWKey_WhiteBalanceRedFactor()
Buffer attachment key for white balance red factor.
Associated attachment is a CFNumber of type kCFNumberFloat32Type. The value is the white balance multiplication factor for red-filtered sensels. This attachment is required for buffers with either the bp16 or bp64 format.
public static CFStringRef kCVPixelBufferProResRAWKey_WhiteBalanceBlueFactor()
Buffer attachment key for white balance blue factor.
Associated attachment is a CFNumber of type kCFNumberFloat32Type. The value is the white balance multiplication factor for blue-filtered sensels. This attachment is required for buffers with either the bp16 or bp64 format.
public static CFStringRef kCVPixelBufferProResRAWKey_ColorMatrix()
Buffer attachment key for color translation matrix.
Associated attachment is CFData containing an array of 9 32-bit floats. The value is a 3x3 matrix which transforms linear RGB pixel values in the camera native color space to CIE 1931 XYZ values relative to the D65 illuminant, where the matrix entries are stored in the CFData in row-major order. This attachment is required for buffers with either the bp16 or bp64 format.
public static CFStringRef kCVPixelBufferProResRAWKey_GainFactor()
Buffer attachment key for gain factor.
Associated attachment is a CFNumber of type kCFNumberFloat32Type. The value is the overall gain factor for raw conversion. This attachment is required for buffers with either the bp16 or bp64 format.
public static CFStringRef kCVPixelBufferProResRAWKey_RecommendedCrop()
Buffer attachment key for recommended number of pixels/rows to discard from the sides of the image after raw conversion.
Associated attachment is CFData containing an array of 4 32-bit floats. The four CFData array elements specify, in order, the recommended number of: pixels to discard from the start (left) of each row of the image; pixels to discard from the end (right) of each row of the image; rows of pixels to discard from the top of the image; and rows of pixels to discard from the bottom of the image. (Pixels/rows are discarded after raw conversion.) This attachment is optional for buffers with either the bp16 or bp64 format; if not present, the recommended crop values are considered to be 0. For buffers with the bp64 format, the values may be nonintegral due to downscaling, in which case the handling of fractional parts is implementation-dependent.
public static CFDictionaryRef CVBufferCopyAttachments(CVBufferRef buffer, int attachmentMode)
Returns a copy of all attachments of a CVBuffer object. It is the caller’s responsibility to release the returned dictionary.
CVBufferCopyAttachments is a convenience call that returns a copy of all attachments with their corresponding keys in a CFDictionary.
buffer - Target CVBuffer object.public static org.moe.natj.general.ptr.ConstVoidPtr CVBufferCopyAttachment(CVBufferRef buffer, CFStringRef key, org.moe.natj.general.ptr.IntPtr attachmentMode)
Returns a retained specific attachment of a CVBuffer object. It is the caller’s responsibility to release the returned value.
You can attach any CF object to a CVBuffer object to store additional information. CVBufferCopyAttachment retrieves a retained attachment identified by a key.
buffer - Target CVBuffer object.key - Key in form of a CFString identifying the desired attachment.attachmentMode. - Returns the mode of the attachment, if desired. May be NULL.public static byte CVBufferHasAttachment(CVBufferRef buffer, CFStringRef key)
Returns true if an attachment with the passed key is present on a CVBuffer object.
buffer - Target CVBuffer object.key - Key in form of a CFString identifying the desired attachment.public static CFDictionaryRef CVPixelBufferCopyCreationAttributes(CVBufferRef pixelBuffer)
Returns a copy of pixelBufferAttributes dictionary used to create the PixelBuffer.
Can be used to create similar pixelbuffers.
pixelBuffer - Target PixelBuffer.public static byte CVIsCompressedPixelFormatAvailable(int pixelFormatType)
Checks if a compressed pixel format is supported on the current platform.
pixelFormatType - compressed pixel format.public static CFStringRef kCVImageBufferAmbientViewingEnvironmentKey()
public static CFStringRef kCVImageBufferRegionOfInterestKey()
Specifies region of interest that image statistics cover. This value should be a CGRect dictionary created by CGRectCreateDictionaryRepresentation(). The origin in the CGRect represents the x,y coordinate within the CVPixelBuffer where region of interest is located.
public static CFStringRef kCVPixelBufferProResRAWKey_MetadataExtension()
Buffer attachment key for metadata extension.
Associated attachment is CFData containing ProRes RAW metadata extension. This attachment is optional for buffers with either bp16 or bp64. The CFData contains a big-endian uint32 representing the size of the item in bytes followed by a 4-character code ('psim') followed by a variable-length pascal string identifying the metadata (like a key string) followed by the metadata payload.