本发明涉及通信及显示技术领域,具体涉及一种终端及其信息显示方法。
背景技术:
目前,通信终端信息交互形式都是通过对话或单条信件的形式在通信终端上,这两种信息交互形式使用不方便,信息的实时显示性不足。
现有技术中弹幕是指一种在观看视频时,大量以字幕形式呈现的评论与视频同在一个画面的现象。在视频上方大量飘过的评论如密集炮弹一般,故得名弹幕。弹幕会随着视频的播放实时在视频上呈现,这样观看者在观看该视频时能够看到其他观看者和自己发送的弹幕。
技术实现要素:
本发明提供一种终端及其信息显示方法,实现通过弹幕的形式将终端需要输出的文字或图形信息进行显示。
为实现上述目的,本发明提供一种终端的信息显示方法,其特点是,该信息显示方法包含:
终端将文字或图形信息传输至终端内的弹幕系统;
弹幕系统将文字或图形信息转换为弹幕信息;
终端显示输出弹幕信息。
如权利要求1所述的终端的信息显示方法,其特征在于,所述终端处于锁屏状态下的信息显示方法包含:
终端处于锁屏状态;
终端将接收到的文字或图形信息传输至弹幕系统;
弹幕系统将文字或图形信息转换为弹幕信息;
终端在其锁屏界面上显示弹幕信息。
上述终端处于锁屏状态下,弹幕系统通过调整弹幕的弹幕绘制频率,控制终端的CPU消耗限制在终端处于锁屏状态所限定的CPU消耗范围内。
上述显示方法还包含:
弹幕系统在显示弹幕前对调整后的弹幕测算其一帧的CPU消耗;
根据CPU消耗得出降帧频率。
上述信息显示方法包含:
弹幕系统根据终端的应用程序编程接口或CPU消耗调整弹幕的弹幕字号大小、滚动速度和弹幕密集度;
终端显示经过调整后的弹幕信息。
上述弹幕系统调整弹幕字号大小的方法包含:
弹幕系统通过终端的应用程序编程接口获取设备屏幕密度和屏幕分辨率;
根据设备屏幕密度获得全屏下最大弹幕占用行数,由屏幕分辨率获得分辨率高度,根据式(1)获得每行弹幕的行高:
每行弹幕的行高=分辨率高度/全屏下最大弹幕占用行数 (1);
每行弹幕的行高通过带入字体变量得到最终显示的标准字号的缩放基准值;
根据式(2)、(3)获得最终显示的弹幕字号大小:
缩放比例=缩放基准值/弹幕原始数据预设的标准字号的字体像素大小(2)
最终显示的弹幕字号大小=当前设定的字号大小*缩放比例 (3)。
上述弹幕系统调整弹幕滚动速度的方法包含:
弹幕系统通过终端的应用程序编程接口获取显示区域尺寸;
最终显示的弹幕字号大小和弹幕文本长度通过带入字体变量得到每条弹幕的弹幕显示占用尺寸,弹幕显示占用尺寸包含弹幕显示占用高度和弹幕显示占用宽度;
预设滚动速度基准值,根据式(4)、(5)获得弹幕滚动显示时间和滚动速度:
弹幕滚动显示时间=显示区域尺寸的宽度/滚动速度基准值 (4)
滚动速度=(显示区域尺寸的宽度+弹幕显示占用宽度)/弹幕滚动显示时间(5)。
上述弹幕系统调整弹幕密集度的方法包含:
弹幕系统通过终端的应用程序编程接口获取设备屏幕密度;
根据设备屏幕密度得到同屏弹幕条数的范围;
同屏弹幕条数的范围中取同屏弹幕最大条数,以同屏弹幕最大条数为基准得到弹幕密集度。
一种适用于上述信息显示方法的终端,其特点是,该终端包含:
弹幕系统,其接收终端需要显示的文字或图形信息转换为弹幕信息;
锁屏控制模块,当达到终端预设的无操作时间阈值或接收带外界的锁屏控制,则输出锁屏指令;
显示模块,其输入端连接弹幕系统和锁屏控制模块,接收锁屏指令进入锁屏状态后,显示弹幕系统输出的弹幕信息。
上述的弹幕系统还包含弹幕调整模块,该弹幕调整模块包含:
应用程序编程接口信息采集模块,其输入端连接终端的应用程序编程接口,采集应用程序编程接口信息;
信息采集模块,其输入端连接应用程序编程接口信息采集模块,采集屏幕分辨率、设备屏幕密度、显示区域尺寸;
弹幕信息调整模块,输入端连接信息采集模块,获取最终显示的弹幕字号大小、滚动速度和弹幕密集度,并对弹幕进行调整。
本发明的一种终端及其信息显示方法和现有技术的信息显示方法相比,其优点在于,本发明将终端需要显示输出的文字或图形信息通过弹幕的形式显示,提供了在终端上除了对话或邮件形式以外的一种信息显示的新方式;
本发明通过获取各个显示设备平台的平台应用程序编程接口,获取设备硬件相关的基础元数据,调整弹幕在不同终端上的滚动速度、最终显示的弹幕字号大小、弹幕密集度,使用户在设备上看到最优的弹幕显示效果,并且实现在终端的锁屏界面上显示弹幕,便于用于观看弹幕。
附图说明
图1为本发明终端的信息显示方法的方法流程图;
图2为本发明终端的框图。
具体实施方式
以下结合附图进一步说明本发明的具体实施例。
如图1所示,为一种终端在锁屏状态下的信息显示方法的实施例,该显示方法具体包含以下步骤:
S1、终端提高弹幕显示的权限,实际操作方法可以如下:
进入后台后打开后台task模式;空放一端空的音乐;在后台情况下维护长链接;通过长链接获得控制指令;通过长链接获得弹幕输出背景。
S2、弹幕系统根据终端的应用程序编程接口确定弹幕的弹幕字号大小、滚动速度和弹幕密集度。
S2.1、弹幕系统根据设备屏幕密度和屏幕分辨率获取的最终显示的弹幕字号大小。
S2.1.1、弹幕系统根据终端的应用程序编程接口获取设备屏幕密度和屏幕分辨率。
S2.1.2、弹幕系统根据设备屏幕密度获得全屏下最大弹幕占用行数,由屏幕分辨率获得分辨率高度,根据式(1)获得每行弹幕的行高:
每行弹幕的行高=分辨率高度/全屏下最大弹幕占用行数 (1)。
其中,弹幕系统或显示设备平台预设有设备屏幕密度与全屏下最大弹幕占用行数的关系。
S2.1.3、每行弹幕的行高通过带入字体变量得到最终显示的标准字号的缩放基准值。
其中,字体变量包含:字符基准线(Baseline)之上至字符最高处的距离(Ascent)、字符基准线之下至字符最低处的距离(Descent)和字符间的行间距(Leading),得到缩放基准值的关系式如下:
Leading=每行弹幕的行高-(Ascent+Descent)
font size=每行弹幕的行高-Leading/2
font size为弹幕字号的基准大小,并定义该弹幕字号的基准大小为最终显示的标准字号的缩放基准值。
S2.1.4、弹幕系统或显示设备平台预设定弹幕原始数据预设的标准字号的字体像素大小,代表希望显示的弹幕像素大小,但这个预定义大小不适合所有显示屏幕(过大或过小),所以需要结合上述得到的缩放基准值,根据式(2)得到缩放比例。结合缩放比例和当前设定的字号大小,根据式(3)获得最终显示的弹幕字号大小:
缩放比例=缩放基准值/弹幕原始数据预设的标准字号的字体像素大小(2)
最终显示的弹幕字号大小=当前设定的字号大小*缩放比例 (3)。
S2.2、弹幕系统根据最终显示的弹幕字号大小和显示区域尺寸获取滚动速度。
S2.2.1、弹幕系统根据其应用程序编程接口获取显示区域尺寸。
S2.2.2、最终显示的弹幕字号大小和弹幕文本长度(弹幕内容的文字长度)通过带入字体变量得到每条弹幕的弹幕显示占用尺寸,弹幕显示占用尺寸包含弹幕显示占用高度和弹幕显示占用宽度。
其中,字体变量包含:字符基准线(Baseline)之上至字符最高处的距离(Ascent)、字符基准线之下至字符最低处的距离(Descent)和字符间的行间距(Leading)。
S2.2.3、预设滚动速度基准值,结合显示区域尺寸的宽度,根据式(4)获得弹幕滚动显示时间。然后根据弹幕显示占用宽度、显示区域尺寸的宽度和弹幕滚动显示时间,根据式(5)获得弹幕滚动显示时间和滚动速度:
弹幕滚动显示时间=显示区域尺寸的宽度/滚动速度基准值 (4)
滚动速度=(显示区域尺寸的宽度+弹幕显示占用宽度)/弹幕滚动显示时间(5)。
S2.3、弹幕系统根据设备屏幕密度获取弹幕密集度。
S2.3.1、弹幕系统根据其应用程序编程接口获取设备屏幕密度。
S2.3.2、根据预设的设备屏幕密度与同屏弹幕条数的范围的关系,由设备屏幕密度得到同屏弹幕条数的范围。本实施例中可通过表1获得。
S2.3.3、同屏弹幕条数的范围中取同屏弹幕最大条数,以同屏弹幕最大条数为基准得到弹幕密集度。
另外,弹幕系统还需要根据弹幕密集度动态调整滚动速度,弹幕滚动时间与弹幕密集度的关系呈反比,即滚动速度与弹幕密集度的关系呈正比。
S3、终端处于锁屏状态下,终端将文字或图形信息传输至终端内的弹幕系统,弹幕系统将文字或图形信息转换为弹幕信息并输出。
终端接受所有需要输出的弹幕。维护一个输出带弹幕的连续帧FIFO输出队列。当队列超过60帧后对先入队列抛出。在收到弹幕后模拟时间轴轨从队列中获取当前需要展示的弹幕。获得当前需要渲染的输出帧的背景获得尺寸。通过当前的消耗计算出当前需要压缩率的比例。通过内存弹幕缓存池寻找渲染位图。在受到输出队列指示需要渲染(push)后,如果为指导缓存的位图,从模拟弹幕池中找到相应弹幕通过Coregraphy软件进行绘制。把绘制完的弹幕进行内存缓存。获得本次操作的消耗,来动态优化后面输出的比率。
S4、在终端处于锁屏状态下,弹幕系统通过调整弹幕的弹幕绘制频率,控制终端的CPU消耗限制在终端处于锁屏状态所限定的CPU消耗范围内。例如终端在显示弹幕前对调整后的弹幕测算其一帧的CPU消耗,并根据CPU消耗得出降帧频率,优化弹幕帧率。
S5、终端在锁屏界面显示输出调整后的弹幕信息。
如图2所示,本发明还公开了一种适用于上述信息显示方法的终端,该终端包含:弹幕系统21、锁屏控制模块22和显示模块23。
弹幕系统21用于接收终端需要显示的文字或图形信息转换为弹幕信息。
弹幕系统21中包含有弹幕调整模块24,弹幕调整模块24输入端连接终端的应用程序编程接口,输出最终显示的弹幕字号大小、滚动速度和弹幕密集度的弹幕调整指令。
具体的,弹幕调整模块24包含:应用程序编程接口信息采集模块241、终端信息采集模块242和弹幕信息调整模块243。
应用程序编程接口信息采集模块241输入端连接终端的应用程序编程接口,采集应用程序编程接口信息。
信息采集模块242输入端连接应用程序编程接口信息采集模块,采集屏幕分辨率、设备屏幕密度和显示区域尺寸。
弹幕信息调整模块243输入端连接信息采集模块,根据屏幕分辨率、设备屏幕密度和显示区域尺寸获取最终显示的弹幕字号大小、滚动速度和弹幕密集度,并输出弹幕调整指令。
锁屏控制模块22用于当达到终端预设的无操作时间阈值,则输出锁屏指令。
显示模块23输入端连接弹幕系统21和锁屏控制模块22,接收锁屏指令进入锁屏状态后,显示弹幕系统21输出的弹幕信息。
进一步的, 终端可以是视频设备或通信显示设备,终端还可以是移动终端。
尽管本发明的内容已经通过上述优选实施例作了详细介绍,但应当认识到上述的描述不应被认为是对本发明的限制。在本领域技术人员阅读了上述内容后,对于本发明的多种修改和替代都将是显而易见的。因此,本发明的保护范围应由所附的权利要求来限定。