One Logo Pool Ball
CoreVideo · IOS API REFERENCE

CVPixelFormatDescription.PixelLayout

struct · iOS 26.0+ · SDK 27.1

struct PixelLayout

Defines pixel layout of a buffer plane or the entire buffer if the format is non-planar. Note: The value of ``fillExtendedPixels`` property is ignored when comparing two pixel layouts for equality.

Members (14)

get · iOS 26.0+

blackBlock

TypeScript
get blackBlock(): (ArrayBuffer) | null
Swift declaration
var blackBlock: Data?

The bit pattern for a block of black pixels. If absent, black is assumed to be all zeros. Otherwise, this should be ``bitsPerBlock`` bits long. If bitsPerBlock is less than a byte, repeat the bit pattern for the full byte.

set · iOS 26.0+

blackBlock

TypeScript
set blackBlock(value: (ArrayBuffer) | null)
Swift declaration
var blackBlock: Data?

The bit pattern for a block of black pixels. If absent, black is assumed to be all zeros. Otherwise, this should be ``bitsPerBlock`` bits long. If bitsPerBlock is less than a byte, repeat the bit pattern for the full byte.

get · iOS 26.0+

subsampling

TypeScript
get subsampling(): CVPixelFormatDescription_Dimensions
Swift declaration
var subsampling: CVPixelFormatDescription.Dimensions

Pixel subsampling for this plane.

set · iOS 26.0+

subsampling

TypeScript
set subsampling(value: CVPixelFormatDescription_Dimensions)
Swift declaration
var subsampling: CVPixelFormatDescription.Dimensions

Pixel subsampling for this plane.

get · iOS 26.0+

bitsPerBlock

TypeScript
get bitsPerBlock(): number
Swift declaration
var bitsPerBlock: Int

Number of bits per pixel. If ``blockSize`` is greater than (1, 1) then this represents bits per block.

set · iOS 26.0+

bitsPerBlock

TypeScript
set bitsPerBlock(value: number)
Swift declaration
var bitsPerBlock: Int

Number of bits per pixel. If ``blockSize`` is greater than (1, 1) then this represents bits per block.

get · iOS 26.0+

cgBitmapInfo

TypeScript
get cgBitmapInfo(): (_CoreGraphics_CGBitmapInfo) | null
Swift declaration
var cgBitmapInfo: CGBitmapInfo?

CoreGraphics bitmap info used for CG compatibility.

set · iOS 26.0+

cgBitmapInfo

TypeScript
set cgBitmapInfo(value: (_CoreGraphics_CGBitmapInfo) | null)
Swift declaration
var cgBitmapInfo: CGBitmapInfo?

CoreGraphics bitmap info used for CG compatibility.

get · iOS 26.0+

blockAlignment

TypeScript
get blockAlignment(): CVPixelFormatDescription_Dimensions
Swift declaration
var blockAlignment: CVPixelFormatDescription.Dimensions

Alignment requirements on block multiples. v210 would be (8, 1) here for the horizontal case, to match the standard v210 row alignment value of 48.

set · iOS 26.0+

blockAlignment

TypeScript
set blockAlignment(value: CVPixelFormatDescription_Dimensions)
Swift declaration
var blockAlignment: CVPixelFormatDescription.Dimensions

Alignment requirements on block multiples. v210 would be (8, 1) here for the horizontal case, to match the standard v210 row alignment value of 48.

get · iOS 26.0+

bitsPerComponent

TypeScript
get bitsPerComponent(): (number) | null
Swift declaration
var bitsPerComponent: Int?

The logical bit depth of each component of the plane.

set · iOS 26.0+

bitsPerComponent

TypeScript
set bitsPerComponent(value: (number) | null)
Swift declaration
var bitsPerComponent: Int?

The logical bit depth of each component of the plane.

get · iOS 26.0+

blockSize

TypeScript
get blockSize(): CVImageSize
Swift declaration
var blockSize: CVImageSize

Used to assist with allocating memory for pixel formats that don't have an integer value for bytes per pixel. Block width/height is essentially the width/height in pixels of the smallest "byte addressable" group of pixels. This works in close conjunction with ``bitsPerBlock``. Examples: 8-bit luminance only, blockSize.width would be 1, bitsPerBlock would be 8 16-bit 1555 RGB, blockSize.width would be 1, bitsPerBlock would be 16 32-bit 8888 ARGB, blockSize.width would be 1, bitsPerBlock would be 32 2vuy (CbYCrY), blockSize.width would be 2, bitsPerBlock would be 32 1-bit bitmap, blockSize.width would be 8, bitsPerBlock would be 8 v210, blockSize.width would be 6, bitsPerBlock would be 128

set · iOS 26.0+

blockSize

TypeScript
set blockSize(value: CVImageSize)
Swift declaration
var blockSize: CVImageSize

Used to assist with allocating memory for pixel formats that don't have an integer value for bytes per pixel. Block width/height is essentially the width/height in pixels of the smallest "byte addressable" group of pixels. This works in close conjunction with ``bitsPerBlock``. Examples: 8-bit luminance only, blockSize.width would be 1, bitsPerBlock would be 8 16-bit 1555 RGB, blockSize.width would be 1, bitsPerBlock would be 16 32-bit 8888 ARGB, blockSize.width would be 1, bitsPerBlock would be 32 2vuy (CbYCrY), blockSize.width would be 2, bitsPerBlock would be 32 1-bit bitmap, blockSize.width would be 8, bitsPerBlock would be 8 v210, blockSize.width would be 6, bitsPerBlock would be 128

Skipped declarations

3 declarations were excluded from these bindings. Each reason comes from the generator or the iOS SDK compiler.

CVPixelFormatDescription.PixelLayout.fillExtendedPixels

The iOS SDK compiler rejected this binding: 'inout' may only be used on parameters

CVPixelFormatDescription.PixelLayout.fillExtendedPixels

The iOS SDK compiler rejected this binding: argument type 'CVMutablePixelBuffer' does not conform to expected type 'Copyable'

CVPixelFormatDescription.PixelLayout.init(blockSize:bitsPerBlock:bitsPerComponent:blockAlignment:subsampling:blackBlock:fillExtendedPixels:cgBitmapInfo:)

The iOS SDK compiler rejected this binding: argument type 'CVMutablePixelBuffer' does not conform to expected type 'Copyable'

All CoreVideo types →