CN103259989A - 屏幕内容的显示方法及装置 - Google Patents
屏幕内容的显示方法及装置 Download PDFInfo
- Publication number
- CN103259989A CN103259989A CN2012100367045A CN201210036704A CN103259989A CN 103259989 A CN103259989 A CN 103259989A CN 2012100367045 A CN2012100367045 A CN 2012100367045A CN 201210036704 A CN201210036704 A CN 201210036704A CN 103259989 A CN103259989 A CN 103259989A
- Authority
- CN
- China
- Prior art keywords
- pixel
- layer
- transparency
- pixel value
- graph layer
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Images
Classifications
-
- G—PHYSICS
- G09—EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
- G09G—ARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
- G09G3/00—Control arrangements or circuits, of interest only in connection with visual indicators other than cathode-ray tubes
- G09G3/20—Control arrangements or circuits, of interest only in connection with visual indicators other than cathode-ray tubes for presentation of an assembly of a number of characters, e.g. a page, by composing the assembly by combination of individual elements arranged in a matrix no fixed position being assigned to or needed to be assigned to the individual characters or partial characters
-
- G—PHYSICS
- G09—EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
- G09G—ARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
- G09G2310/00—Command of the display device
- G09G2310/04—Partial updating of the display screen
-
- G—PHYSICS
- G09—EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
- G09G—ARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
- G09G2340/00—Aspects of display data processing
- G09G2340/10—Mixing of images, i.e. displayed pixel being the result of an operation, e.g. adding, on the corresponding input pixels
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Controls And Circuits For Display Device (AREA)
- User Interface Of Digital Computer (AREA)
Abstract
本发明公开了一种屏幕内容的显示方法及装置。其中,该方法包括:接收用户发送的更新指令,根据该更新指令确定更新区域;逐个读取上述更新区域内的像素点,其中,该像素点的上层为图形层,下层为视频层;对于每个读取的像素点,根据该像素点的图形层的像素值配置该像素点的图形层的透明度,并在该透明度的值大于0,且小于255时,将上述像素点的视频层的像素值和上述图形层的像素值进行混合,并将混合后的结果存储到缓存区的对应位置;在屏幕上显示该缓存区中存储的像素值。通过本发明,解决了相关技术中屏幕内容的显示过程中计算量较大的问题,从而简化了计算过程,降低了设备功耗,提升了用户体验。
Description
技术领域
本发明涉及通信领域,具体而言,涉及一种屏幕内容的显示方法及装置。
背景技术
随着电子技术与软件技术的发展,手机、MP4、平板电脑等便携式终端设备的普及程度越来越高,人们在选择这些设备的时候,也越来越看重它们的多媒体处理能力和屏幕显示效果。流畅的高清视频播放效果和绚丽多变的用户界面(User Interface,简称为UI)特效显示成为吸引客户眼球并激发客户购买欲望的一个重要因素。
多媒体播放和UI特效都要进行屏幕菜单式调节方式(On-Screen Display,简称为OSD)的多图层叠加,OSD事实上就是将多图层同时显示在屏幕上的方法和技术,其关键技术就是阿尔法(alpha)混合。以目前便携式设备上视频播放或拍照录像的屏幕显示方式为例,上述应用场景需要将用户界面和视频数据同时显示在屏幕上,可以将用户界面定义为图形层,将视频数据定义为视频层,图形层可能是已经经过alpha混合后的数据。alpha混合要求图形层是带alpha透明度的色彩模式(Alpha,Red,Green,Blue,简称为ARGB)数据,视频层数据可以为亮度色差(YUV)、ARGB、红绿蓝(Red,Green,blue,简称为RGB)格式等多种数据格式。上述OSD处理过程需要两次遍历图形层的像素点从而分别进行alpha透明度配置和alpha混合,由此可见,该过程需要进行大量的数据计算。
虽然处理器技术有了长足的发展,然而在嵌入式环境下,中央处理器(Central ProcessingUnit,简称为CPU)和内存依然是紧缺资源,并且从硬件角度对其进行提升的代价比较昂贵,加之电源一直是嵌入式设备的瓶颈所在,因此一种好的OSD混合算法,无论是从减少计算量的角度考虑还是从延长电源待机时间的角度考虑,都是至关重要的。
针对相关技术中屏幕内容的显示过程中计算量较大的问题,目前尚未提出有效的解决方案。
发明内容
针对相关技术中屏幕内容的显示过程中计算量较大的问题,本发明提供了一种屏幕内容的显示方法及装置,以至少解决上述问题。
根据本发明的一个方面,提供了一种屏幕内容的显示方法,该方法包括:接收用户发送的更新指令,根据该更新指令确定更新区域;逐个读取上述更新区域内的像素点,其中,该像素点的上层为图形层,下层为视频层;对于每个读取的像素点,根据该像素点的图形层的像素值配置该像素点的图形层的透明度,并在该透明度的值大于0,且小于255时,将上述像素点的视频层的像素值和上述图形层的像素值进行混合,并将混合后的结果存储到缓存区的对应位置;在屏幕上显示该缓存区中存储的像素值。
将上述像素点的视频层的像素值和上述图形层的像素值进行混合可以包括:判断该像素点的视频层的格式与图形层的格式是否相同;如果否,将上述像素点的视频层的格式转换为与上述图形层相同的格式,其中,该图形层的格式为红绿蓝RGB色彩格式或亮度色差YUV格式;然后根据转换后的上述视频层的格式对上述像素点的视频层的像素值和上述图形层的像素值进行混合。
根据上述更新指令确定更新区域可以包括:当上述更新指令为视频层更新指令时,确定更新区域为视频层更新区域;当上述更新指令为图形层更新指令时,确定更新区域为图形层更新区域。
根据上述像素点的图形层的像素值配置上述像素点的图形层的透明度之后,上述方法还可以包括:判断上述更新区域是否为上述视频层更新区域;如果是,判断上述透明度的值是否为0或255;如果上述透明度的值为0,将上述像素点的视频层的格式转换为指定输出格式,并将转换后的上述像素点的视频层的像素值存储到上述缓存区的对应位置;如果上述透明度的值为255,将上述像素点的图形层的像素值存储到上述缓存区的对应位置。
根据上述像素点的图形层的像素值配置上述像素点的图形层的透明度之后,上述方法还可以包括:判断上述更新区域是否为图形层更新区域;如果是,判断上述透明度的值是否为0或255;如果上述透明度的值为0,将上述像素点的视频层的像素值存储到上述缓存区的对应位置;如果上述透明度的值为255,将上述像素点的图形层的像素值存储到上述缓存区的对应位置。
根据上述像素点的图形层的像素值配置上述像素点的图形层的透明度之前,上述方法还可以包括:设置像素值与透明度的对应关系表;根据上述像素点的图形层的像素值配置上述像素点的图形层的透明度包括:读取上述像素点的图形层的像素值,在上述对应关系表中查询与上述图形层的像素值相对应的上述图形层的透明度,将查询到的上述透明度配置给上述像素点。
上述混合可以为阿尔法混合。
根据本发明的另一方面,提供了一种屏幕内容的显示装置,该装置包括:更新区域确定模块,用于接收用户发送的更新指令,根据该更新指令确定更新区域;像素值混合模块,用于逐个读取上述更新区域内的像素点,其中,该像素点的上层为图形层,下层为视频层;对于每个读取的像素点,根据该像素点的图形层的像素值配置该像素点的图形层的透明度,并在该透明度的值大于0,且小于255时,将上述像素点的视频层的像素值和上述图形层的像素值进行混合;存储模块,用于将上述像素值混合模块混合后的结果存储到缓存区的对应位置;像素值显示模块,用于在屏幕上显示上述缓存区中存储的像素值。
上述像素值混合模块可以包括:格式判断单元,用于判断上述像素点的视频层的格式与上述图形层的格式是否相同;转换单元,用于在上述格式判断单元的判断结果为否的情况下,将上述像素点的视频层的格式转换为与上述图形层相同的格式,其中,该图形层的格式为红绿蓝RGB色彩格式或亮度色差YUV格式;混合单元,用于根据上述转换单元转换后的上述视频层的格式对上述像素点的视频层的像素值和上述图形层的像素值进行混合。
上述更新区域确定模块可以包括:视频层更新区域确定单元,用于当上述更新指令为视频层更新指令时,确定更新区域为视频层更新区域;图形层更新区域确定单元,用于当上述更新指令为图形层更新指令时,确定更新区域为图形层更新区域。
上述像素值混合模块还可以包括:第一区域判断单元,用于判断上述更新区域是否为上述视频层更新区域;第一透明度判断单元,用于在上述第一区域判断单元的判断结果为是的情况下,判断上述透明度的值是否为0或255;第一存储单元,用于在上述透明度的值为0时,将上述像素点的视频层的格式转换为指定输出格式,并将转换后的上述像素点的视频层的像素值存储到上述缓存区的对应位置;第二存储单元,用于在上述透明度的值为255时,将上述像素点的图形层的像素值存储到上述缓存区的对应位置。
上述像素值混合模块还可以包括:第二区域判断单元,用于判断上述更新区域是否为上述图形层更新区域;第二透明度判断单元,用于在上述第二区域判断单元的判断结果为是的情况下,判断上述透明度的值是否为0或255;第三存储单元,用于在上述透明度的值为0时,将上述像素点的视频层的像素值存储到上述缓存区的对应位置;第四存储单元,用于在上述透明度的值为255时,将上述像素点的图形层的像素值存储到上述缓存区的对应位置。
上述装置还可以包括:对应关系表设置模块,用于设置像素值与透明度的对应关系表;上述像素值混合模块包括:透明度配置单元,用于读取上述像素点的图形层的像素值,在上述对应关系表中查询与上述图形层的像素值相对应的上述图形层的透明度,将查询到的上述透明度配置给上述像素点。
通过本发明,根据接收到的更新指令确定更新区域,然后逐个读取该更新区域内的像素点,对于每个读取的像素点,配置该像素点的图形层的透明度,并在该透明度的值大于0,且小于255时,将上述像素点的视频层的像素值和上述图形层的像素值进行混合,并将混合后的结果存储到缓存区的对应位置,然后在屏幕上显示该缓存区中存储的像素值,解决了相关技术中屏幕内容的显示过程中计算量较大的问题,从而简化了计算过程,降低了设备功耗,提升了用户体验。
附图说明
此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:
图1是根据本发明实施例的屏幕内容的显示方法流程图;
图2是根据本发明实施例的终端设备的屏幕内容显示方法的流程图;
图3是根据本发明实施例的屏幕内容的显示装置的结构框图;
图4是根据本发明实施例的屏幕内容的显示装置的具体结构框图;
图5是根据本发明实施例的屏幕内容的显示装置的另一种结构框图。
具体实施方式
下文中将参考附图并结合实施例来详细说明本发明。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。
在相关技术中,需要分别对像素点的图形层的像素值配置透明度以及进行像素值的混合操作,因此需要两次遍历像素点,此过程需要进行大量的数据计算。基于此,本发明实施例提供了一种屏幕内容的显示方法及装置,该方法只需一次遍历像素点便可完成屏幕内容的显示,下面通过实施例进行详细说明。
本实施例提供了一种屏幕内容的显示方法,该方法可以在终端设备上实现,如图1所示的屏幕内容的显示方法流程图,该方法包括以下步骤(步骤S102-步骤S108):
步骤S102,终端设备接收用户发送的更新指令,根据该更新指令确定更新区域;
步骤S104,终端设备逐个读取上述更新区域内的像素点,其中,该像素点的上层为图形层,下层为视频层;
步骤S106,对于每个读取的像素点,终端设备根据上述像素点的图形层的像素值配置上述像素点的图形层的透明度,并在该透明度的值大于0,且小于255时,将上述像素点的视频层的像素值和上述图形层的像素值进行混合,并将混合后的结果存储到缓存区的对应位置;
步骤S108,终端设备在屏幕上显示上述缓存区中存储的像素值。
通过上述方法,根据接收到的更新指令确定更新区域,然后逐个读取该更新区域内的像素点,对于每个读取的像素点,配置该像素点的图形层的透明度,并在该透明度的值大于0,且小于255时,将上述像素点的视频层的像素值和上述图形层的像素值进行混合,并将混合后的结果存储到缓存区的对应位置,然后在屏幕上显示该缓存区中存储的像素值,解决了相关技术中屏幕内容的显示过程中计算量较大的问题,从而简化了计算过程,降低了设备功耗,提升了用户体验。
在步骤S102之前,终端设备初始化OSD处理的相关资源,将刷屏模式切换到OSD模式,然后接收用户发送的更新指令,并对该更新指令进行判断。根据该更新指令确定更新区域,当上述更新指令为视频层更新指令时,确定更新区域为视频层更新区域,当上述更新指令为图形层更新指令时,确定更新区域为图形层更新区域。该方式可以直接准确的确定更新区域,方便后续对更新区域内像素点的操作。
在确定更新区域之后,终端设备逐个读取该更新区域内的像素点,然后终端设备对每个读取到的像素点进行操作,再根据上述像素点的图形层的像素值配置上述像素点的图形层的透明度,该配置过程可以通过查找像素值与透明度的对应关系表来实现,因此,本实施例提供了一种优选实施方式,即在根据像素点的图形层的像素值配置该像素点的图形层的透明度之前,设置像素值与透明度的对应关系表。然后在进行透明度配置时,可以先读取像素点的图形层的像素值,在上述对应关系表中查询与图形层的像素值相对应的图形层的透明度,将查询到的透明度配置给像素点。该方式简单易操作,可提高计算效率。
上述透明度可以有三种取值:透明度的值大于0且小于255(即部分透明)、透明度的值为0(即全透)、透明度的值为255(即不透)。在更新区域为视频层更新区域或图形层更新区域时,如果透明度的值大于0,且小于255,其后续的操作都是一致的,即终端设备将上述像素点的视频层的像素值和上述图形层的像素值进行混合,在进行混合操作时,需要先确定视频层和图形层的格式相同。在现有技术中,没有OSD需求时,为节约内存空间,用户界面一般为RGB格式。在进行OSD刷屏显示时,需要将RGB数据转换为ARGB格式的图形层,同时为图形层的每个像素点配置透明度,而后进行混合操作。此过程需要新分配一个ARGB格式的缓冲区,大小为RGB缓冲区的2倍,由此可见,上述过程需要占用大量的内存空间。
在本实施例中,视频层和图形层的格式可以是占用字节较小的RGB或YUV,这样可以减少一个ARGB格式的图形层缓冲区,是内存占用减少为通用方式的一半左右,并且视频层和图形层的格式相同可以保证完成后续的像素值混合。
基于在透明度的值大于0,且小于255时的上述操作过程,本实施例提供了一种优选实施方式,判断像素点的视频层的格式与图形层的格式是否相同,如果不相同,终端设备将像素点的视频层的格式转换为与图形层相同的格式,其中,图形层的格式可以为RGB或YUV,然后根据转换后的视频层的格式对上述像素点的视频层的像素值和图形层的像素值进行混合,该混合操作可以为阿尔法混合。然后,将混合后的结果存储到缓存区(Buffer)的对应位置。当然,在确定视频层与图形层的格式相同之后,还要保证转换后的格式满足终端设备支持的输出格式,这样能够保证后续可以在屏幕上显示内容。
在更新区域为视频层更新区域时,如果透明度的值为0,则先将像素点的视频层的格式转换为终端设备支持的输出格式,然后将转换后的像素点的视频层的像素值存储到缓存区的对应位置;如果透明度的值为255,此时图形层没有更新,将像素点的图形层的像素值存储到缓存区的对应位置。该方式只对确定后的更新区域进行操作,减少了计算量,且简便易实现。
基于在更新区域为视频层更新区域,透明度为0或255的上述操作过程,本实施例提供了一种优选实施方式,先判断更新区域是否为视频层更新区域,如果是,再判断透明度的值是否为0或255,如果透明度的值为0,将像素点的视频层的格式转换为指定输出格式,并将转换后的像素点的视频层的像素值存储到缓存区的对应位置;如果透明度的值为255,将像素点的图形层的像素值存储到缓存区的对应位置。
在更新区域为图形层更新区域时,如果透明度的值为0,此时视频层没有更新,其格式也应该是终端设备支持的输出格式,则将像素点的视频层的像素值存储到缓存区的对应位置;如果透明度的值为255,将像素点的图形层的像素值存储到缓存区的对应位置。该方式只对确定后的更新区域进行操作,减少了计算量,且简便易实现。
基于在更新区域为图形层更新区域,透明度为0或255的上述操作过程,本实施例提供了一种优选实施方式,先判断更新区域是否为图形层更新区域,如果是,再判断透明度的值是否为0或255,如果透明度的值为0,将像素点的视频层的像素值存储到缓存区的对应位置;如果透明度的值为255,将像素点的图形层的像素值存储到缓存区的对应位置。
上述过程都是对于更新区域内的读取到的一个像素点进行的操作,在对一个像素点完成上述操作之后,再对下一个像素点进行上述操作,直至遍历完更新区域内的所有像素点,然后将缓存区中存储的像素值显示在屏幕上,最后释放OSD处理的相关资源,将OSD模式切换至普通模式。上述过程实现了对像素点的一次遍历,减少了计算量。
透明度的三种取值情况可以用关键色的概念加以区分,关键色是指图形层中需要全透或部分透明显示的颜色值。因此可以判断像素点的图形层的像素值是否为关键色,如果是关键色,则表示像素点的透明度为0或者大于0且小于255,这样可以相应的进行后续操作,如果不是关键色,则表示像素点的透明度为255,也可以相应的进行后续操作。前面已经对具体操作过程进行了详细描述,在此不再赘述。
下面结合优选实施例和附图对上述实施例的实现过程进行详细说明。
实施例一
图2是根据本发明实施例的终端设备的屏幕内容显示方法的流程图,如图2所示,该方法包括如下步骤(步骤S202-步骤S230):
步骤S202,初始化过程。初始化OSD处理的相关资源,申请缓存区,并将刷屏模式切换到OSD模式。
步骤S204,消息处理过程。对接收到的消息进行判断,如果接收到视频层更新指令,则执行步骤S206,如果接收到图形层更新指令,则执行步骤S228,如果接收到结束OSD的消息请求,则将OSD模式切换至普通模式。
步骤S206,逐个读取视频层更新区域内的像素点。
步骤S208,根据该像素点的图形层的像素值判断该像素点是否为关键色,如果是,执行步骤S212,如果不是,执行步骤S210。
步骤S210,如果更新区域内图形层的某像素点不是关键色,则其透明度的值应为255(即不透),此时图形层没有更新,将像素点的图形层的像素值存储到缓存区的对应位置,然后执行步骤S226。
步骤S212,如果更新区域内图形层的某像素点为关键色,判断其透明度的值是否为0,如果透明度的值为0,执行步骤S214。如果透明度的值不为0,执行步骤S220。
步骤S214,像素点对应的透明度的值为0(即全透),判断像素点的视频层的格式是否满足终端设备支持的格式,如果满足则不需要进行格式转换,执行步骤S218,如果不满足,执行步骤S216。
步骤S216,将像素点的视频层的格式转换为视频设备支持的输出格式,假设需要将像素点的视频层的格式(比如YUV)转换为指定输出格式(比如RGB),则转换公式如下所示:
R=Y+1.402(Cr-128)
G=Y-0.34414(Cb-128)-0.71414(Cr-128)
B=Y+1.772(Cb-128)
步骤S218,在格式转换完成之后,将转换后的像素点的视频层的像素值存储到缓存区的对应位置,然后执行步骤S226。
步骤S220,像素点对应的透明度的值大于0且小于255,判断像素点的视频层的格式与图形层的格式是否相同,如果相同,则执行步骤S224,如果不相同,执行步骤S222。
步骤S222,将像素点的视频层的格式转换为与图形层相同的格式,比如将YUV转换为RGB,前面已经对转换公式进行了描述,在此不再赘述。当然,此处转换后的格式应当满足视频设备的指定输出格式。
步骤S224,根据转换后的视频层的格式对像素点的视频层的像素值和图形层的像素值进行混合操作(比如alpha混合),该混合操作的计算方法如下所示:
R_out=(((R_g-R_v)*(alpha))>>8)+R_v
G_out=(((G_g-G_v)*(alpha))>>8)+G_v
B_out=(((B_g-R_v)*(alpha))>>8)+B_v
其中后缀g表示图形层,v表示视频层。
步骤S226,将缓存区中缓存的像素值显示到屏幕上,然后执行步骤S230。
步骤S228,按照对上述视频层更新区域内像素点的操作方式,对图形层更新区域内的像素点的操作进行相同操作,前面已经进行了详细描述,在此不再赘述。
步骤S230,释放OSD处理中的相关资源,将OSD模式切换至普通模式。
对应于上述屏幕内容的显示方法,本实施例提供了一种屏幕内容的显示装置,该装置用于实现上述实施例。图3是根据本发明实施例的屏幕内容的显示装置的结构框图,如图3所示,该装置包括:更新区域确定模块30、像素值混合模块32、存储模块34和像素值显示模块36。下面对该结构进行说明。
更新区域确定模块30,用于接收用户发送的更新指令,根据该更新指令确定更新区域;
像素值混合模块32,连接至更新区域确定模块30,用于逐个读取上述更新区域确定模块30确定的更新区域内的像素点,其中,该像素点的上层为图形层,下层为视频层;对于每个读取的像素点,根据该像素点的图形层的像素值配置该像素点的图形层的透明度,并在上述透明度的值大于0,且小于255时,将上述像素点的视频层的像素值和图形层的像素值进行混合;
存储模块34,连接至像素值混合模块32,用于将上述像素值混合模块32混合后的结果存储到缓存区的对应位置;
像素值显示模块36,连接至存储模块34,用于在屏幕上显示上述缓存区中存储的像素值。
通过上述装置,更新区域确定模块30根据接收到的更新指令确定更新区域,然后像素值混合模块32逐个读取该更新区域内的像素点,对于每个读取的像素点,配置该像素点的图形层的透明度,并在该透明度的值大于0,且小于255时,将上述像素点的视频层的像素值和上述图形层的像素值进行混合,并将混合后的结果存储到缓存区的对应位置,然后像素值显示模块36在屏幕上显示存储模块34在缓存区中存储的像素值,解决了相关技术中屏幕内容的显示过程中计算量较大的问题,从而简化了计算过程,降低了设备功耗,提升了用户体验。
在更新区域确定模块30接收用户发送的更新指令之前,终端设备初始化OSD处理的相关资源,将刷屏模式切换到OSD模式,然后接收用户发送的更新指令,并根据该更新指令确定更新区域。因此,本实施例提供了一种优选实施方式,上述更新区域确定模块30还可以包括:视频层更新区域确定单元,用于当上述更新指令为视频层更新指令时,确定更新区域为视频层更新区域;图形层更新区域确定单元,用于当上述更新指令为图形层更新指令时,确定更新区域为图形层更新区域。该方式可以直接准确的确定更新区域,方便后续对更新区域内像素点的操作。
在更新区域确定模块30确定更新区域之后,像素值混合模块32逐个读取该更新区域内的像素点,然后终端设备对每个读取到的像素点进行操作,再根据上述像素点的图形层的像素值配置上述像素点的图形层的透明度,该配置过程可以通过查找像素值与透明度的对应关系表来实现,因此,本实施例提供了一种优选实施方式,上述装置还可以包括:对应关系表设置模块,用于设置像素值与透明度的对应关系表;像素值混合模块32包括:透明度配置单元,用于读取上述像素点的图形层的像素值,在上述对应关系表中查询与图形层的像素值相对应的上述图形层的透明度,将查询到的上述透明度配置给上述像素点。该方式简单易操作。
前面已经对透明度的三种取值进行了介绍,在不同更新区域(比如视频更新区域或图形更新区域)内,在透明度取值不同时,对应的操作也不同。在更新区域为视频层更新区域或图形层更新区域时,如果透明度的值大于0,且小于255,其后续的操作都是一致的。图4是根据本发明实施例的屏幕内容的显示装置的具体结构框图,如图4所示,屏幕内容的显示装置除了包括图3所示的各个模块之外,上述像素值混合模块32还包括:格式判断单元320、转换单元322和混合单元324。下面对该结构进行说明。
格式判断单元320,用于判断像素点的视频层的格式与图形层的格式是否相同;
转换单元322,连接至格式判断单元320,用于在格式判断单元320的判断结果为否的情况下,将上述像素点的视频层的格式转换为与图形层相同的格式,其中,该图形层的格式可以为RGB或YUV;
混合单元324,连接至转换单元322,用于根据转换单元322转换后的视频层的格式对上述像素点的视频层的像素值和图形层的像素值进行混合。
在更新区域为视频层更新区域时,如果透明度的值为0或255,则上述像素值混合模块32还可以包括:第一区域判断单元,用于判断更新区域是否为视频层更新区域;第一透明度判断单元,用于在上述第一区域判断单元的判断结果为是的情况下,判断透明度的值是否为0或255;第一存储单元,用于在上述透明度的值为0时,将像素点的视频层的格式转换为指定输出格式,并将转换后的上述像素点的视频层的像素值存储到缓存区的对应位置;第二存储单元,用于在上述透明度的值为255时,将上述像素点的图形层的像素值存储到上述缓存区的对应位置。
在更新区域为图形层更新区域时,如果透明度的值为0或255,则上述像素值混合模块32还可以包括:第二区域判断单元,用于判断更新区域是否为图形层更新区域;第二透明度判断单元,用于在上述第二区域判断单元的判断结果为是的情况下,判断透明度的值是否为0或255;第三存储单元,用于在上述透明度的值为0时,将像素点的视频层的像素值存储到缓存区的对应位置;第四存储单元,用于在上述透明度的值为255时,将上述像素点的图形层的像素值存储到上述缓存区的对应位置。
上述屏幕内容的显示装置的操作过程都是对于更新区域内的读取到的一个像素点进行的操作,在对一个像素点完成上述操作之后,再对下一个像素点进行上述操作,直至遍历完更新区域内的所有像素点,然后将缓存区中存储的像素值显示在屏幕上,最后释放OSD处理的相关资源,将OSD模式切换至普通模式。上述过程实现了对像素点的一次遍历,减少了计算量。
透明度的三种取值情况可以用关键色的概念加以区分,可以根据像素点的图形层的像素值是否为关键色进行后续操作,前面已经进行了介绍,在此不再赘述。
图5是根据本发明实施例的屏幕内容的显示装置的另一种结构框图,如图5所示,该装置包括视频层数据生成模块50、图形层数据生成模块52、OSD处理模块54和刷屏显示模块56。下面对该结构进行说明。
视频层数据生成模块50,用于生成视频层数据(即视屏层更新指令)。该模块是一个虚拟模块,在实际应用场景下该模块可由视频播放类业务的视频解码输出模块充当,也可由拍照、摄像等模块的视频采集输出模块充当,也可以由视频播放类业务,视频录制/预览类业务的视频数据采集处理模块充当,该模块将从解码器或摄像头等视频源所输出的视频数据按照输出要求,处理为特定的视频数据格式和指定的宽高,提供给OSD处理模块54作为视频层数据源。
图形层数据生成模块52,用于产生图形层数据(即图形层更新指令)。该模块也是一个虚拟模块,在实际应用场景下该模块可以由用户界面交互模块充当,该模块将用户界面的图标、菜单、按钮、文字等界面显示信息按照输出要求提供给OSD处理模块,同时还要提供给OSD处理模块一个关键色和alpha透明度的对应表,以供OSD模块在进行alpha混合时根据关键色获取alpha透明度。
OSD处理模块54的功能相当于上述图3中的像素值混合模块32和存储模块34,该模块负责在进行OSD处理操作时图形层的alpha透明度配置、色系转换和图像数据的alpha混合。本模块根据图形层数据生成模块所传入的数据,查询图形层的各个像素点是否为关键色,如果不是关键色,则将该像素点直接拷贝到输出Buffer对应的位置上,如果是关键色,则首先从表中查询其对应的透明度,其次将视频层对应像素点的格式转换为RGB色系,最后将图形层和视频层对应像素点进行alpha混合,并将混合结果存储到输出Buffer的对应位置。该模块在确定图形层更新区域或视频层更新区域之后,根据关键色进行色系转换,再进行alpha混合,而后将处理得到数据提供给刷屏显示模块56进行显示;
刷屏显示模块56的功能相当于上述图3中的像素值显示模块36,该模块负责将OSD处理后的图像数据刷新显示到便携式终端的显示屏上。
从以上的描述中可以看出,本发明提供的屏幕内容的显示方法根据图形层的像素值,同时进行alpha透明度的配置和alpha混合,只需一次遍历更新区域内的像素点即可完成OSD处理,可以减少一个ARGB格式的图形层缓冲区,使内存占用减少为通用方式的一半左右,并且减少了alpha混合的计算量,降低了成本,减少了功耗,提高了用户响应,同时该方法支持图形层多透明度设置,对改善屏幕显示效果、提高用户体验、降低设备功耗等方面具有重要价值。
显然,本领域的技术人员应该明白,上述的本发明的各模块或各步骤可以用通用的计算装置来实现,它们可以集中在单个的计算装置上,或者分布在多个计算装置所组成的网络上,可选地,它们可以用计算装置可执行的程序代码来实现,从而,可以将它们存储在存储装置中由计算装置来执行,并且在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤,或者将它们分别制作成各个集成电路模块,或者将它们中的多个模块或步骤制作成单个集成电路模块来实现。这样,本发明不限制于任何特定的硬件和软件结合。
以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (13)
1.一种屏幕内容的显示方法,其特征在于,包括:
接收用户发送的更新指令,根据所述更新指令确定更新区域;
逐个读取所述更新区域内的像素点,其中,所述像素点的上层为图形层,下层为视频层;
对于每个读取的像素点,根据所述像素点的图形层的像素值配置所述像素点的图形层的透明度,并在所述透明度的值大于0,且小于255时,将所述像素点的视频层的像素值和所述图形层的像素值进行混合,并将混合后的结果存储到缓存区的对应位置;
在屏幕上显示所述缓存区中存储的像素值。
2.根据权利要求1所述的方法,其特征在于,将所述像素点的视频层的像素值和所述图形层的像素值进行混合包括:
判断所述像素点的视频层的格式与所述图形层的格式是否相同;
如果否,将所述像素点的视频层的格式转换为与所述图形层相同的格式,其中,所述图形层的格式为红绿蓝RGB色彩格式或亮度色差YUV格式;
根据转换后的所述视频层的格式对所述像素点的视频层的像素值和所述图形层的像素值进行混合。
3.根据权利要求1所述的方法,其特征在于,根据所述更新指令确定更新区域包括:
当所述更新指令为视频层更新指令时,确定更新区域为视频层更新区域;
当所述更新指令为图形层更新指令时,确定更新区域为图形层更新区域。
4.根据权利要求3所述的方法,其特征在于,根据所述像素点的图形层的像素值配置所述像素点的图形层的透明度之后,所述方法还包括:
判断所述更新区域是否为所述视频层更新区域;
如果是,判断所述透明度的值是否为0或255;
如果所述透明度的值为0,将所述像素点的视频层的格式转换为指定输出格式,并将转换后的所述像素点的视频层的像素值存储到所述缓存区的对应位置;
如果所述透明度的值为255,将所述像素点的图形层的像素值存储到所述缓存区的对应位置。
5.根据权利要求3所述的方法,其特征在于,根据所述像素点的图形层的像素值配置所述像素点的图形层的透明度之后,所述方法还包括:
判断所述更新区域是否为所述图形层更新区域;
如果是,判断所述透明度的值是否为0或255;
如果所述透明度的值为0,将所述像素点的视频层的像素值存储到所述缓存区的对应位置;
如果所述透明度的值为255,将所述像素点的图形层的像素值存储到所述缓存区的对应位置。
6.根据权利要求1所述的方法,其特征在于,
根据所述像素点的图形层的像素值配置所述像素点的图形层的透明度之前,所述方法还包括:设置像素值与透明度的对应关系表;
根据所述像素点的图形层的像素值配置所述像素点的图形层的透明度包括:读取所述像素点的图形层的像素值,在所述对应关系表中查询与所述图形层的像素值相对应的所述图形层的透明度,将查询到的所述透明度配置给所述像素点。
7.根据权利要求1至6任一项所述的方法,其特征在于,所述混合为阿尔法混合。
8.一种屏幕内容的显示装置,其特征在于,包括:
更新区域确定模块,用于接收用户发送的更新指令,根据所述更新指令确定更新区域;
像素值混合模块,用于逐个读取所述更新区域确定模块确定的所述更新区域内的像素点,其中,所述像素点的上层为图形层,下层为视频层;对于每个读取的像素点,根据所述像素点的图形层的像素值配置所述像素点的图形层的透明度,并在所述透明度的值大于0,且小于255时,将所述像素点的视频层的像素值和所述图形层的像素值进行混合;
存储模块,用于将所述像素值混合模块混合后的结果存储到缓存区的对应位置;
像素值显示模块,用于在屏幕上显示所述缓存区中存储的像素值。
9.根据权利要求8所述的装置,其特征在于,所述像素值混合模块包括:
格式判断单元,用于判断所述像素点的视频层的格式与所述图形层的格式是否相同;
转换单元,用于在所述格式判断单元的判断结果为否的情况下,将所述像素点的视频层的格式转换为与所述图形层相同的格式,其中,所述图形层的格式为红绿蓝RGB色彩格式或亮度色差YUV格式;
混合单元,用于根据所述转换单元转换后的所述视频层的格式对所述像素点的视频层的像素值和所述图形层的像素值进行混合。
10.根据权利要求8所述的装置,其特征在于,所述更新区域确定模块包括:
视频层更新区域确定单元,用于当所述更新指令为视频层更新指令时,确定更新区域为视频层更新区域;
图形层更新区域确定单元,用于当所述更新指令为图形层更新指令时,确定更新区域为图形层更新区域。
11.根据权利要求10所述的装置,其特征在于,所述像素值混合模块还包括:
第一区域判断单元,用于判断所述更新区域是否为所述视频层更新区域;
第一透明度判断单元,用于在所述第一区域判断单元的判断结果为是的情况下,判断所述透明度的值是否为0或255;
第一存储单元,用于在所述透明度的值为0时,将所述像素点的视频层的格式转换为指定输出格式,并将转换后的所述像素点的视频层的像素值存储到所述缓存区的对应位置;
第二存储单元,用于在所述透明度的值为255时,将所述像素点的图形层的像素值存储到所述缓存区的对应位置。
12.根据权利要求10所述的装置,其特征在于,所述像素值混合模块还包括:
第二区域判断单元,用于判断所述更新区域是否为所述图形层更新区域;
第二透明度判断单元,用于在所述第二区域判断单元的判断结果为是的情况下,判断所述透明度的值是否为0或255;
第三存储单元,用于在所述透明度的值为0时,将所述像素点的视频层的像素值存储到所述缓存区的对应位置;
第四存储单元,用于在所述透明度的值为255时,将所述像素点的图形层的像素值存储到所述缓存区的对应位置。
13.根据权利要求8所述的装置,其特征在于,
所述装置还包括:对应关系表设置模块,用于设置像素值与透明度的对应关系表;
所述像素值混合模块包括:透明度配置单元,用于读取所述像素点的图形层的像素值,在所述对应关系表中查询与所述图形层的像素值相对应的所述图形层的透明度,将查询到的所述透明度配置给所述像素点。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201210036704.5A CN103259989B (zh) | 2012-02-17 | 2012-02-17 | 屏幕内容的显示方法及装置 |
PCT/CN2012/076783 WO2013120331A1 (zh) | 2012-02-17 | 2012-06-12 | 屏幕内容的显示方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201210036704.5A CN103259989B (zh) | 2012-02-17 | 2012-02-17 | 屏幕内容的显示方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN103259989A true CN103259989A (zh) | 2013-08-21 |
CN103259989B CN103259989B (zh) | 2018-08-14 |
Family
ID=48963657
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201210036704.5A Active CN103259989B (zh) | 2012-02-17 | 2012-02-17 | 屏幕内容的显示方法及装置 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN103259989B (zh) |
WO (1) | WO2013120331A1 (zh) |
Cited By (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103986935A (zh) * | 2014-04-30 | 2014-08-13 | 华为技术有限公司 | 编码方法、编码器、屏幕共享设备及系统 |
CN105390109A (zh) * | 2015-12-07 | 2016-03-09 | 惠州Tcl移动通信有限公司 | 驱动显示方法以及液晶显示装置 |
CN105516657A (zh) * | 2015-11-30 | 2016-04-20 | 浙江大华技术股份有限公司 | 对显示设备所显示内容进行操作的方法、装置和显示设备 |
CN106303285A (zh) * | 2015-05-20 | 2017-01-04 | 深圳市中兴微电子技术有限公司 | 一种多媒体信息的输出方法及装置 |
CN106569757A (zh) * | 2015-10-08 | 2017-04-19 | 青岛海信电器股份有限公司 | 一种更改图形界面文本颜色的方法和装置 |
WO2018076898A1 (zh) * | 2016-10-28 | 2018-05-03 | 深圳市中兴微电子技术有限公司 | 一种信息输出显示方法、装置及计算机可读存储介质 |
CN109413232A (zh) * | 2018-10-19 | 2019-03-01 | 北京小米移动软件有限公司 | 屏幕显示方法及装置 |
CN110447233A (zh) * | 2017-03-08 | 2019-11-12 | 三星电子株式会社 | 用于识别用户界面的显示设备及其控制方法 |
CN110719517A (zh) * | 2018-07-11 | 2020-01-21 | 视联动力信息技术股份有限公司 | 一种视频流显示方法及装置 |
CN112309341A (zh) * | 2019-07-23 | 2021-02-02 | 三星电子株式会社 | 用于混合图像数据的层的电子设备 |
CN112616083A (zh) * | 2020-12-11 | 2021-04-06 | 湖南国科微电子股份有限公司 | 一种视频的显示层叠加处理方法、装置、设备及存储介质 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1607819A (zh) * | 2003-09-30 | 2005-04-20 | 索尼株式会社 | 图像混合方法和混合图像数据生成装置 |
CN1988624A (zh) * | 2005-12-22 | 2007-06-27 | 三星电子株式会社 | 图像处理装置和方法 |
CN101119454A (zh) * | 2006-08-02 | 2008-02-06 | 深圳Tcl新技术有限公司 | 一种电视功能界面透明显示的方法及其装置 |
KR20080025549A (ko) * | 2006-09-18 | 2008-03-21 | 엘지전자 주식회사 | 오에스디에서의 투명정보 처리장치 및 방법 |
CN101908216A (zh) * | 2010-07-20 | 2010-12-08 | 中兴通讯股份有限公司 | 一种实现矢量字体的方法及装置 |
-
2012
- 2012-02-17 CN CN201210036704.5A patent/CN103259989B/zh active Active
- 2012-06-12 WO PCT/CN2012/076783 patent/WO2013120331A1/zh active Application Filing
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1607819A (zh) * | 2003-09-30 | 2005-04-20 | 索尼株式会社 | 图像混合方法和混合图像数据生成装置 |
CN1988624A (zh) * | 2005-12-22 | 2007-06-27 | 三星电子株式会社 | 图像处理装置和方法 |
CN101119454A (zh) * | 2006-08-02 | 2008-02-06 | 深圳Tcl新技术有限公司 | 一种电视功能界面透明显示的方法及其装置 |
KR20080025549A (ko) * | 2006-09-18 | 2008-03-21 | 엘지전자 주식회사 | 오에스디에서의 투명정보 처리장치 및 방법 |
CN101908216A (zh) * | 2010-07-20 | 2010-12-08 | 中兴通讯股份有限公司 | 一种实现矢量字体的方法及装置 |
Cited By (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103986935A (zh) * | 2014-04-30 | 2014-08-13 | 华为技术有限公司 | 编码方法、编码器、屏幕共享设备及系统 |
CN106303285A (zh) * | 2015-05-20 | 2017-01-04 | 深圳市中兴微电子技术有限公司 | 一种多媒体信息的输出方法及装置 |
CN106569757A (zh) * | 2015-10-08 | 2017-04-19 | 青岛海信电器股份有限公司 | 一种更改图形界面文本颜色的方法和装置 |
CN105516657A (zh) * | 2015-11-30 | 2016-04-20 | 浙江大华技术股份有限公司 | 对显示设备所显示内容进行操作的方法、装置和显示设备 |
CN105390109A (zh) * | 2015-12-07 | 2016-03-09 | 惠州Tcl移动通信有限公司 | 驱动显示方法以及液晶显示装置 |
CN108024133A (zh) * | 2016-10-28 | 2018-05-11 | 深圳市中兴微电子技术有限公司 | 一种信息输出显示方法及装置 |
WO2018076898A1 (zh) * | 2016-10-28 | 2018-05-03 | 深圳市中兴微电子技术有限公司 | 一种信息输出显示方法、装置及计算机可读存储介质 |
CN110447233A (zh) * | 2017-03-08 | 2019-11-12 | 三星电子株式会社 | 用于识别用户界面的显示设备及其控制方法 |
CN110447233B (zh) * | 2017-03-08 | 2022-01-25 | 三星电子株式会社 | 用于识别用户界面的显示设备及其控制方法 |
CN110719517A (zh) * | 2018-07-11 | 2020-01-21 | 视联动力信息技术股份有限公司 | 一种视频流显示方法及装置 |
CN110719517B (zh) * | 2018-07-11 | 2021-08-13 | 视联动力信息技术股份有限公司 | 一种视频流显示方法及装置 |
CN109413232A (zh) * | 2018-10-19 | 2019-03-01 | 北京小米移动软件有限公司 | 屏幕显示方法及装置 |
CN112309341A (zh) * | 2019-07-23 | 2021-02-02 | 三星电子株式会社 | 用于混合图像数据的层的电子设备 |
CN112309341B (zh) * | 2019-07-23 | 2023-02-28 | 三星电子株式会社 | 用于混合图像数据的层的电子设备 |
CN112616083A (zh) * | 2020-12-11 | 2021-04-06 | 湖南国科微电子股份有限公司 | 一种视频的显示层叠加处理方法、装置、设备及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
WO2013120331A1 (zh) | 2013-08-22 |
CN103259989B (zh) | 2018-08-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103259989A (zh) | 屏幕内容的显示方法及装置 | |
CN107770618B (zh) | 一种图像处理方法、装置及存储介质 | |
US20120120320A1 (en) | System and method for on-the-fly key color generation | |
CN105324989A (zh) | 传输终端、程序、图像显示方法和传输系统 | |
CN102542949B (zh) | 分屏显示的调度方法以及系统 | |
CN110675872A (zh) | 基于多系统显示设备的语音交互方法及多系统显示设备 | |
CN111857502B (zh) | 一种图像显示方法及显示设备 | |
CN111899175A (zh) | 图像转换方法及显示设备 | |
CN114079819A (zh) | 一种内容显示方法及显示设备 | |
CN112947905B (zh) | 一种图片加载方法、装置 | |
CN114035877B (zh) | 界面编辑方法、装置、存储介质及电子设备 | |
CN111954059A (zh) | 屏保的展示方法及显示设备 | |
CN110149550A (zh) | 一种图像数据处理方法和装置 | |
CN115033195A (zh) | 画面显示方法、装置、设备、存储介质及程序产品 | |
CN111930233B (zh) | 一种全景视频图像显示方法及显示设备 | |
CN112783392A (zh) | 一种息屏显示方法及装置 | |
CN101252618B (zh) | 一种实现画中画在手机流媒体中应用的方法 | |
CN103297516A (zh) | 一种应用的多类型提供方法、系统及装置 | |
US20240005891A1 (en) | Mirroring method, apparatus, and system | |
CN111158826B (zh) | 一种界面皮肤生成方法、装置、设备及存储介质 | |
KR20160048430A (ko) | 디지털 디바이스 및 디지털 디바이스에서 데이터 처리 방법 | |
CN108933955A (zh) | 一种绘制方法及装置 | |
CN111143014B (zh) | 一种拼墙系统场景缩略图的生成方法及系统 | |
CN109819334A (zh) | 显示设备及其菜单显示方法 | |
CN114415864B (zh) | 触摸区域的确定方法与显示设备 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |