| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> 游戏开发 -> 新平台适配 相机概率预览闪烁问题 -> 正文阅读 |
|
[游戏开发]新平台适配 相机概率预览闪烁问题 |
1. 有规律的闪烁 (概率性,操作20 30次进入某一个模式出现) 2. 相同的基线代码老的平台是正常的 3. 三方相机是正常的 分析思路: 1. dump原始数据查看是否正常 1.1 dump 从底层接收到每帧数据数据 (texture -> yuv ) ? ? ? 1.2 dump GPU上屏前的数据 (texture -> yuv ) 结果: ------------------ 数据全部正常 2. 数据dump上屏前正常,但是还闪烁, 分析和 GPU有关系 ?render doc? 工具? dump GPU数据 但是实际 GPU dump接收到的数据也正常 GPU绘制数据时, 会拿到 数据中的 colorSpace 进行绘制显示 mtk: setColorSpace 的api 定制的通路也有设 setColorSapce // 中间一个版本变成必现, 未修改(gpu/mali/skia/surfaceflinger/layer/buffer)相关/ 为了提高某种场景下的性能? ? ? IGraphicImageBufferHeap:: create(xxx,xx,xxx,xxx,xx,xxx,1 ) ; ? ?其中通过 系统提卡顿的case, patch:参数earlymap(dmaAddrEarlyMap ) =1 Mapping DMA address costs time. When lots of ?buffer need to be mapped dynamically during ISP processing. during buffer allocation to avoid dynamically and repeatedly DMA address mapping 从必现的修改去分析问题 -- 从定制通路去分析 1. 完全不走定制的流程(包括算法等等处理? memory copy (input -> output) ) ? ? ?不会闪屏 2. 走定制的流程 (不走处理, 只走 memory copy (input -> output))? ? ? ?(setcolorspace)存在闪屏 ? ? ?(no setcolorspace)不存在闪屏 3. setColorSpace 从result返回阶段挪到? request下发阶段 不闪 分析是 setcolor space 到? gpu渲染不同步,导致闪烁 |
|
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 | -2024/11/23 19:29:22- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |