下载:https://software.intel.com/en-us/parallel-studio-xe/choose-download/free-trial-cluster-windows-c-fortran

使用:

https://www.cnblogs.com/programmer-wfq/p/7049821.html

void Rgb2NV12(const unsigned char I[],
const int image_width,
const int image_height,
unsigned char J[])
{
//memcpy(J, I, image_width*image_height*3); IppStatus ipp_status; int srcStep = image_width*;
int dstYStep = image_width;
int dstCbCrStep = image_width;
IppiSize roiSize = {image_width, image_height}; const Ipp8u* pSrc = (Ipp8u*)I; Ipp8u *pDstY = (Ipp8u*)J; //Y color plane is the first image_width*image_height pixels of J.
Ipp8u *pDstCbCr = (Ipp8u*)&J[image_width*image_height]; //In NV12 format, UV plane starts below Y. ipp_status = ippiRGBToYCbCr420_8u_C3P2R(pSrc, srcStep, pDstY, dstYStep, pDstCbCr, dstCbCrStep, roiSize); if (ipp_status != ippStsNoErr)
{
memset(J, , image_width*image_height*/);
}
}
IPPAPI(IppStatus, ippiRGBToYCbCr420_8u_C3P2R,( const Ipp8u* pRGB, int rgbStep,  Ipp8u* pY, int YStep,Ipp8u* pCbCr, int CbCrStep, IppiSize roiSize ))//  RGB24-->NV12
IPPAPI(IppStatus, ippiRGBToYCbCr420_8u_C4P2R,( const Ipp8u* pRGB, int rgbStep, Ipp8u* pY, int YStep,Ipp8u* pCbCr, int CbCrStep, IppiSize roiSize ))// ARGB-->NV12
IPPAPI(IppStatus, ippiBGRToYCbCr420_8u_C3P2R,( const Ipp8u* pRGB, int rgbStep, Ipp8u* pY, int YStep,Ipp8u* pCbCr, int CbCrStep, IppiSize roiSize ))// BGR24-->NV12
IPPAPI(IppStatus, ippiBGRToYCbCr420_8u_AC4P2R,( const Ipp8u* pRGB, int rgbStep, Ipp8u* pY, int YStep,Ipp8u* pCbCr, int CbCrStep, IppiSize roiSize ))// ABGR-->NV12
IppiSize roiSize;
roiSize.width = m_mfxEncParams.mfx.FrameInfo.CropW;
roiSize.height = m_mfxEncParams.mfx.FrameInfo.CropH;
mfxU16 pitch = m_pVPPSurfacesVPPOutEnc[nEncSurfIdx].Data.Pitch;
ippiBGRToYCbCr420_8u_AC4P2R( (Ipp8u*)pInputBuffer, roiSize.width*, (Ipp8u*)m_pVPPSurfacesVPPOutEnc[nEncSurfIdx].Data.Y, pitch, (Ipp8u*)m_pVPPSurfacesVPPOutEnc[nEncSurfIdx].Data.UV,pitch, roiSize);

BGR2I420

            IppiSize roiSize = { w, h };
ippiBGRToYCbCr420_8u_C3P3R(src.data,*w,
yuv.data,yuv.stride, roiSize);

最新文章

  1. 详解Node解析URL网址
  2. ORA-27101 ORACLE not available
  3. React笔记整理
  4. peer not authenticated error
  5. 基于mini2440的Tslib的移植
  6. JS运动基础(四) 碰撞运动
  7. POJ1384Piggy-Bank(DP)
  8. Android开发之EventBus的简单使用
  9. C#_自动化测试1_模拟post,get_12306火车票网站自动登录工具
  10. git常用命令行
  11. (转)iOS7界面设计规范(1) - UI基础 - 为iOS7而设计
  12. php中使用随机数
  13. VS2012下使用Moq进行单元测试
  14. Houdini Distributed Simulations and Render
  15. 【easy】234. Palindrome Linked List
  16. [Benchmark] Codeflaws: A Programming Competition Benchmark for Evaluating Automated Program Repair Tools
  17. OutOfMemoryError异常java内存泄漏(Memory Leak)和内存溢出(Memory Overflow)
  18. Python 模块管理
  19. 转://SQL PROFILE
  20. ElasticSearch 2 (8) - 概览与简介

热门文章

  1. Ionic4.x Javascript 扩展 ActionSheet Alert Toast Loading 以及 ionic 手势相 关事件
  2. 【转载】 迁移学习(Transfer learning),多任务学习(Multitask learning)和端到端学习(End-to-end deep learning)
  3. 简单模拟 Promise
  4. 怎样加入社区项目Karbor的Review?
  5. Redcon:快速的Redis服务器Go实现
  6. GPU Skinning 结合 Instanced 高效实现大量单位动画
  7. 【VS开发】【数据库开发】libevent windows下基于VS2010的编译
  8. Linux 学习笔记 1 使用最小的系统,从分区安装系统开始
  9. easyui 解决连弹两个dialog时候,第二个dialog居中问题
  10. csu 1901: 赏赐 OR 灾难