PotPlay视频播放器YUV色彩空间不一致所导致的图像发蒙问题及优化方案

✍🏻 基本情况

对着同样的场景,使用同样的isp参数,使用potplay默认设置(使用的是限制范围16-235)查看UVC或RTSP出流图像截图效果和jpg编码图像对比 ,发现UVC和RTSP出流图像截图效果基本相近,通透度也很好;但是拍照模式下的JPG效果比较蒙,通透度比较差。

💡定位解析

  1. YUV全范围颜色空间即Y范围为0-255,Cr/Cb范围为1-255
  2. 限制范围颜色空间为:Y范围为16-235,Cr/Cb范围为16-240
  3. 由于ISP输出的最终yuv图像为全范围颜色空间,如果和视频播放软件的yuv颜色空间对应不上,可能就会出现一些亮度和色彩偏差问题。
  4. 如果客户恰好用其他播放软件和实际isp输出的色彩空间对应上,但是调试的时候在potplay选择限制颜色空间显示,那么客户看到的图像可能发蒙,因为potplay内部已经做了直方图拉伸处理,提高了对比度。
  5. 后续使用potplay测试和调试图像的需要进行如下设置,把播放软件设置为全范围颜色空间。

📆 反思/总结

  1. 打开potplay视频播放软件;
  2. 点击F5快捷键,打开参数选项设置窗口。如下图不同版本potplay显示参数界面;

新potplay版本
旧potplay版本

3.点击界面色彩空间/属性。把YUV转RGB和YUV色彩空间设配置如下参数进行测试和调试。

猜想:ISP输出全范围YUV颜色空间,播放软件设置为限制范围颜色空间。此时,视频播放软件应该还有一些配置使得图像做了直方图拉伸处理。可能是上述界面中的色阶/偏移中待验证。

总之,ISP输出的颜色空间和播放软件显示所使用的颜色空间必须一致。否则会出现亮度、通透度、色彩的差异问题。

相关推荐
活捉一个坏小孩5 天前
Nvidia FFmpeg安装说明
ffmpeg
WF_YL5 天前
如何删除 Oracle 过期 key / 数据,删除目的的key
ffmpeg
浩瀚之水_csdn5 天前
avcodec_find_decoder函数详解
ffmpeg
浩瀚之水_csdn8 天前
avcodec_parameters_copy详解
linux·人工智能·ffmpeg
不吃鱼的猫74812 天前
【ffplay 源码解析系列】02-核心数据结构详解
c++·ffmpeg·音视频
不吃鱼的猫74812 天前
【ffplay 源码解析系列】01-开篇-ffplay整体架构与启动流程
c++·架构·ffmpeg·音视频
REDcker14 天前
FFmpeg开发者快速入门
ffmpeg
不吃鱼的猫74814 天前
【从零手写播放器:FFmpeg 音视频开发实战】04-封装格式与多媒体容器
c++·ffmpeg·音视频
REDcker15 天前
FFmpeg完整文档
linux·服务器·c++·ffmpeg·音视频·c·后端开发
硬汉嵌入式15 天前
QEMU & FFmpeg作者Fabrice Bellard推出MicroQuickJS,一款面向嵌入式系统JavaScript引擎,仅需10K RAM
javascript·ffmpeg·microquickjs