📄 umc_color_space_converter_rgb32.cpp
字号:
/*//// INTEL CORPORATION PROPRIETARY INFORMATION// This software is supplied under the terms of a license agreement or// nondisclosure agreement with Intel Corporation and may not be copied// or disclosed except in accordance with the terms of that agreement.// Copyright (c) 2003-2005 Intel Corporation. All Rights Reserved.//*/#include <stdlib.h>#include <ippi.h>#include <ippcc.h>#include "umc_color_space_converter.h"#include "vm_debug.h"namespace UMC{void ColorSpaceConverter::ConvertFrom_RGB32_To_YV12(ColorConversionParams &/*ConvertParam*/){ /** THIS IS AVAILABLE ippiBGRToYCrCb420_8u_AC4P3R */} // void ColorSpaceConverter::ConvertFrom_RGB32_To_YV12(ColorConversionParams &ConvertParam)void ColorSpaceConverter::ConvertFrom_RGB32_To_NV12(ColorConversionParams &/*ConvertParam*/){ vm_debug_msg(0, __VM_STRING("This function isn't realized."));} // void ColorSpaceConverter::ConvertFrom_RGB32_To_NV12(ColorConversionParams &ConvertParam)void ColorSpaceConverter::ConvertFrom_RGB32_To_CbYCr(ColorConversionParams &ConvertParam){ // equal size. simple convert if ((ConvertParam.ConversionInit.SizeSource.width == ConvertParam.ConversionInit.SizeDest.width) && (ConvertParam.ConversionInit.SizeSource.height == ConvertParam.ConversionInit.SizeDest.height)) {//#if !defined (ARM) && !defined (_ARM_) IppiSize SizeDest = {ConvertParam.ConversionInit.SizeDest.width, ConvertParam.ConversionInit.SizeDest.height}; ippiBGRToCbYCr422_8u_AC4C2R(ConvertParam.lpSource0, ConvertParam.PitchSource0, ConvertParam.lpDest0, ConvertParam.PitchDest0, SizeDest);//#endif } // resize & convert else { size_t lNeededSize; vm_byte *lpBGRA;; IppiSize SizeSrc = {ConvertParam.ConversionInit.SizeSource.width, ConvertParam.ConversionInit.SizeSource.height}; IppiRect RectSrc = {0, 0, SizeSrc.width, SizeSrc.height}; IppiSize SizeDst = {ConvertParam.ConversionInit.SizeDest.width, ConvertParam.ConversionInit.SizeDest.height}; // calc needed internal buffer size lNeededSize = SizeDst.width * SizeDst.height * 4; if (lNeededSize > m_lBufferSize) { if (false == AllocateInternalBuffer(lNeededSize)) return; }; lpBGRA = reinterpret_cast<vm_byte *> (m_lpvBuffer); // resize image to internal buffer//#if !defined (ARM) && !defined (_ARM_) ippiResize_8u_AC4R( ConvertParam.lpSource0, SizeSrc, ConvertParam.PitchSource0, RectSrc, lpBGRA, SizeDst.width * 4, SizeDst, static_cast<double> (SizeDst.width) / static_cast<double> (SizeSrc.width), static_cast<double> (SizeDst.height) / static_cast<double> (SizeSrc.height), ConvertParam.ConversionInit.lInterpolation); // convert to destination format, using original dest size(s) IppiSize SizeDest = {ConvertParam.ConversionInit.SizeDest.width, ConvertParam.ConversionInit.SizeDest.height}; ippiBGRToCbYCr422_8u_AC4C2R(lpBGRA, SizeDst.width * 4, ConvertParam.lpDest0, ConvertParam.PitchDest0, SizeDest);//#endif };} // void ColorSpaceConverter::ConvertFrom_RGB32_To_CbYCr(ColorConversionParams &ConvertParam)void ColorSpaceConverter::ConvertFrom_RGB32_To_YCbCr(ColorConversionParams &/*ConvertParam*/){ /** THIS IS AVAILABLE ippiBGRToYCbCr422_8u_AC4C2R */} // void ColorSpaceConverter::ConvertFrom_RGB32_To_YCbCr(ColorConversionParams &ConvertParam)void ColorSpaceConverter::ConvertFrom_RGB32_To_YUV411(ColorConversionParams &/*ConvertParam*/){ vm_debug_msg(0, __VM_STRING("This function isn't realized."));} // void ColorSpaceConverter::ConvertFrom_RGB32_To_YUV411(ColorConversionParams &ConvertParam)void ColorSpaceConverter::ConvertFrom_RGB32_To_YUV420(ColorConversionParams &/*ConvertParam*/){ vm_debug_msg(0, __VM_STRING("This function isn't realized."));} // void ColorSpaceConverter::ConvertFrom_RGB32_To_YUV420(ColorConversionParams &ConvertParam)void ColorSpaceConverter::ConvertFrom_RGB32_To_YUV420M(ColorConversionParams &/*ConvertParam*/){ vm_debug_msg(0, __VM_STRING("This function isn't realized."));} // void ColorSpaceConverter::ConvertFrom_RGB32_To_YUV420M(ColorConversionParams &ConvertParam)void ColorSpaceConverter::ConvertFrom_RGB32_To_RGB32(ColorConversionParams &/*ConvertParam*/){ vm_debug_msg(0, __VM_STRING("This function isn't realized."));} // void ColorSpaceConverter::ConvertFrom_RGB32_To_RGB32(ColorConversionParams &ConvertParam)void ColorSpaceConverter::ConvertFrom_RGB32_To_RGB24(ColorConversionParams &/*ConvertParam*/){ vm_debug_msg(0, __VM_STRING("This function isn't realized."));} // void ColorSpaceConverter::ConvertFrom_RGB32_To_RGB24(ColorConversionParams &ConvertParam)void ColorSpaceConverter::ConvertFrom_RGB32_To_RGB565(ColorConversionParams &/*ConvertParam*/){ vm_debug_msg(0, __VM_STRING("This function isn't realized."));} // void ColorSpaceConverter::ConvertFrom_RGB32_To_RGB565(ColorConversionParams &ConvertParam)void ColorSpaceConverter::ConvertFrom_RGB32_To_RGB555(ColorConversionParams &/*ConvertParam*/){ vm_debug_msg(0, __VM_STRING("This function isn't realized."));} // void ColorSpaceConverter::ConvertFrom_RGB32_To_RGB555(ColorConversionParams &ConvertParam)void ColorSpaceConverter::ConvertFrom_RGB32_To_RGB444(ColorConversionParams &/*ConvertParam*/){ vm_debug_msg(0, __VM_STRING("This function isn't realized."));} // void ColorSpaceConverter::ConvertFrom_RGB32_To_RGB444(ColorConversionParams &ConvertParam)} // end namespace UMC
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -