⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 umc_color_space_converter_deinterlace.cpp

📁 这是在PCA下的基于IPP库示例代码例子,在网上下了IPP的库之后,设置相关参数就可以编译该代码.
💻 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 <ippi.h>#include <ippvc.h>#include <ippcc.h>#include "umc_color_space_converter.h"namespace UMC{void ColorSpaceConverter::DeinterlaceFrame(ColorConversionParams &ConvertParam){    // check applicable format(s)    if ((YUY2 == ConvertParam.ConversionInit.FormatDest) ||        (UYVY == ConvertParam.ConversionInit.FormatDest) ||        (RGB24 == ConvertParam.ConversionInit.FormatDest) ||        (RGB32 == ConvertParam.ConversionInit.FormatDest))    {        vm_var32 lWidth;        switch (ConvertParam.ConversionInit.FormatDest)        {        case YUY2:        case UYVY:            lWidth = ConvertParam.ConversionInit.SizeSource.width * 2;            break;        case RGB24:            lWidth = ConvertParam.ConversionInit.SizeSource.width * 3;            break;        case RGB32:            lWidth = ConvertParam.ConversionInit.SizeSource.width * 4;            break;        default:            lWidth = ConvertParam.ConversionInit.SizeSource.width;            break;        };        IppiSize roi = {lWidth,                            ConvertParam.ConversionInit.SizeDest.height};        ippiDeinterlaceFilterTriangle_8u_C1R(ConvertParam.lpSource0,                                            ConvertParam.PitchSource0,                                            ConvertParam.lpDest0,                                            ConvertParam.PitchDest0,                                            roi, 128,                                            IPP_LOWER | IPP_UPPER | IPP_CENTER);    }    else if (YV12 == ConvertParam.ConversionInit.FormatDest)    {       IppiSize roiLuma = {ConvertParam.ConversionInit.SizeDest.width,                            ConvertParam.ConversionInit.SizeDest.height};       IppiSize roiChroma = {ConvertParam.ConversionInit.SizeDest.width / 2,                            ConvertParam.ConversionInit.SizeDest.height / 2};       ippiDeinterlaceFilterTriangle_8u_C1R(ConvertParam.lpSource0,                                            ConvertParam.PitchSource0,                                            ConvertParam.lpDest0,                                            ConvertParam.PitchDest0,                                            roiLuma, 128,                                            IPP_LOWER | IPP_UPPER | IPP_CENTER);       ippiDeinterlaceFilterTriangle_8u_C1R(ConvertParam.lpSource1,                                            ConvertParam.PitchSource1,                                            ConvertParam.lpDest1,                                            ConvertParam.PitchDest1,                                            roiChroma, 128,                                            IPP_LOWER | IPP_UPPER | IPP_CENTER);       ippiDeinterlaceFilterTriangle_8u_C1R(ConvertParam.lpSource2,                                            ConvertParam.PitchSource2,                                            ConvertParam.lpDest2,                                            ConvertParam.PitchDest2,                                            roiChroma, 128,                                            IPP_LOWER | IPP_UPPER | IPP_CENTER);    }    else if (NV12 == ConvertParam.ConversionInit.FormatDest)    {       IppiSize roiLuma = {ConvertParam.ConversionInit.SizeDest.width,                            ConvertParam.ConversionInit.SizeDest.height};       IppiSize roiChroma = {ConvertParam.ConversionInit.SizeDest.width,                            ConvertParam.ConversionInit.SizeDest.height / 2};       ippiDeinterlaceFilterTriangle_8u_C1R(ConvertParam.lpSource0,                                            ConvertParam.PitchSource0,                                            ConvertParam.lpDest0,                                            ConvertParam.PitchDest0,                                            roiLuma, 128,                                            IPP_LOWER | IPP_UPPER | IPP_CENTER);       ippiDeinterlaceFilterTriangle_8u_C1R(ConvertParam.lpSource1,                                            ConvertParam.PitchSource1,                                            ConvertParam.lpDest1,                                            ConvertParam.PitchDest1,                                            roiChroma, 128,                                            IPP_LOWER | IPP_UPPER | IPP_CENTER);    };} // void ColorSpaceConverter::DeinterlaceFrame(ColorConversionParams &ConvertParam)} // end namespace UMC

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -