<!--
{
  "documentType" : "article",
  "framework" : "Accelerate",
  "identifier" : "/documentation/Accelerate/functions-that-convert-from-ycbcr-to-rgb",
  "metadataVersion" : "0.1.0",
  "role" : "collectionGroup",
  "title" : "Functions that convert from YCbCr to RGB"
}
-->

# Functions that convert from YCbCr to RGB

Convert image data represented by luma, blue-difference, and red-difference channels to red, green, and blue channels.

## Topics

### Converting from 4:2:0

[`vImageConvert_420Yp8_CbCr8ToARGB8888(_:_:_:_:_:_:_:)`](/documentation/Accelerate/vImageConvert_420Yp8_CbCr8ToARGB8888(_:_:_:_:_:_:_:))

Converts a planar Yp buffer and a 2-channel CbCr buffer to an 8-bit-per-channel, 4-channel ARGB buffer.

[`vImageConvert_420Yp8_Cb8_Cr8ToARGB8888(_:_:_:_:_:_:_:_:)`](/documentation/Accelerate/vImageConvert_420Yp8_Cb8_Cr8ToARGB8888(_:_:_:_:_:_:_:_:))

Converts planar Yp, Cb, and Cr buffers to an 8-bit-per-channel, 4-channel ARGB buffer.

### Converting from 4:2:2

[`vImageConvert_422YpCbYpCr8ToARGB8888(_:_:_:_:_:_:)`](/documentation/Accelerate/vImageConvert_422YpCbYpCr8ToARGB8888(_:_:_:_:_:_:))

Converts an 8-bit-per-channel 4:2:2 YpCbYpCr buffer to an 8-bit-per-channel, 4-channel ARGB buffer.

[`vImageConvert_422CbYpCrYp8ToARGB8888(_:_:_:_:_:_:)`](/documentation/Accelerate/vImageConvert_422CbYpCrYp8ToARGB8888(_:_:_:_:_:_:))

Converts an 8-bit-per-channel 4:2:2 CbYpCrYp buffer to an 8-bit-per-channel, 4-channel ARGB buffer.

[`vImageConvert_422CbYpCrYp16ToARGB8888(_:_:_:_:_:_:)`](/documentation/Accelerate/vImageConvert_422CbYpCrYp16ToARGB8888(_:_:_:_:_:_:))

Converts a 16-bit-per-channel 4:2:2 CbYpCrYp buffer to an 8-bit-per-channel, 4-channel ARGB buffer.

[`vImageConvert_422CbYpCrYp8_AA8ToARGB8888(_:_:_:_:_:_:)`](/documentation/Accelerate/vImageConvert_422CbYpCrYp8_AA8ToARGB8888(_:_:_:_:_:_:))

Converts an 8-bit-per-channel 4:2:2 CbYpCrYp buffer and an 8-bit alpha buffer to an 8-bit-per-channel, 4-channel ARGB buffer.

[`vImageConvert_422CbYpCrYp16ToARGB16U(_:_:_:_:_:_:)`](/documentation/Accelerate/vImageConvert_422CbYpCrYp16ToARGB16U(_:_:_:_:_:_:))

Converts a 16-bit-per-channel 4:2:2 CbYpCrYp buffer to an unsigned 16-bit-per-channel, 4-channel ARGB buffer.

[`vImageConvert_422CrYpCbYpCbYpCbYpCrYpCrYp10ToARGB8888(_:_:_:_:_:_:)`](/documentation/Accelerate/vImageConvert_422CrYpCbYpCbYpCbYpCrYpCrYp10ToARGB8888(_:_:_:_:_:_:))

Converts a 10-bit-per-channel 4:2:2 CrYpCbYpCbYpCbYpCrYpCrYp buffer to a 8-bit-per-channel, 4-channel ARGB buffer.

[`vImageConvert_422CrYpCbYpCbYpCbYpCrYpCrYp10ToARGB16Q12(_:_:_:_:_:_:)`](/documentation/Accelerate/vImageConvert_422CrYpCbYpCbYpCbYpCrYpCrYp10ToARGB16Q12(_:_:_:_:_:_:))

Converts a 10-bit-per-channel 4:2:2 CrYpCbYpCbYpCbYpCrYpCrYp buffer to a fixed-point 16-bit-per-channel, 4-channel ARGB buffer.

### Converting from 4:4:4

[`vImageConvert_444AYpCbCr8ToARGB8888(_:_:_:_:_:)`](/documentation/Accelerate/vImageConvert_444AYpCbCr8ToARGB8888(_:_:_:_:_:))

Converts an 8-bit-per-channel 4:4:4 YpCbCr buffer to an 8-bit-per-channel, 4-channel ARGB buffer.

[`vImageConvert_444CrYpCb8ToARGB8888(_:_:_:_:_:_:)`](/documentation/Accelerate/vImageConvert_444CrYpCb8ToARGB8888(_:_:_:_:_:_:))

Converts an 8-bit-per-channel 4:4:4 CrYpCb buffer to an 8-bit-per-channel, 4-channel ARGB buffer.

[`vImageConvert_444CbYpCrA8ToARGB8888(_:_:_:_:_:)`](/documentation/Accelerate/vImageConvert_444CbYpCrA8ToARGB8888(_:_:_:_:_:))

Converts an 8-bit-per-channel 4:4:4 CbYpCrA buffer to an 8-bit-per-channel, 4-channel ARGB buffer.

[`vImageConvert_444CrYpCb10ToARGB8888(_:_:_:_:_:_:)`](/documentation/Accelerate/vImageConvert_444CrYpCb10ToARGB8888(_:_:_:_:_:_:))

Converts an 10-bit-per-channel 4:4:4 CrYpCb buffer to an 8-bit-per-channel, 4-channel ARGB buffer.

[`vImageConvert_444CrYpCb10ToARGB16Q12(_:_:_:_:_:_:)`](/documentation/Accelerate/vImageConvert_444CrYpCb10ToARGB16Q12(_:_:_:_:_:_:))

Converts an 10-bit-per-channel 4:4:4 CrYpCb buffer to a fixed-point 16-bit-per-channel, 4-channel ARGB buffer.

[`vImageConvert_444AYpCbCr16ToARGB8888(_:_:_:_:_:)`](/documentation/Accelerate/vImageConvert_444AYpCbCr16ToARGB8888(_:_:_:_:_:))

Converts an 16-bit-per-channel 4:4:4 YpCbCr buffer to an 8-bit-per-channel, 4-channel ARGB buffer.

[`vImageConvert_444AYpCbCr16ToARGB16U(_:_:_:_:_:)`](/documentation/Accelerate/vImageConvert_444AYpCbCr16ToARGB16U(_:_:_:_:_:))

Converts an 10-bit-per-channel 4:4:4 CrYpCb buffer to an unsigned 16-bit-per-channel, 4-channel ARGB buffer.

### Generating conversion information

[`vImageConvert_YpCbCrToARGB_GenerateConversion(_:_:_:_:_:_:)`](/documentation/Accelerate/vImageConvert_YpCbCrToARGB_GenerateConversion(_:_:_:_:_:_:))

Generates the information that describes the conversion from YpCbCr to ARGB.

[`vImageYpCbCrType`](/documentation/Accelerate/vImageYpCbCrType)

Constants that describe the encoding of a YpCbCr image for conversions between RGB and YpCbCr.

[`vImageARGBType`](/documentation/Accelerate/vImageARGBType)

Constants that describe the encoding of an ARGB image for conversions between RGB and YpCbCr.

[`vImage_YpCbCrToARGBMatrix`](/documentation/Accelerate/vImage_YpCbCrToARGBMatrix)

The 3 x 3 matrix that the vImage library uses to convert from YpCbCr to RGB.

[`vImage_YpCbCrToARGB`](/documentation/Accelerate/vImage_YpCbCrToARGB)

The information that describes the conversion from YpCbCr to ARGB.

[`vImage_YpCbCrPixelRange`](/documentation/Accelerate/vImage_YpCbCrPixelRange)

The description of range and clamping information for YpCbCr pixel formats.



---

Copyright &copy; 2026 Apple Inc. All rights reserved. | [Terms of Use](https://www.apple.com/legal/internet-services/terms/site.html) | [Privacy Policy](https://www.apple.com/privacy/privacy-policy)