一种基于多路视频编码的渲染差异比对方法技术

技术编号:39663761 阅读:11 留言:0更新日期:2023-12-11 18:26
本发明专利技术公开了一种基于多路视频编码的渲染差异比对方法,通过将基准

【技术实现步骤摘要】
一种基于多路视频编码的渲染差异比对方法


[0001]本专利技术属于计算机应用开发
,具体涉及一种基于多路视频编码的渲染差异比对方法


技术介绍

[0002]当具有不同品牌

不同型号或不同驱动程序的
GPU
运行同一图形程序时,得到的图像渲染结果有可能不尽相同

因此测试
GPU
实现标准的正确性时就需要以现有成熟且稳定的
GPU
的渲染结果为基准,通过比较被测
GPU
的渲染结果与基准渲染结果的差异确定被测
GPU
的正确性

现有的比较方法,通常是将渲染结果转化为具有相同帧率的视频文件后,采用图像差异比较方法逐帧比较被测视频文件与基准视频文件来确定渲染结果的差异

由此可见,现有比较方法仅支持两个视频文件间的比较,也就是说同时仅能处理一个被测
GPU
,而且需要将渲染结果转换为视频文件进行保存,因此现有比较方法存在处理效率低的问题


技术实现思路

[0003]有鉴于此,本专利技术提供了一种基于多路视频编码的渲染差异比对方法,实现了同时对多个被测
GPU
渲染结果的差异比对

[0004]本专利技术提供的一种基于多路视频编码的渲染差异比对方法,包括以下步骤:步骤
1、
将基准
GPU
及被测
GPU
均与测试系统相连,为被测r/>GPU
分配唯一的
GPU
编号,使基准
GPU
与被测
GPU
以相同的帧率同步执行图形测试程序,再逐帧同步从基准
GPU
及被测
GPU
读取渲染结果数据,同一时刻的渲染结果数据具有相同的帧编号,将从基准
GPU
读取的渲染结果数据记为基准渲染帧,将从被测
GPU
读取的渲染结果数据记为被测渲染帧;将基准渲染帧及被测渲染帧作为视频编码器的输入数据;步骤
2、
以相邻基准渲染帧之间的待渲染顶点数据为基准顶点数据,以相邻被测渲染帧之间的待渲染顶点数据为被测顶点数据,将基准顶点数据及被测顶点数据均作为视频编码器的输入数据;步骤
3、
视频编码器将接收到的基准渲染帧作为
I
帧的数据,将与基准渲染帧具有相同帧编号的被测渲染帧按
GPU
编号顺序作为与上述
I
帧对应的
P
帧的数据,结合基准顶点数据及被测顶点数据进行编码,编码形成的
I
帧中保存基准渲染帧,
P
帧保存被测
GPU
的当前渲染帧与基准渲染帧间的差异块信息;步骤
4、
根据差异块信息获取其对应被测
GPU

GPU
编号,当差异块信息中的运动向量超过阈值或残差信息超过阈值时,则判定其对应被测
GPU
渲染错误

[0005]进一步地,所述步骤1中所述将基准
GPU
及被测
GPU
均与测试系统相连的方式为:将基准
GPU
及被测
GPU
同时插在测试系统的物理接口上

[0006]进一步地,所述步骤1中所述使基准
GPU
与被测
GPU
以相同的帧率同步执行图形测试程序,再逐帧同步从基准
GPU
及被测
GPU
读取渲染结果数据的方式为:
以相同帧率分别在基准
GPU
和被测
GPU
上运行图形测试程序,每个图形测试程序均分别以独立窗口显示,各独立窗口间互不覆盖,基准
GPU
对应的独立窗口记为基准窗口,被测
GPU
对应的独立窗口记为被测窗口;获取基准窗口所对应显存区域的句柄,采用该句柄从显存访问基准窗口的内容;对于被测
GPU
,若提供了显存访问接口则采用显存访问接口获取被测窗口所对应显存区域的句柄再通过该句柄访问被测窗口的内容,否则获取被测窗口的
FrameBuffer
再通过
FrameBuffer
访问被测窗口的内容

[0007]进一步地,所述基准顶点数据或被测顶点数据的获取方式为:通过
Hook
基准
GPU
或被测
GPU
提供的图形接口的顶点生成
API
实现数据的获取

[0008]进一步地,所述步骤4中运动向量的生成方式为:获取待测
GPU
绘制当前
P
帧的命令,解析命令参数获取命令相关的顶点,并从这些顶点中选取在
I
帧和当前
P
帧间的坐标差值大于阈值的顶点作为计算运动向量的关键点;再计算上述关键点从
I
帧到当前
P
帧的移动距离及方向,构成上述关键点的运动向量

[0009]进一步地,所述步骤3中所述视频编码器将接收到的基准渲染帧作为
I
帧的数据,将与基准渲染帧具有相同帧编号的被测渲染帧按
GPU
编号顺序作为与上述
I
帧对应的
P
帧的数据,结合基准顶点数据及被测顶点数据进行编码之前,若基准渲染帧和被测渲染帧存储在显存则先将帧数据复制到内存,否则不做处理

[0010]进一步地,所述差异块信息以可视化方式显示

[0011]进一步地,所述以可视化方式显示的过程为:解码过程中对
I
帧执行正常解码和渲染操作,对
P
帧则仅将其与
I
帧合成差异块信息对应的区域作为关键区域,对关键区域执行正常解码及渲染操作,关键区域以外的区域均设置为纯色再执行渲染操作

[0012]进一步地,所述步骤4还包括:输出残差信息对应的形状

亮度或颜色的具体坐标

[0013]有益效果
[0014]本专利技术通过将基准
GPU
的渲染结果

被测
GPU
的渲染结果

基准顶点数据及被测顶点数据作为视频编码器的输入数据,再以基准
GPU
的渲染结果及被测
GPU
的渲染结果分别作为
I
帧和
P
帧的数据由视频编码器完成编码,根据编码后
P
帧中保存的差异块信息判断被测
GPU
渲染结果的正确性,实现了同时对多个被测
GPU
的渲染结果与基准渲染结果进行差异比对,且比对过程不依赖本文档来自技高网...

【技术保护点】

【技术特征摘要】
1.
一种基于多路视频编码的渲染差异比对方法,其特征在于,包括以下步骤:步骤
1、
将基准
GPU
及被测
GPU
均与测试系统相连,为被测
GPU
分配唯一的
GPU
编号,使基准
GPU
与被测
GPU
以相同的帧率同步执行图形测试程序,再逐帧同步从基准
GPU
及被测
GPU
读取渲染结果数据,同一时刻的渲染结果数据具有相同的帧编号,将从基准
GPU
读取的渲染结果数据记为基准渲染帧,将从被测
GPU
读取的渲染结果数据记为被测渲染帧;将基准渲染帧及被测渲染帧作为视频编码器的输入数据;步骤
2、
以相邻基准渲染帧之间的待渲染顶点数据为基准顶点数据,以相邻被测渲染帧之间的待渲染顶点数据为被测顶点数据,将基准顶点数据及被测顶点数据均作为视频编码器的输入数据;步骤
3、
视频编码器将接收到的基准渲染帧作为
I
帧的数据,将与基准渲染帧具有相同帧编号的被测渲染帧按
GPU
编号顺序作为与上述
I
帧对应的
P
帧的数据,结合基准顶点数据及被测顶点数据进行编码,编码形成的
I
帧中保存基准渲染帧,
P
帧保存被测
GPU
的当前渲染帧与基准渲染帧间的差异块信息;步骤
4、
根据差异块信息获取其对应被测
GPU

GPU
编号,当差异块信息中的运动向量超过阈值或残差信息超过阈值时,则判定其对应被测
GPU
渲染错误
。2.
根据权利要求1所述的渲染差异比对方法,其特征在于,所述步骤1中所述将基准
GPU
及被测
GPU
均与测试系统相连的方式为:将基准
GPU
及被测
GPU
同时插在测试系统的物理接口上
。3.
根据权利要求1所述的渲染差异比对方法,其特征在于,所述步骤1中所述使基准
GPU
与被测
GPU
以相同的帧率同步执行图形测试程序,再逐帧同步从基准
GPU
及被测
GPU
读取渲染结果数据的方式为:以相同帧率分别在基准
GPU
和被测
GPU
上运行图形测试程序,每个图形测试程序均分别以独立窗口显示...

【专利技术属性】
技术研发人员:温研
申请(专利权)人:北京麟卓信息科技有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1