Converts image data in a buffer from one color conversion model to another directly using built in algorithms.
#include "ltkrn.h"
#include "ltclr.h"
L_LTCLR_API L_INT L_ClrConvertDirect(nSrcFormat, nDstFormat, pSrcBuf, pDstBuf, nWidth, nHeight, nInAlign, nOutAlign)
Format of the source data. Possible values are:
Value | Meaning |
---|---|
CCS_RGB | [0x00] Color conversion is RGB. |
CCS_YUV | [0x01] Color conversion is YUV. |
CCS_CMYK | [0x02] Color conversion is CMYK. |
CCS_HSV | [0x03] Color conversion is HSV. |
CCS_HLS | [0x04] Color conversion is HLS. |
CCS_YIQ | [0x05] Color conversion is YIQ. |
CCS_CMY | [0x06] Color conversion is CMY. |
CCS_LAB | [0x07] Color conversion is CIELAB. |
CCS_XYZ | [0x08] Color conversion is CIEXYZ. |
CCS_YCCK | [0x0B] Color conversion is YCCK. |
CCS_BGR | [0x0C] Color conversion is BGR. |
CCS_UYVY | [0x0E] Color conversion is UYVY. |
CCS_YUY2 | [0x09] Color conversion is YUY2. |
CCS_YVU9 | [0x0A] Color conversion is YVU9. |
CCS_YCC | [0x0F] Color conversion is YCC. |
CCS_Y41P | [0x0D] Color conversion is Y41P |
CCS_IHS | [0x80] Color conversion is IHS |
CCS_ARGB4 | [0x90] Color conversion is ARGB4 |
Format of the output data. Possible values are:
Value | Meaning |
---|---|
CCS_RGB | [0x00] Color conversion is RGB. |
CCS_YUV | [0x01] Color conversion is YUV. |
CCS_CMYK | [0x02] Color conversion is CMYK. |
CCS_HSV | [0x03] Color conversion is HSV. |
CCS_HLS | [0x04] Color conversion is HLS. |
CCS_YIQ | [0x05] Color conversion is YIQ. |
CCS_CMY | [0x06] Color conversion is CMY. |
CCS_LAB | [0x07] Color conversion is CIELAB. |
CCS_XYZ | [0x08] Color conversion is CIEXYZ. |
CCS_YCCK | [0x0B] Color conversion is YCCK. |
CCS_BGR | [0x0C] Color conversion is BGR. |
CCS_UYVY | [0x0E] Color conversion is UYVY. |
CCS_YUY2 | [0x09] Color conversion is YUY2. |
CCS_YVU9 | [0x0A] Color conversion is YVU9. |
CCS_YCC | [0x0F] Color conversion is YCC. |
CCS_Y41P | [0x0D] Color conversion is Y41P |
CCS_IHS | [0x80] Color conversion is IHS |
CCS_ARGB4 | [0x90] Color conversion is ARGB4 |
Pointer to the buffer holding the input data.
Pointer to the buffer that will hold the converted data.
Width of pixels to be processed.
Height of pixels to be processed.
Each scanline in the input buffer is a multiple of nInAlign bytes.
Each scan line in the output buffer is a multiple of nOutAlign bytes.
Value | Meaning |
---|---|
SUCCESS | The function was successful. |
< 1 | An error occurred. Refer to Return Codes. |
Converting from any color space to YCCK color space is currently not supported.
Win32, x64.
L_INT ClrConvertDirectExample(
L_UCHAR* pInput,
L_UCHAR* pOutput,
L_INT nWidth,
L_INT nHeight)
{
L_INT nRet;
/* direct conversion using built in options */
nRet = L_ClrConvertDirect(CCS_CMYK, /* input color conversion */
CCS_RGB, /* output color conversion */
pInput, /* input buffer */
pOutput, /* output buffer */
nWidth, /* pixels width */
nHeight, /* pixels height */
0, /* 0 bytes align */
0); /* 0 bytes align */
return nRet;
}