yuv420转rgba,yuv420内存排列为yyyy,u,v

bool yuv420ToRgb(uint8_t* yuv, int w, int h, uint8_t* rgb)
{uint8_t* pBufy = new uint8_t[w * h];uint8_t* pBufu = new uint8_t[w * h / 4];uint8_t* pBufv = new uint8_t[w * h / 4];memcpy(pBufy, yuv, w * h);memcpy(pBufu, yuv + w * h, w * h / 4);memcpy(pBufv, yuv + w * h * 5 / 4, w * h / 4);for (int y = 0; y < h; y++){for (int x = 0; x < w; x++){int r = (int)(pBufy[y * w + x] + 1.370705 * (pBufv[y * w / 4 + x / int g = (int)(pBufy[y * w + x] - 0.698001 * (pBufu[y * w / 4 + x / 2] - 128) - 0.703125 * (pBufv[y * w / 4 + x / 2] - 128));int b = (int)(pBufy[y * w + x] + 1.732446 * (pBufu[y * w / 4 + x / 2] - 128));if (r > 255)r = 255;if (r < 0)r = 0;if (g > 255)g = 255;if (g < 0)g = 0;if (b > 255)b = 255;if (b < 0)free(pBufy);free(pBufu);free(pBufv);return true;}}
}

yuv420转rgba相关推荐

  1. 通过WebAssembly在移动端解码H.265

    本文转自淘宝技术,文章详细介绍了如何通过WebAssembly在移动Web端实现H.265解码,既享受到了H.265更高的编码效率,又实现了在多种移动端浏览器上兼容.未来,通过WebAssembly还 ...

  2. Web端H.265播放器研发解密

    音视频编解码对于前端工程师是一个比较少涉足的领域,涉及到流媒体技术中的文本.图形.图像.音频和视频多种理论知识的学习,才能够应用到具体实践中,本团队在多媒体领域深耕两年多,才算是有一定产出,我们自研w ...

  3. 使用PBO更新NV21纹理,shader处理并渲染到FBO中,再进行二次渲染的例子

    使用PBO对比glTexImage2d函数可以提升纹理更新效率,因为glTexImage2d更新纹理需要把内存数据复制到显存,而这完全由CPU进行操作: 但使用PBO则可以让显卡驱动利用DMA通道,绕 ...

  4. Web端H.265播放器研发解密 1

    音视频编解码对于前端工程师是一个比较少涉足的领域,涉及到流媒体技术中的文本.图形.图像.音频和视频多种理论知识的学习,才能够应用到具体实践中,本团队在多媒体领域深耕两年多,才算是有一定产出,我们自研w ...

  5. RGBA、YUV色彩格式及libyuv的使用

    最近一段时间因为工作的需要,要使用到libyuv.因为之前写录制视频的时候,也要用到rgb转yuv,自己结合网上的资料做了个实现,记录了点笔记,现在索性一起整理下. 常用的色彩格式 常见的色彩格式主要 ...

  6. Android解码输出yuv,Android OpenGLES2.0 直接导出YUV420数据

    Android OpenGLES2.0中提供的glReadPixels方法提供的格式只有RGB的几种格式,但是这并不妨碍我们导出YUV格式的数据,因为不管是RGBA还是YUV,都不是glReadPix ...

  7. [JS] HEX颜色转换成RGBA

    写了一个函数,可以把hex格式的颜色转为rgba的格式 实际上不是颜色转换,主要是slice()函数的使用吧,当成字符串理解就好. function change(hex) {if (hex.leng ...

  8. HTML如何让图片覆盖背景颜色,css – 使用rgba背景颜色覆盖背景图像

    PeterVR的解决方案的缺点是,额外的颜色显示在整个HTML块的顶部 – 这意味着它也显示在div内容的顶部,而不仅仅是背景图像的顶部.这很好,如果你的div是空的,但如果它不使用线性渐变可能是一个 ...

  9. python使用matplotlib可视化、使用英文单次或者缩写指定使用的颜色、使用16进制的RGB字符串指定颜色、使用RGB或者RGBA数字元组指定颜色

    python使用matplotlib可视化.使用英文单次或者缩写指定使用的颜色.使用16进制的RGB字符串指定颜色.使用RGB或者RGBA数字元组指定颜色 目录

  10. (完全解决)ValueError: Invalid RGBA argument: 0.2

    背景 有的时候,我们需要绘制很多条折线,比如十几条,如果采用字符串指定颜色就需要预定义颜色,很麻烦. color="b" 所以我们更加倾向于随机产生0-1之间的RGB值,自动生成颜 ...

最新文章

  1. 人类如何接近“宇宙无限”?微积分的力量无处不在
  2. pku1050----To the Max(求矩阵的最大子段和)
  3. QTP的那些事--调用外部的文件的方法
  4. 指纹识别开源竞赛启动,5000张指纹图像匹配
  5. 加密选项_Word中新建、保存、及文档加密的设置方式
  6. 概率、随机数、随机数生成函数(面试题)
  7. AHOI2018训练日程(3.10~4.12)
  8. 解决Mac上“文本编码Unicode(UTF-8)“不适用的方法
  9. 【Linux-shell】shell脚本基础语法练习
  10. 条形码类别及如何区分
  11. 模拟软件-OLED和Solar cell的模拟软件(Emison模块)-[Setfos]
  12. linux自动升级关闭,Ubuntu关闭内核自动更新
  13. 阿里巴巴国际站详情页怎么装修热点链接一张图片多个链接代码询盘链接和客服代码制作教程装修代码
  14. 离散化-利用计算机求解y=x,离散信号处理(双语)-中国大学mooc-题库零氪
  15. V模型、W模型、H模型示意图以及优缺点对比
  16. 经过负载均衡图片加载不出来_负载均衡基础知识
  17. 如何通过电脑cmd查看android设备日志
  18. 五子棋(人机)-粗暴版AI
  19. 一次迭代式开发的研究:一个迭代式项目计划
  20. 【读书笔记】Haskell函数式编程入门 I 基础篇 2. 类型系统和函数

热门文章

  1. 应聘网站编辑常见面试题
  2. cmd控制台通过sftp命令下载服务器文件
  3. Firebug下载地址及安装方法
  4. 概要、详细设计文档内容简述
  5. iOS开发60分钟入门
  6. 人工智能系列:AI 赋能平台
  7. 爬虫抓取新浪微博数据
  8. linux mbr 分区表修复,linux fdisk修复分区
  9. 一个简易的QQ魔法卡片炼卡消耗计算器
  10. 广州恒义计算机科技,【长文】SONY MAP-S1解码一体机恒义科技HY-05台式耳放听感测评...