CN106210853B - 弹幕显示系统及其cpu消耗控制方法 - Google Patents

弹幕显示系统及其cpu消耗控制方法 Download PDF

Info

Publication number
CN106210853B
CN106210853B CN201610535152.0A CN201610535152A CN106210853B CN 106210853 B CN106210853 B CN 106210853B CN 201610535152 A CN201610535152 A CN 201610535152A CN 106210853 B CN106210853 B CN 106210853B
Authority
CN
China
Prior art keywords
barrage
video equipment
consumption
cpu
rendering
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.)
Active
Application number
CN201610535152.0A
Other languages
English (en)
Other versions
CN106210853A (zh
Inventor
张忻正
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Shanghai Huandian Information Technology Co Ltd
Original Assignee
Shanghai Huandian Information Technology Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Shanghai Huandian Information Technology Co Ltd filed Critical Shanghai Huandian Information Technology Co Ltd
Priority to CN201610535152.0A priority Critical patent/CN106210853B/zh
Publication of CN106210853A publication Critical patent/CN106210853A/zh
Application granted granted Critical
Publication of CN106210853B publication Critical patent/CN106210853B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/431Generation of visual interfaces for content selection or interaction; Content or additional data rendering
    • H04N21/4312Generation of visual interfaces for content selection or interaction; Content or additional data rendering involving specific graphical features, e.g. screen layout, special fonts or colors, blinking icons, highlights or animations
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • G06F1/3203Power management, i.e. event-based initiation of a power-saving mode
    • G06F1/3206Monitoring of events, devices or parameters that trigger a change in power modality
    • G06F1/3215Monitoring of peripheral devices
    • G06F1/3218Monitoring of peripheral devices of display devices
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/443OS processes, e.g. booting an STB, implementing a Java virtual machine in an STB or power management in an STB
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/47End-user applications
    • H04N21/475End-user interface for inputting end-user data, e.g. personal identification number [PIN], preference data
    • H04N21/4756End-user interface for inputting end-user data, e.g. personal identification number [PIN], preference data for rating content, e.g. scoring a recommended movie

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Theoretical Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Controls And Circuits For Display Device (AREA)

Abstract

本发明公开一种用于弹幕显示的CPU消耗控制方法,该控制方法包含:当视频设备的CPU消耗大于预设的CPU消耗阈值,降低弹幕绘制频率,根据式(1)视频设备渲染弹幕每帧所需的消耗降低;当视频设备的CPU消耗小于等于预设的CPU消耗阈值,提高弹幕绘制频率。本发明通过获取各个显示设备平台的平台应用程序编程接口,获取设备硬件相关的基础元数据,从而获取视频设备的CPU消耗,根据CPU消耗调整弹幕在不同视频设备上的预值帧率和弹幕绘制频率,实现在视频设备的锁屏界面上显示弹幕,便于用于观看弹幕,并且还能使用户在设备处于锁屏状态下能看到最优的弹幕显示效果。

Description

弹幕显示系统及其CPU消耗控制方法
技术领域
本发明涉及互联网视频技术领域,具体涉及一种弹幕显示系统及其CPU消耗控制方法。
背景技术
弹幕是指一种在观看视频时,大量以字幕形式呈现的评论与视频同在一个画面的现象。在视频上方大量飘过的评论如密集炮弹一般,故得名弹幕。弹幕会随着视频的播放实时在视频上呈现,这样观看者在观看该视频时能够看到其他观看者和自己发送的弹幕。
视频设备在锁屏状态下系统设置CPU消耗能达到的上限低于视频设备正常使用状态,从而提高了在锁屏状态下弹幕显示所占用的CPU消耗的控制要求,对弹幕显示造成困难。
发明内容
本发明提供一种弹幕显示系统及其CPU消耗控制方法,根据视频设备硬件相关信息及实时显示情况控制CPU消耗,实现在视频设备CPU消耗上限较低的锁屏状态下最优的弹幕显示效果。
为实现上述目的,本发明提供一种用于弹幕显示的CPU消耗控制方法,其特点是,该控制方法包含:
当视频设备的CPU消耗大于预设的CPU消耗阈值,降低弹幕绘制频率,根据式(1)视频设备渲染弹幕每帧所需的消耗降低;
当视频设备的CPU消耗小于等于预设的CPU消耗阈值,提高弹幕绘制频率,根据式(1)视频设备渲染弹幕每帧所需的消耗提高;
式(1)如下:
(a/c)*(d/f)*g=弹幕渲染每帧所需的消耗 (1)
其中,a为弹幕显示区域高度,c为弹幕密集度,d为弹幕滚动时间,f为弹幕绘制频率,g为渲染弹幕的时间;弹幕渲染每帧所需的消耗与CPU消耗成正比。
上述控制方法包含:
当视频设备渲染弹幕每帧所需的消耗降低,视频设备的显示模块处于不饱和状态,视频设备显示渲染后弹幕每帧所需的消耗降低,视频设备根据式(2)降低视频设备的预值帧率;
当视频设备渲染弹幕每帧所需的消耗提高,视频设备的显示模块处于过饱和状态,视频设备显示渲染后弹幕每帧所需的消耗提高,视频设备根据式(2)提高视频设备的预值帧率;
式(2)如下:
(a/c)*(d/e)*g=显示渲染后弹幕每帧所需的消耗 (2)
其中,e为预值帧率;显示渲染后弹幕每帧所需的消耗与CPU消耗成正比。
上述视频设备显示弹幕的方法包含:
视频设备预设弹幕绘制频率和预值帧率,根据其应用程序编程接口获取视频设备的屏幕分辨率、设备屏幕密度和弹幕显示区域尺寸,进而获取最终显示的弹幕字号大小、弹幕滚动时间、滚动速度和弹幕密集度,对弹幕显示进行渲染,并显示经过渲染的弹幕。
上述弹幕绘制频率提高,弹幕滚动时间缩短且弹幕密集度提高,从而提高CPU消耗;弹幕绘制频率降低,弹幕滚动时间延长且弹幕密集度降低,从而降低CPU消耗。
上述视频设备显示弹幕的方法还包含:
视频设备获得每一次输出位图之后与输出位图之前的时间差;
视频设备获得每次输出的位图的质量的权重;
时间差除以权重后得到稳定的评分,该评分为CPU消耗的辅助运算;
当连续预置时间内评分突增加至评分阈值,可判断此时视频设备正在进行高强度计算,从而降低刷新率。
上述视频设备处于锁屏状态时,将CPU消耗提高10%设为视频设备的CPU消耗阈值。
上述视频设备在锁屏状态下显示弹幕的方法包含:
视频设备向gpu申请渲染用的位图空间;
视频设备向内存池申请弹幕绘制的缓存空间;
视频设备向系统注册后台线程的使用权限,并开启一条新的消息线程;
视频设备基于获取的弹幕绘制频率和预值帧率,绘制出包含弹幕的位图,输出在锁屏界面上得以显示弹幕。
一种弹幕显示系统,其特点是,该显示系统包含:
弹幕渲染模块,其输入端连接视频设备的应用程序编程接口,输出最终显示的弹幕字号大小、弹幕滚动时间、滚动速度和弹幕密集度的弹幕渲染指令;
CPU消耗控制模块,其连接弹幕渲染模块,判断弹幕渲染时CPU消耗是否大于预设的CPU消耗阈值,若是则降低弹幕绘制频率,延长弹幕滚动时间,降低弹幕密集度,降低渲染弹幕每帧所需的消耗,降低CPU消耗;若否则提高弹幕绘制频率,缩短弹幕滚动时间,提高弹幕密集度,提高渲染弹幕每帧所需的消耗,提高 CPU消耗;
显示模块,其输入端连接弹幕渲染模块,根据弹幕渲染指令输出渲染后的弹幕。
上述的弹幕渲染模块包含:
应用程序编程接口信息采集模块,其输入端连接视频设备的应用程序编程接口,采集视频设备的应用程序编程接口信息;
视频设备信息采集模块,其输入端连接应用程序编程接口信息采集模块,采集屏幕分辨率、设备屏幕密度、弹幕显示区域尺寸;
弹幕信息渲染模块,输入端连接视频设备信息采集模块,根据屏幕分辨率、设备屏幕密度、弹幕显示区域尺寸获取弹幕字号大小、弹幕滚动时间、滚动速度和弹幕密集度,并输出弹幕渲染指令。
上述显示系统还包含:屏幕控制模块,其根据预设或当前的锁屏指令,控制视频设备的显示模块进入锁屏状态,显示模块绘制出包含弹幕的位图,输出在锁屏界面上得以在锁屏界面显示弹幕。
本发明的弹幕显示系统及其CPU消耗控制方法和现有技术的弹幕显示技术相比,其优点在于,本发明通过获取各个显示设备平台的平台应用程序编程接口,获取设备硬件相关的基础元数据,从而获取视频设备的CPU消耗,根据CPU消耗调整弹幕在不同视频设备上的预值帧率和弹幕绘制频率,实现在视频设备的锁屏界面上显示弹幕,便于用于观看弹幕,并且还能使用户在设备处于锁屏状态下能看到最优的弹幕显示效果。
附图说明
图1为本发明锁屏界面弹幕显示方法的方法流程图;
图2为本发明锁屏界面弹幕显示系统的框图。
具体实施方式
以下结合附图进一步说明本发明的具体实施例。
如图1所示,为本发明公开的一种视频设备锁屏状态下控制CPU消耗的弹幕显示方法,该显示方法具体包含以下步骤:
S1、视频设备弹幕和渲染空间获取。
S1.1、视频设备向GPU申请渲染用的位图空间。
S1.2、视频设备向内存池申请弹幕绘制的缓存空间。
S1.3、进入视频设备的后台,打开后台task模式 ,申请后台线程权限,开启一条新的消息线程。并空放一端空的音乐,维护后台线程的长久性。
S1.4、通过长链接获得控制指令。在后台线程维护一个长链接到服务端用来接收绘制弹幕。通过长链接获得弹幕输出背景。接受所有需要输出的弹幕。
S1.5、维护一个输出带弹幕的连续帧FIFO输出队列。当队列超过60帧后对先入队列抛出,防止冗余无用计算。通过后台权限申请一条长久消息队列。在收到弹幕后模拟时间轴轨从输出队列中获取当前需要展示的弹幕。
S2、视频设备设置弹幕渲染的预值帧率和弹幕绘制频率。预值帧率和弹幕绘制频率用于对弹幕滚动时间和弹幕密集度进行调整。
初始状态时,先将预值帧率和弹幕绘制频率设置为预设的初始值,以启动对弹幕的渲染操作。
当弹幕渲染后,则根据当时收到CPU消耗所的对应的预值帧率和弹幕绘制频率控制弹幕渲染的滚动时间和弹幕密集度。
S3、弹幕渲染和绘制。
弹幕渲染中,视频设备根据其应用程序编程接口渲染弹幕的弹幕字号大小、滚动速度、弹幕滚动时间和弹幕密集度,其中弹幕滚动时间和弹幕密集度根据S2中设置的预值帧率和弹幕绘制频率进行调整。
S3.1、视频设备根据设备屏幕密度和屏幕分辨率获取的最终显示的弹幕字号大小。
S3.1.1、视频设备根据其应用程序编程接口获取设备屏幕密度和屏幕分辨率。
S3.1.2、视频设备根据设备屏幕密度获得全屏下最大弹幕占用行数,由屏幕分辨率获得分辨率高度,根据式(3)获得每行弹幕的行高:
每行弹幕的行高=分辨率高度/全屏下最大弹幕占用行数 (3)。
其中,视频设备或显示设备平台预设有设备屏幕密度与全屏下最大弹幕占用行数的关系。
S3.1.3、每行弹幕的行高通过带入字体变量得到最终显示的标准字号的缩放基准值。
其中,字体变量包含:字符基准线(Baseline)之上至字符最高处的距离(Ascent)、字符基准线之下至字符最低处的距离(Descent)和字符间的行间距(Leading),得到缩放基准值的关系式如下:
Leading=每行弹幕的行高-(Ascent+Descent)
font size=每行弹幕的行高-Leading/2
font size为弹幕字号的基准大小,并定义该弹幕字号的基准大小为最终显示的标准字号的缩放基准值。
S3.1.4、视频设备或显示设备平台预设定弹幕原始数据预设的标准字号的字体像素大小,代表希望显示的弹幕像素大小,但这个预定义大小不适合所有显示屏幕(过大或过小),所以需要结合上述得到的缩放基准值,根据式(4)得到缩放比例。结合缩放比例和当前设定的字号大小,根据式(5)获得最终显示的弹幕字号大小:
缩放比例=缩放基准值/弹幕原始数据预设的标准字号的字体像素大小(4)
最终显示的弹幕字号大小=当前设定的字号大小*缩放比例 (5)。
S3.2、视频设备根据最终显示的弹幕字号大小和弹幕显示区域尺寸获取滚动速度和弹幕滚动时间。
S3.2.1、视频设备根据其应用程序编程接口获取弹幕显示区域尺寸。
S3.2.2、最终显示的弹幕字号大小和弹幕文本长度(弹幕内容的文字长度)通过带入字体变量得到每条弹幕的弹幕显示占用尺寸,弹幕显示占用尺寸包含弹幕显示占用高度和弹幕显示占用宽度。
其中,字体变量包含:字符基准线(Baseline)之上至字符最高处的距离(Ascent)、字符基准线之下至字符最低处的距离(Descent)和字符间的行间距(Leading)。
S3.2.3、预设滚动速度基准值,结合弹幕显示区域尺寸的宽度,根据式(6)获得弹幕滚动显示时间。然后根据弹幕显示占用宽度、弹幕显示区域尺寸的宽度和弹幕滚动显示时间,根据式(7)获得弹幕滚动显示时间和滚动速度:
弹幕滚动时间=弹幕显示区域尺寸的宽度/滚动速度基准值 (6)
滚动速度=(弹幕显示区域尺寸的宽度+弹幕显示占用宽度)/弹幕滚动时间(7)。
S3.2.4、视频设备根据预值帧率和弹幕绘制频率调整弹幕滚动时间和滚动速度,以实现对CPU消耗进行控制。
S3.3、视频设备根据设备屏幕密度获取弹幕密集度。
S3.3.1、视频设备根据其应用程序编程接口获取设备屏幕密度。
S3.3.2、根据预设的设备屏幕密度与同屏弹幕条数的范围的关系,由设备屏幕密度得到同屏弹幕条数的范围。本实施例中可通过表1获得。
S3.3.3、同屏弹幕条数的范围中取同屏弹幕最大条数,以同屏弹幕最大条数为基准得到弹幕密集度。
另外,视频设备还需要根据弹幕密集度动态调整滚动速度,弹幕滚动时间与弹幕密集度的关系呈反比,即滚动速度与弹幕密集度的关系呈正比。
S3.3.4、视频设备根据预值帧率和弹幕绘制频率调整弹幕密集度,以控制CPU消耗。
S3.3.5、在收到输出队列指示进行绘制后,从模拟弹幕池中找到相应弹幕采用弹幕绘制模块进行绘制,绘制和渲染完成的弹幕由内存缓存。
S4、视频设备显示弹幕的弹幕滚动时间和弹幕密集度对视频设备的CPU消耗产生影响,视频设备根据CPU消耗对预值帧率和弹幕绘制频进行优化,以控制CPU消耗。
S4.1、视频设备实时CPU消耗监控,并判断CPU消耗是否大于预设的CPU消耗阈值。本实施中,视频设备处于锁屏状态时,将CPU消耗提高10%设为视频设备的CPU消耗阈值。
若是,当视频设备的CPU消耗大于预设的CPU消耗阈值,降低弹幕绘制频率,根据式(1)视频设备渲染弹幕每帧所需的消耗降低,跳转到S4.2。
若否,当视频设备的CPU消耗小于等于预设的CPU消耗阈值,提高弹幕绘制频率,根据式(1)视频设备渲染弹幕每帧所需的消耗提高,跳转到S4.1.2。
式(1)如下:
(a/c)*(d/f)*g=弹幕渲染每帧所需的消耗 (1)
其中,a为弹幕显示区域高度,c为弹幕密集度,d为弹幕滚动时间,f为弹幕绘制频率,g为渲染弹幕的时间。
其中,弹幕渲染每帧所需的消耗与CPU消耗成正比。
可知,弹幕绘制频率提高,弹幕滚动时间缩短且弹幕密集度提高,从而提高CPU消耗;
而弹幕绘制频率降低,弹幕滚动时间延长且弹幕密集度降低,从而降低CPU消耗。
实际操作中可通过以下实现,视频设备获得每一次输出位图之后与输出位图之前的时间差。视频设备获得每次输出的位图的质量的权重。时间差除以权重后得到一个稳定评分。此评分的作用是作为cpu消耗的辅助运算,当连续评分变低时,需要降低绘制弹幕频率。当连续预置时间,例如10S,内评分突增加至一个评分预值,例如20%,可判断此时视频设备正在进行高强度计算,从而降低刷新率。
S4.1.2、当视频设备渲染弹幕每帧所需的消耗提高,视频设备的显示模块处于过饱和状态,视频设备显示渲染后弹幕每帧所需的消耗提高,视频设备根据式(2)提高视频设备的预值帧率,跳转到S5。
式(2)如下:
(a/c)*(d/e)*g=显示渲染后弹幕每帧所需的消耗 (2)
其中,e为预值帧率;显示渲染后弹幕每帧所需的消耗与CPU消耗成正比。
S4.2、当视频设备渲染弹幕每帧所需的消耗降低,视频设备的显示模块处于不饱和状态,视频设备显示渲染后弹幕每帧所需的消耗降低,视频设备根据式(2)降低视频设备的预值帧率,跳转到S5。
S5、视频设备判断CPU消耗是否符合锁屏状态下弹幕显示,即判断CPU消耗是否处于预设的锁屏状态CPU消耗的数值范围内,若是,则视频设备绘制出包含弹幕的位图,输出在锁屏界面的texture上得以显示渲染后的弹幕,并等待循环输出下一帧弹幕。若否,则跳转到S2。
如图2所示,本发明还公开了一种锁屏界面弹幕显示系统的实施例,该显示系统包含:弹幕渲染模块21、锁屏控制模块22、显示模块23和CPU消耗控制模块24。
弹幕渲染模块21输入端连接视频设备的应用程序编程接口,输出最终显示的弹幕字号大小、滚动速度和弹幕密集度的弹幕调整指令。
具体的,弹幕渲染模块21包含:应用程序编程接口信息采集模块211、视频设备信息采集模块212和弹幕信息调整模块213。
应用程序编程接口信息采集模块211输入端连接视频设备的应用程序编程接口,采集视频设备的应用程序编程接口信息。
视频设备信息采集模块212输入端连接应用程序编程接口信息采集模块,采集屏幕分辨率、设备屏幕密度和弹幕显示区域尺寸。
弹幕信息调整模块213输入端连接视频设备信息采集模块,根据屏幕分辨率、设备屏幕密度和弹幕显示区域尺寸获取弹幕在该视频设备上的渲染频率和弹幕绘制频率,并输出弹幕调整指令。
CPU消耗控制模块24,其连接弹幕渲染模块21,判断弹幕渲染时CPU消耗是否大于预设的CPU消耗阈值,若是,则降低弹幕绘制频率,延长弹幕滚动时间,降低弹幕密集度,降低渲染弹幕每帧所需的消耗,降低CPU消耗;若否,则提高弹幕绘制频率,缩短弹幕滚动时间,提高弹幕密集度,提高渲染弹幕每帧所需的消耗,提高 CPU消耗。
锁屏控制模块22用于当达到视频设备预设的无操作时间阈值或接收到实时的锁屏操作,则输出锁屏指令。
显示模块23输入端连接弹幕调整模块和锁屏控制模块,接收锁屏指令进入锁屏状态后,根据弹幕显示调整指令显示输出调整后弹幕。
其根据预设或当前的锁屏指令,控制视频设备的显示模块进入锁屏状态,显示锁屏界面;显示模块绘制出包含弹幕的位图,输出在锁屏界面上得以在锁屏界面显示弹幕。
尽管本发明的内容已经通过上述优选实施例作了详细介绍,但应当认识到上述的描述不应被认为是对本发明的限制。在本领域技术人员阅读了上述内容后,对于本发明的多种修改和替代都将是显而易见的。因此,本发明的保护范围应由所附的权利要求来限定。

Claims (10)

1.一种用于弹幕显示的CPU消耗控制方法,其特征在于,该控制方法包含:
当视频设备的CPU消耗大于预设的CPU消耗阈值,降低弹幕绘制频率,根据式(1)视频设备渲染弹幕每帧所需的消耗降低;
当视频设备的CPU消耗小于等于预设的CPU消耗阈值,提高弹幕绘制频率,根据式(1)视频设备渲染弹幕每帧所需的消耗提高;
式(1)如下:
(a/c)*(d/f)*g=弹幕渲染每帧所需的消耗 (1)
其中,a为弹幕显示区域高度,c为弹幕密集度,d为弹幕滚动时间,f为弹幕绘制频率,g为渲染弹幕的时间;弹幕渲染每帧所需的消耗与CPU消耗成正比。
2.如权利要求1所述的用于弹幕显示的CPU消耗控制方法,其特征在于,该控制方法包含:
当所述视频设备渲染弹幕每帧所需的消耗降低,视频设备的显示模块处于不饱和状态,视频设备显示渲染后弹幕每帧所需的消耗降低,视频设备根据式(2)降低视频设备的预值帧率;
当视频设备渲染弹幕每帧所需的消耗提高,视频设备的显示模块处于过饱和状态,视频设备显示渲染后弹幕每帧所需的消耗提高,视频设备根据式(2)提高视频设备的预值帧率;
式(2)如下:
(a/c)*(d/e)*g=显示渲染后弹幕每帧所需的消耗 (2)
其中,e为预值帧率;显示渲染后弹幕每帧所需的消耗与CPU消耗成正比。
3.如权利要求1或2所述的用于弹幕显示的CPU消耗控制方法,其特征在于,所述视频设备显示弹幕的方法包含:
视频设备预设弹幕绘制频率和预值帧率,根据其应用程序编程接口获取视频设备的屏幕分辨率、设备屏幕密度和弹幕显示区域尺寸,进而获取最终显示的弹幕字号大小、弹幕滚动时间、滚动速度和弹幕密集度,对弹幕显示进行渲染,并显示经过渲染的弹幕。
4.如权利要求1所述的用于弹幕显示的CPU消耗控制方法,其特征在于,所述弹幕绘制频率提高,弹幕滚动时间缩短且弹幕密集度提高,从而提高CPU消耗;弹幕绘制频率降低,弹幕滚动时间延长且弹幕密集度降低,从而降低CPU消耗。
5.如权利要求4所述的用于弹幕显示的CPU消耗控制方法,其特征在于,所述视频设备显示弹幕的方法还包含:
视频设备获得每一次输出位图之后与输出位图之前的时间差;
视频设备获得每次输出的位图的质量的权重;
时间差除以权重后得到稳定的评分,该评分为CPU消耗的辅助运算;
当连续预置时间内评分突增加至评分阈值,可判断此时视频设备正在进行高强度计算,从而降低刷新率。
6.如权利要求1或2所述的用于弹幕显示的CPU消耗控制方法,其特征在于,所述视频设备处于锁屏状态时,将CPU消耗提高10%设为视频设备的CPU消耗阈值。
7.如权利要求6所述的用于弹幕显示的CPU消耗控制方法,其特征在于,所述视频设备在锁屏状态下显示弹幕的方法包含:
视频设备向gpu申请渲染用的位图空间;
视频设备向内存池申请弹幕绘制的缓存空间;
视频设备向系统注册后台线程的使用权限,并开启一条新的消息线程;
视频设备基于获取的弹幕绘制频率和预值帧率,绘制出包含弹幕的位图,输出在锁屏界面上得以显示弹幕。
8.一种适用于如权利要求1至7中任意一项权利要求所述用于弹幕显示的CPU消耗控制方法的控制CPU消耗的弹幕显示系统,其特征在于,该显示系统包含:
弹幕渲染模块,其输入端连接视频设备的应用程序编程接口,输出最终显示的弹幕字号大小、弹幕滚动时间、滚动速度和弹幕密集度的弹幕渲染指令;
CPU消耗控制模块,其连接弹幕渲染模块,判断弹幕渲染时CPU消耗是否大于预设的CPU消耗阈值,若是则降低弹幕绘制频率,延长弹幕滚动时间,降低弹幕密集度,降低渲染弹幕每帧所需的消耗,降低CPU消耗;若否则提高弹幕绘制频率,缩短弹幕滚动时间,提高弹幕密集度,提高渲染弹幕每帧所需的消耗,提高 CPU消耗;显示模块,其输入端连接弹幕渲染模块,根据弹幕渲染指令输出渲染后的弹幕。
9.如权利要求8所述的弹幕显示系统,其特征在于,所述的弹幕渲染模块包含:
应用程序编程接口信息采集模块,其输入端连接视频设备的应用程序编程接口,采集视频设备的应用程序编程接口信息;
视频设备信息采集模块,其输入端连接应用程序编程接口信息采集模块,采集屏幕分辨率、设备屏幕密度、弹幕显示区域尺寸;
弹幕信息渲染模块,输入端连接视频设备信息采集模块,根据屏幕分辨率、设备屏幕密度、弹幕显示区域尺寸获取弹幕字号大小、弹幕滚动时间、滚动速度和弹幕密集度,并输出弹幕渲染指令。
10.如权利要求8所述的弹幕显示系统,其特征在于,所述显示系统还包含:屏幕控制模块,其根据预设或当前的锁屏指令,控制视频设备的显示模块进入锁屏状态,显示模块绘制出包含弹幕的位图,输出在锁屏界面上得以在锁屏界面显示弹幕。
CN201610535152.0A 2016-07-08 2016-07-08 弹幕显示系统及其cpu消耗控制方法 Active CN106210853B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201610535152.0A CN106210853B (zh) 2016-07-08 2016-07-08 弹幕显示系统及其cpu消耗控制方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201610535152.0A CN106210853B (zh) 2016-07-08 2016-07-08 弹幕显示系统及其cpu消耗控制方法

Publications (2)

Publication Number Publication Date
CN106210853A CN106210853A (zh) 2016-12-07
CN106210853B true CN106210853B (zh) 2019-04-09

Family

ID=57473415

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201610535152.0A Active CN106210853B (zh) 2016-07-08 2016-07-08 弹幕显示系统及其cpu消耗控制方法

Country Status (1)

Country Link
CN (1) CN106210853B (zh)

Families Citing this family (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108234143B (zh) * 2016-12-13 2020-10-16 腾讯科技(深圳)有限公司 一种直播时消息的处理方法、装置和设备
CN106933587B (zh) 2017-03-10 2019-12-31 Oppo广东移动通信有限公司 一种图层绘制控制方法、装置及移动终端
CN107506246A (zh) * 2017-08-08 2017-12-22 北京小米移动软件有限公司 信息展示方法、装置及计算机可读存储介质
CN108093301A (zh) * 2017-12-21 2018-05-29 深圳Tcl数字技术有限公司 电视机中跑马灯显示文本的方法、电视机及可读存储介质
CN108235121B (zh) * 2018-01-16 2020-07-10 海信视像科技股份有限公司 一种倍频显示的处理方法及装置、电子设备
CN109151966B (zh) * 2018-10-15 2021-08-17 Oppo广东移动通信有限公司 终端控制方法、装置、终端设备及存储介质
CN109379626A (zh) * 2018-11-27 2019-02-22 Oppo广东移动通信有限公司 视频处理方法、装置、电子设备及存储介质
CN112118473B (zh) * 2019-06-19 2022-05-17 上海哔哩哔哩科技有限公司 视频弹幕显示方法、装置、计算机设备及可读存储介质
US11513937B2 (en) 2019-06-19 2022-11-29 Shanghai Bilibili Technology Co., Ltd. Method and device of displaying video comments, computing device, and readable storage medium
CN112118484B (zh) * 2019-06-19 2022-04-19 上海哔哩哔哩科技有限公司 视频弹幕显示方法、装置、计算机设备及可读存储介质
CN110475065B (zh) * 2019-08-19 2021-03-16 北京字节跳动网络技术有限公司 图像处理的方法、装置、电子设备及存储介质
CN113766324B (zh) * 2020-06-02 2022-11-04 深圳市万普拉斯科技有限公司 视频播放的控制方法、装置、计算机设备和存储介质
CN114205673A (zh) * 2021-12-16 2022-03-18 荣耀终端有限公司 刷新率的设置方法及相关设备
CN117896590A (zh) * 2022-06-02 2024-04-16 荣耀终端有限公司 弹幕识别方法和相关装置

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102088356A (zh) * 2009-12-04 2011-06-08 三星电子株式会社 用于在数字生活网络联盟网络中降低功耗的方法和设备
CN103559731A (zh) * 2013-10-29 2014-02-05 腾讯科技(深圳)有限公司 一种锁屏状态下歌词显示的方法及终端
CN103995707A (zh) * 2014-06-11 2014-08-20 腾讯科技(深圳)有限公司 一种应用通知消息处理方法、装置及终端设备
CN104007804A (zh) * 2013-02-21 2014-08-27 北京金山安全软件有限公司 移动设备的运行方法及装置
CN105103106A (zh) * 2013-05-16 2015-11-25 英特尔公司 自动调节显示区域以降低功率消耗
CN105100444A (zh) * 2015-06-29 2015-11-25 小米科技有限责任公司 信息展示方法及装置
WO2015192782A1 (en) * 2014-06-18 2015-12-23 Tencent Technology (Shenzhen) Company Limited Information display method and terminal
CN105307030A (zh) * 2015-09-30 2016-02-03 广州酷狗计算机科技有限公司 弹幕显示方法及装置

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104750355A (zh) * 2013-12-31 2015-07-01 三星电子株式会社 屏幕显示方法和支持所述方法的电子设备

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102088356A (zh) * 2009-12-04 2011-06-08 三星电子株式会社 用于在数字生活网络联盟网络中降低功耗的方法和设备
CN104007804A (zh) * 2013-02-21 2014-08-27 北京金山安全软件有限公司 移动设备的运行方法及装置
CN105103106A (zh) * 2013-05-16 2015-11-25 英特尔公司 自动调节显示区域以降低功率消耗
CN103559731A (zh) * 2013-10-29 2014-02-05 腾讯科技(深圳)有限公司 一种锁屏状态下歌词显示的方法及终端
CN103995707A (zh) * 2014-06-11 2014-08-20 腾讯科技(深圳)有限公司 一种应用通知消息处理方法、装置及终端设备
WO2015192782A1 (en) * 2014-06-18 2015-12-23 Tencent Technology (Shenzhen) Company Limited Information display method and terminal
CN105100444A (zh) * 2015-06-29 2015-11-25 小米科技有限责任公司 信息展示方法及装置
CN105307030A (zh) * 2015-09-30 2016-02-03 广州酷狗计算机科技有限公司 弹幕显示方法及装置

Non-Patent Citations (4)

* Cited by examiner, † Cited by third party
Title
前方高能,教你如何把手机的通知改造成B站的弹幕!;IT鑫世界;《http://m.sohu.com/a/71505882_388624》;20160428;第1-25页
前方高能,教你如何把手机的通知改造成B站的弹幕!;IT鑫世界;《http://mini.eastday.com/mobile/160428122333418.html》;20160428;第1-16页
弹幕通知;未知;《http://m.appchina.com/app/com.k99k5.danmu》;20160502;第1-3页
弹幕通知;未知;《https://m.wandoujia.com/apps/com.s3studio.danmakunnotification/history_100140396》;20160628;第1-2页

Also Published As

Publication number Publication date
CN106210853A (zh) 2016-12-07

Similar Documents

Publication Publication Date Title
CN106210853B (zh) 弹幕显示系统及其cpu消耗控制方法
CN106210854B (zh) 一种终端及其信息显示方法
CN105959818B (zh) 弹幕显示方法及显示系统
TW536913B (en) Blending text and graphics for display on televisions
JP5839286B2 (ja) グラフィック画像とビデオ画像とを同時に表示する方法ならびに装置
CN101917557B (zh) 一种基于视频内容的动态添加字幕方法
JPS62242281A (ja) デジタル映像発生器
JP5574812B2 (ja) 画像処理装置及び画像処理方法
CN107797801A (zh) 一种基于多种移动终端界面的适配方法
EP1809032A1 (en) Video signal transformation device, and video display device
JP2014165766A (ja) コンテンツ作成装置、コンテンツ配信サーバ、およびコンテンツ作成方法
EP2573670B1 (en) Character display method and device
CN108257580A (zh) 一种基于背光亮度的显示画面的调节方法及装置
CN105898348A (zh) 一种用于降低视频播放终端的cpu温度的方法及设备
CN105898583A (zh) 一种图像推荐方法及电子设备
WO2022227974A1 (zh) 字幕处理方法、装置、设备及存储介质
US20030227565A1 (en) Auxiliary information processing system with a bitmapped on-screen display using limited computing resources
JP2011193326A (ja) 放送映像に付加情報を重畳する放送映像出力装置、プログラム及び方法
KR100846157B1 (ko) 텔레비전 신호에 포함되어 있는 보조 정보의 디스플레이를 인에이블시키기 위한 방법 및 시스템
WO2014208268A1 (ja) 映像コンテンツ表示装置及び映像コンテンツ表示方法
CN111310082B (zh) 一种页面显示方法和装置
CN106488314B (zh) 一种弹幕渲染方法
CN114115773B (zh) 帧率调节方法、装置、存储介质及终端设备
CN105812955B (zh) 一种滚动字幕显示方法及机顶盒处理器
CN104954892B (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