一种画质调节方法及系统.pdf

上传人:62****3 文档编号:4428015 上传时间:2018-10-01 格式:PDF 页数:7 大小:3.03MB
返回 下载 相关 举报
一种画质调节方法及系统.pdf_第1页
第1页 / 共7页
一种画质调节方法及系统.pdf_第2页
第2页 / 共7页
一种画质调节方法及系统.pdf_第3页
第3页 / 共7页
点击查看更多>>
资源描述

《一种画质调节方法及系统.pdf》由会员分享,可在线阅读,更多相关《一种画质调节方法及系统.pdf(7页珍藏版)》请在专利查询网上搜索。

1、(10)申请公布号 CN 103942017 A (43)申请公布日 2014.07.23 C N 1 0 3 9 4 2 0 1 7 A (21)申请号 201310027039.8 (22)申请日 2013.01.21 G06F 3/14(2006.01) (71)申请人深圳市快播科技有限公司 地址 518057 广东省深圳市南山区高新南一 道009号中国科技开发院中科研发园 三号楼22层 (72)发明人白向军 (74)专利代理机构深圳市顺天达专利商标代理 有限公司 44217 代理人李琴 (54) 发明名称 一种画质调节方法及系统 (57) 摘要 本发明公开了一种画质调节方法及系统,该 。

2、画质调节方法包括:A.检测当前显卡是否支持 OpenCL;B.若支持OpenCL,则检测当前OpenCL版 本是否支持渲染器与OpenCL的显存数据互相拷 贝;C.若支持互相拷贝,则当DXVA接口处理后的 视频被送入到渲染器的显存后,将渲染器的显存 数据拷贝至OpenCL的显存对象,并调用OpenCL中 的内核对象的参数,根据OpenCL中所创建的命令 队列、程序对象对显存数据进行画质调节的处理; D.将处理后的数据重新拷贝到渲染器的显存中, 并进行显示。本发明还构造一种画质调节系统。 实施本发明的技术方案,能在硬件加速解码时完 成比较复杂的画质调节。 (51)Int.Cl. 权利要求书1页 。

3、说明书4页 附图1页 (19)中华人民共和国国家知识产权局 (12)发明专利申请 权利要求书1页 说明书4页 附图1页 (10)申请公布号 CN 103942017 A CN 103942017 A 1/1页 2 1.一种画质调节方法,用于在使用DXVA接口硬件加速编码时对视频的画质进行调节, 其特征在于,所述画质调节方法包括: A.检测当前显卡是否支持OpenCL; B.若支持OpenCL,则检测当前OpenCL版本是否支持渲染器与OpenCL的显存数据互相 拷贝; C.若支持互相拷贝,则当DXVA接口处理后的视频被送入到渲染器的显存后,将渲染器 的显存数据拷贝至OpenCL的显存对象,并调。

4、用OpenCL中的内核对象的参数,根据OpenCL 中所创建的命令队列、程序对象对显存数据进行画质调节的处理; D.将处理后的数据重新拷贝到渲染器的显存中,并进行显示。 2.根据权利要求1所述的画质调节方法,其特征在于,在所述步骤A中,通过OpenCL自 带的平台ID函数和设备ID函数的返回值来检测当前显卡是否支持OpenCL。 3.根据权利要求1所述的画质调节方法,其特征在于,在所述步骤B中,通过OpenCL自 带的设备支持等级函数的返回值来检测当前显卡是否支持渲染器与OpenCL的显存数据互 相拷贝。 4.根据权利要求1所述的画质调节方法,其特征在于,在步骤C之前,预先接收并存储 用户设置。

5、的内核对象的参数。 5.根据权利要求1所述的画质调节方法,其特征在于,所述内核对象包括下列中的至 少一个:亮度、对比度、灰度、色调、饱和度、锐度、白平衡、去抖动。 6.一种画质调节系统,用于在使用DXVA接口硬件加速编码时对视频的画质进行调节, 其特征在于,所述画质调节系统包括: 第一检测模块,用于检测当前显卡是否支持OpenCL; 第二检测模块,用于在检测到支持OpenCL时,检测当前OpenCL版本是否支持渲染器与 OpenCL的显存数据互相拷贝; 处理模块,用于在检测到支持互相拷贝时,当DXVA接口处理后的视频被送入到渲染器 的显存后,将渲染器的显存数据拷贝至OpenCL的显存对象,并调。

6、用OpenCL中的内核对象的 参数,根据OpenCL中所创建的命令队列、程序对象对显存数据进行画质调节的处理; 显示模块,用于将处理后的数据重新拷贝到渲染器的显存中,并进行显示。 7.根据权利要求6所述的画质调节系统,其特征在于,所述第一检测模块通过OpenCL 自带的平台ID函数和设备ID函数的返回值来检测当前显卡是否支持OpenCL。 8.根据权利要求6所述的画质调节系统,其特征在于,所述第二检测模块通过OpenCL 自带的设备支持等级函数的返回值来检测当前显卡是否支持渲染器与OpenCL的显存数据 互相拷贝。 9.根据权利要求6所述的画质调节系统,其特征在于,所述画质调节系统还包括: 设。

7、置模块,用于预先接收并存储用户设置的内核对象的参数。 10.根据权利要求6所述的画质调节系统,其特征在于,所述内核对象包括下列中的至 少一个:亮度、对比度、灰度、色调、饱和度、锐度、白平衡、去抖动。 权 利 要 求 书CN 103942017 A 1/4页 3 一种画质调节方法及系统 技术领域 0001 本发明涉及流媒体处理领域,尤其是涉及一种在使用DXVA接口硬件加速编码时 进行画质调节的方法及系统。 背景技术 0002 在基于Directshow(Directshow是微软公司提供的一套在Windows平台上进行 流媒体处理的开发包)框架系统下的播放器中,使用DXVA(DirectX Vi。

8、deo Acceleration, 视频硬件加速)接口对视频进行硬件加速解码,可以大大减少CPU的使用率,但DXVA接口, 其后必须连接渲染器(Renderer),中间不能进行任何数据处理,否则就无法使用DXVA接口 对视频进行硬件加速解码。 0003 在使用DXVA接口的同时,要对解码出来的图像进行画质调节,一般有两种方式: 1.数据从显存拷贝到内存,利用CPU对图像数据进行处理,处理完毕再拷回到显存中进行 显示,该方式缺点是拷贝数据相当耗时;2.在显存中利用Pixel Shader(像素着色引擎)进 行就地处理,该Pixel Shader以像素为单位进行图形处理,缺点是Pixel Shad。

9、er有指令数 的限制,只能进行简单的画质调节。这两种方法都无法完成比较复杂的画质调节。 发明内容 0004 本发明要解决的技术问题在于,针对现有技术的上述无法完成比较复杂的画质调 节的缺陷,提供一种画质调节方法及系统,能在硬件加速解码时完成比较复杂的画质调节。 0005 本发明解决其技术问题所采用的技术方案是:构造一种画质调节方法,用于在使 用DXVA接口时对视频的画质进行调节,所述画质调节方法包括: 0006 A.检测当前显卡是否支持OpenCL; 0007 B.若支持OpenCL,则检测当前OpenCL版本是否支持渲染器与OpenCL的显存数据 互相拷贝; 0008 C.若支持互相拷贝,则。

10、当DXVA接口处理后的视频被送入到渲染器的显存后,将 渲染器的显存数据拷贝至OpenCL的显存对象,并调用OpenCL中的内核对象的参数,根据 OpenCL中所创建的命令队列、程序对象对显存数据进行画质调节的处理; 0009 D.将处理后的数据重新拷贝到渲染器的显存中,并进行显示。 0010 在本发明所述的画质调节方法中,在所述步骤A中,通过OpenCL自带的平台ID函 数和设备ID函数的返回值来检测当前显卡是否支持OpenCL。 0011 在本发明所述的画质调节方法中,在所述步骤B中,通过OpenCL自带的设备支持 等级函数的返回值来检测当前显卡是否支持渲染器与OpenCL的显存数据互相拷贝。

11、。 0012 在本发明所述的画质调节方法中,在步骤C之前,预先接收并存储用户设置的内 核对象的参数。 0013 在本发明所述的画质调节方法中,所述内核对象包括下列中的至少一个:亮度、对 比度、灰度、色调、饱和度、锐度、白平衡、去抖动。 说 明 书CN 103942017 A 2/4页 4 0014 本发明还构造一种画质调节系统,用于在使用DXVA接口时对视频的画质进行调 节,所述画质调节系统包括: 0015 第一检测模块,用于检测当前显卡是否支持OpenCL; 0016 第二检测模块,用于在检测到支持OpenCL时,检测当前OpenCL版本是否支持渲染 器与OpenCL的显存数据互相拷贝; 0。

12、017 处理模块,用于在检测到支持互相拷贝时,当DXVA接口处理后的视频被送入到渲 染器的显存后,将渲染器的显存数据拷贝至OpenCL的显存对象,并调用OpenCL中的内核对 象的参数,根据OpenCL中所创建的命令队列、程序对象对显存数据进行画质调节的处理; 0018 显示模块,用于将处理后的数据重新拷贝到渲染器的显存中,并进行显示。 0019 在本发明所述的画质调节系统中,所述第一检测模块通过OpenCL自带的平台ID 函数和设备ID函数的返回值来检测当前显卡是否支持OpenCL。 0020 在本发明所述的画质调节系统中,所述第二检测模块通过OpenCL自带的设备支 持等级函数的返回值来检。

13、测当前显卡是否支持渲染器与OpenCL的显存数据互相拷贝。 0021 在本发明所述的画质调节系统中,所述画质调节系统还包括: 0022 设置模块,用于预先接收并存储用户设置的内核对象的参数。 0023 在本发明所述的画质调节系统中,所述内核对象包括下列中的至少一个:亮度、对 比度、灰度、色调、饱和度、锐度、白平衡、去抖动。 0024 实施本发明的技术方案,首先,由于是在两个显存(渲染器的显存和OpenCL的显 存)之间互相拷贝数据,因此相比现有的在显存和内存之间互相拷贝数据,节省了时间;其 次,由于是在OpenCL中完成画质调节的处理,因此相比现有的直接在渲染器的显存中利用 像素着色引擎进行就。

14、地处理,克服了指令数受限的缺陷。综上,这种画质调节方法能完成比 较复杂的画质调节。 附图说明 0025 下面将结合附图及实施例对本发明作进一步说明,附图中: 0026 图1是本发明画质调节方法实施例一的流程图; 0027 图2是本发明画质调节系统实施例一的逻辑图。 具体实施方式 0028 本发明针对现有技术中在使用DXVA接口时对视频的画质进行调节时无法完成比 较复杂的画质调节的缺陷,提供一种基于OpenCL(Open Computing Language,开放运算语 言)的画质调节方法,首先说明的是,OpenCL是一个为异构平台编写程序的框架,此异构平 台可由CPU、GPU或其他类型的处理器。

15、组成。 0029 图1是本发明画质调节方法实施例一的流程图,该画质调节方法包括: 0030 A.检测当前显卡是否支持OpenCL,也即,判断当前显卡是否安装有OpenCL显示驱 动程序,若是,则执行步骤B;若否,则执行步骤E。优选地,可通过OpenCL自带的平台ID函 数(clG etPlatformIDs)和设备ID函数(clGetDeviceIDs)的返回值来检测当前显卡是否支 持OpenCL; 0031 B.检测当前OpenCL版本是否支持渲染器与OpenCL的显存数据互相拷贝,若 说 明 书CN 103942017 A 3/4页 5 是,则执行步骤C;若否,则执行步骤E。优选地,可通过。

16、OpenCL自带的设备支持等级函数 (clGetDeviceInfo)的返回值来检测当前显卡是否支持渲染器与OpenCL的显存数据互相 拷贝; 0032 C.当DXVA接口处理后的视频被送入到渲染器的显存后,将渲染器的显存数据拷 贝至OpenCL的显存对象,并调用OpenCL中的内核对象参数,根据OpenCL中所创建的命 令队列、程序对象对显存数据进行画质调节的处理,在该步骤中,需说明的是,应预先创建 OpenCL显存对象、创建命令队列、创建程序对象、创建Kernel(内核)对象等,并且设置好内 核对象的参数,其中,创建OpenCL显存对象是为了存放从渲染器拷贝过来的显存数据;创 建命令队列是。

17、为了在将一个视频帧分成多个块进行处理时以指示多个块如何处理;创建程 序对象是为了执行具体的画质调节算法;创建内核对象为了指示具体的调节对象,例如包 括:亮度、对比度、灰度、色调、饱和度、锐度、白平衡、去抖动等,而内核对象参数例如为:亮 度为20、对比度为50、灰度为4、色调为18、饱和度为50、锐度为3、白平衡为自动、去抖动为 50Hz等; 0033 D.将处理后的数据重新拷贝到渲染器的显存中,并进行显示,这样,所显示的视频 图像即为画质调节后的视频图像; 0034 E.在渲染器的显存中利用像素着色引擎进行画质调节的处理,并进行显示。当然, 该步骤也可先将渲染器的显存数据拷贝到内存,利用CPU。

18、对图像数据进行处理,处理完毕 再拷回到渲染器的显存中进行显示。 0035 实施该技术方案,在当前显卡支持OpenCL且当前OpenCL版本支持渲染器与 OpenCL的显存数据互相拷贝的前提下,当DXVA接口处理后的视频被送入到渲染器的显存 后,再将渲染器中的显存数据拷贝至OpenCL的显存中,并调用设置好的内核对象的参数, 对OpenCL中的显存数据进行画质调节处理,最后,将OpenCL的显存中处理好的显存数据重 新拷贝到渲染器的显存中,并进行显示。实施这种画质调节方法,首先,由于是在两个显存 (渲染器的显存和OpenCL的显存)之间互相拷贝数据,因此相比现有的在显存和内存之间互 相拷贝数据,。

19、节省了时间;其次,由于是在OpenCL中完成画质调节的处理,因此相比现有的 直接在渲染器的显存中利用像素着色引擎进行就地处理,克服了指令数受限的缺陷。综上, 这种画质调节方法能完成比较复杂的画质调节。 0036 在本发明画质调节方法的一个优选实施例中,在步骤C之前,预先接收并存储用 户设置的内核对象的参数,这样可根据用户需求进行相应的画质调节。 0037 图2是本发明画质调节系统实施例一的逻辑图,该画质调节系统包括第一检测模 块10、第二检测模块20、处理模块30和显示模块40,其中,第一检测模块10用于检测当前 显卡是否支持OpenCL,优选地,可通过OpenCL自带的平台ID函数和设备ID。

20、函数的返回值 来检测当前显卡是否支持OpenCL。第二检测模块20用于在检测到支持OpenCL时,检测当 前OpenCL版本是否支持渲染器与OpenCL的显存数据互相拷贝,优选地,可通过OpenCL自 带的设备支持等级函数的返回值来检测当前显卡是否支持渲染器与OpenCL的显存数据互 相拷贝。处理模块30用于在检测到支持互相拷贝时,当DXVA接口处理后的视频被送入到 渲染器的显存后,将渲染器的显存数据拷贝至OpenCL的显存对象,并调用OpenCL中的内 核对象的参数,根据OpenCL中所创建的命令队列、程序对象对显存数据进行画质调节的处 理。显示模块40用于将处理后的数据重新拷贝到渲染器的显。

21、存中,并进行显示。 说 明 书CN 103942017 A 4/4页 6 0038 在本发明画质调节系统的一个优选实施例中,该画质调节系统还包括设置模块, 该设置模块用于预先接收并存储用户设置的内核对象的参数,内核对象例如包括:亮度、对 比度、灰度、色调、饱和度、锐度、白平衡、去抖动。 0039 以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技 术人员来说,本发明可以有各种更改、组合和变化。凡在本发明的精神和原则之内,所作的 任何修改、等同替换、改进等,均应包含在本发明的权利要求范围之内。 说 明 书CN 103942017 A 1/1页 7 图1 图2 说 明 书 附 图CN 103942017 A 。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 物理 > 计算;推算;计数


copyright@ 2017-2020 zhuanlichaxun.net网站版权所有
经营许可证编号:粤ICP备2021068784号-1