System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本专利技术属于图像处理领域,更具体地,涉及一种实现实时动态刷新率的方法、显示系统及图像信号发生器(pattern generator,pg)。
技术介绍
1、人们对于电子显示技术的探索与革新让广大消费者的观看体验在近几十年里有了长足的进步,从大块头的阴极射线管(cathode ray tube,crt)显示器到轻薄小巧的液晶显示器(liquid-crystal display,lcd),甚至最新的有机发光二极管(organic light-emitting diode,oled),从工作原理到制作材料,以上三者之间大相径庭,但它们显示图像时都需要对屏幕内容不断的刷新(refresh),从而能显示动态的画面效果。大部分显示设备的刷新率(refresh rate)是一个固定的值,这对于很多应用场景使用起来没有问题,比如看电影,办公等,但是电子游戏则不同。
2、电子游戏作为高度依赖显示技术的娱乐方式,这些技术的变革与升级对其自身的发展有着巨大的影响。电子游戏图像的生成十分复杂,游戏主程序对场景需要哪些贴图、模型进行计算,从存储器中调用,最后由显示单元进行运算输出到显示设备。在游戏画面生成的过程中,由于显卡或图形处理器(graphics processing unit,gpu)性能不足或是游戏程序架构设计方面存在问题,造成帧速率(framerate)不能总是一个固定的值,这就导致在游戏画面生成完毕并输出到显示设备时,游戏画面的帧率可能和显示设备的刷新过程不匹配,从而导致显示画面出现问题,一般常见的问题分为两种:画面撕裂(te
3、需要说明的是,画面撕裂(tearing)产生的原因为:如果显示设备以固定刷新率显示图像,且图像传输接口也以固定的刷新率传输图像,而帧生成时间不确定时,当屏幕上正在显示的那一帧画面还没完全消失,新一帧画面就被输出到了显示设备上,将会看到两帧不同的画面同时出现在显示设备,如图1所示。画面卡顿(stuttering)产生的原因为:游戏画面生成过程中某些环节出现了拖慢,导致显卡输出的时间节点和显示设备的刷新时间有了错位,有可能会对一帧图像帧重复显示导致该帧停留的时间为其他帧的两倍,视觉上便会产生卡顿的感觉,如图2所示。
4、目前已有显示器支持了可变刷新率技术,即显示一帧的时间可以根据图像源的帧率进行自适应。这就要求传输图像的接口也需支持传输动态刷新率的图像数据,使得两者刷新率可以完全匹配以解决上述问题。具体实现方案为:通过重新配置像素时钟(pixelclock,pclk)的频率来实现刷新率的改变。如前文所述,实际上显示设备的像素时钟频率frequency计算公式为:frequency=htotal×vtotal×framerate;vtotal为一帧图像的总行数,htotal为一行的总像素时钟周期。那么当一幅图像的分辨率固定时,如果将像素时钟变为原来的一半,则刷新率也会对应减半。此方法的缺点为,当重新配置像素时钟频率后,在一段时间之内像素时钟是不稳定的,甚至没有像素时钟信号输出,这就会导致在这段时间内没有图像数据发送到显示器,从而观察到黑屏或者闪烁的现象,如图3中的虚框所示,图3中data表述图像帧数据。此外,像素时钟的频率也有范围限制,过低则时钟芯片无法输出低频的时钟,过高则会导致时序难以收敛等。因此该方法实现的刷新率可调节范围较窄。
技术实现思路
1、针对现有技术的缺陷,本专利技术的目的在于提供一种实现实时动态刷新率的方法、显示系统及pg,旨在解决现有图像显示的刷新率动态可调节范围过窄的问题。
2、为实现上述目的,第一方面,本专利技术提供一种实现实时动态刷新率的方法,包括:
3、渲染生成图像帧,并确定对应的帧速率;
4、根据渲染生成每帧图像的帧速率确定向显示模块发送每帧图像的行消隐区和/或场消隐区的长度;
5、结合所确定的行消隐区和场消隐区的长度向显示模块发送对应的图像帧,以便显示模块基于行消隐区和场消隐区的长度动态调整其显示对应图像帧的刷新率。
6、可以理解的是,本专利技术根据图像帧的帧速率动态调整图像帧的发送时序,使得图像帧的发送时序携带其生成过程的帧速率信息,以便显示模块基于图像帧的时序信息动态调整刷新率,使得刷新率和帧速率动态匹配,保证显示画面的质量,避免出现画面撕裂、卡顿、黑屏或闪烁等等情况。
7、在一种可能的实现方式中,该方法还包括:
8、当所述行消隐区和/或场消隐区的长度被调整后,向显示模块发送相关指示信息,以指示显示模块基于行消隐区和场消隐区的长度动态调整其显示对应图像帧的刷新率。
9、需要说明的是,有一些显示模块可以自动识别图像帧的时序信息,以依据图像帧时序相应调整其刷新率,但是有一些显示模块不能自动识别图像帧的时序信息,对于那些无法自动识别的显示模块,需要向显示模块发送相关指示信息,以指示显示模块去识别图像帧的时序,以依据图像帧时序动态切换其刷新率。
10、在一种可能的实现方式中,该方法还包括:
11、当渲染生成下一帧图像帧的帧速率相比渲染生成上一帧图像帧的帧速率发生改变时,确定下一帧图像帧的帧速率,并进行锁存;
12、当所述上一帧图像帧向显示模块发送完毕后,基于下一帧图像帧的帧速率调整行消隐区和/或场消隐区的长度,以结合调整后的行消隐区和场消隐区的长度向显示模块发送所述下一帧图像帧。
13、具体地,由于渲染生成完一帧图像帧到这一帧图像帧传输完成存在时间差。为了保证显示模块不会在一帧图像帧未传输完成的时候获取到刷新率变化,从而导致发送到显示的单帧画面出错,本专利技术获取到下一帧刷新率发生了变化的信息后会先进行锁存,只有在当前图像帧发送完成后,才会去调整时序,从而避免在一帧图像帧之内存在两种不同的刷新率。
14、在一种可能的实现方式中,设图像帧的帧速率为framerate,则通过如式确定各图像帧的行消隐区和场消隐区的长度:
15、
16、其中,frequency为显示模块的像素时钟频率,htotal为一行的总像素时钟周期,htotal=hactive+hblank,hactive为行有效区,hblank为行消隐区;vtotal为一帧图像帧的总行数,vtotal=vactive+vblank,vactive为场有效区,vblank为场消隐区。
17、具体地,通常情况下,vactive和hactive的长度是固定,因此可以依据图像帧的帧速率调整行消隐区和/或场消隐区的长度调整htotal和/或vtotal的长度,来动态调整显示模块的刷新率。
18、需要说明的是,显示模块的刷新率refreshrate一般通过下式确定:
19、
20、因此,当htotal和/或vtotal的长度改变时,显示模块的刷新率相应改变,且显示模块的刷新率和生成图像的帧速率能够动态实时匹配,实现对图像帧的高质量显示。
本文档来自技高网...【技术保护点】
1.一种实现实时动态刷新率的方法,其特征在于,包括:
2.根据权利要求1所述的方法,其特征在于,还包括:
3.根据权利要求1所述的方法,其特征在于,还包括:
4.根据权利要求1所述的方法,其特征在于,设图像帧的帧速率为FrameRate,则通过如式确定各图像帧的行消隐区和场消隐区的长度:
5.根据权利要求4所述的方法,其特征在于,所述行消隐区Hblank包括:水平同步信号脉宽HPW、水平同步信号后肩HBP以及水平同步信号前肩HFP;
6.根据权利要求4所述的方法,其特征在于,所述场消隐区Vblank包括:垂直同步信号脉宽VPW、垂直同步信号后肩VBP以及垂直同步信号前肩VFP;
7.根据权利要求4所述的方法,其特征在于,所述Frequency固定不变。
8.一种显示系统,其特征在于,包括:图像生成模块、图像传输接口模块以及显示模块;
9.一种图像信号发生器,其特征在于,包括:图像生成模块和图像传输接口模块;
10.根据权利要求9所述的图像信号发生器,其特征在于,所述图像传输
...【技术特征摘要】
1.一种实现实时动态刷新率的方法,其特征在于,包括:
2.根据权利要求1所述的方法,其特征在于,还包括:
3.根据权利要求1所述的方法,其特征在于,还包括:
4.根据权利要求1所述的方法,其特征在于,设图像帧的帧速率为framerate,则通过如式确定各图像帧的行消隐区和场消隐区的长度:
5.根据权利要求4所述的方法,其特征在于,所述行消隐区hblank包括:水平同步信号脉宽hpw、水平同步信号后肩hbp以及水平同步信号前肩hfp;
6.根据权利要求4所述的方...
【专利技术属性】
技术研发人员:周朝致,肖哲靖,朱寒,
申请(专利权)人:武汉精立电子技术有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。