CN112118473B - 视频弹幕显示方法、装置、计算机设备及可读存储介质 - Google Patents
视频弹幕显示方法、装置、计算机设备及可读存储介质 Download PDFInfo
- Publication number
- CN112118473B CN112118473B CN201910532367.0A CN201910532367A CN112118473B CN 112118473 B CN112118473 B CN 112118473B CN 201910532367 A CN201910532367 A CN 201910532367A CN 112118473 B CN112118473 B CN 112118473B
- Authority
- CN
- China
- Prior art keywords
- bullet screen
- video
- page data
- file
- computer
- 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
Links
- 238000000034 method Methods 0.000 title claims abstract description 74
- 238000009877 rendering Methods 0.000 claims abstract description 44
- 238000004590 computer program Methods 0.000 claims description 8
- 238000001514 detection method Methods 0.000 claims description 5
- 230000008569 process Effects 0.000 abstract description 17
- 238000010586 diagram Methods 0.000 description 7
- 230000006870 function Effects 0.000 description 7
- 238000012545 processing Methods 0.000 description 4
- 230000008901 benefit Effects 0.000 description 3
- 230000007246 mechanism Effects 0.000 description 3
- 230000006399 behavior Effects 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 2
- 238000004891 communication Methods 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- 230000001360 synchronised effect Effects 0.000 description 2
- VYZAMTAEIAYCRO-UHFFFAOYSA-N Chromium Chemical compound [Cr] VYZAMTAEIAYCRO-UHFFFAOYSA-N 0.000 description 1
- 238000001816 cooling Methods 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000004806 packaging method and process Methods 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing 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/431—Generation of visual interfaces for content selection or interaction; Content or additional data rendering
- H04N21/4312—Generation 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing 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/44—Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs
- H04N21/44012—Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs involving rendering scenes according to scene graphs, e.g. MPEG-4 scene graphs
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing 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/442—Monitoring of processes or resources, e.g. detecting the failure of a recording device, monitoring the downstream bandwidth, the number of times a movie has been viewed, the storage space available from the internal hard disk
- H04N21/4424—Monitoring of the internal components or processes of the client device, e.g. CPU or memory load, processing speed, timer, counter or percentage of the hard disk space used
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/47—End-user applications
- H04N21/478—Supplemental services, e.g. displaying phone caller identification, shopping application
- H04N21/4782—Web browsing, e.g. WebTV
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/47—End-user applications
- H04N21/488—Data services, e.g. news ticker
- H04N21/4884—Data services, e.g. news ticker for displaying subtitles
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Computer Networks & Wireless Communication (AREA)
- Databases & Information Systems (AREA)
- Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
Abstract
本发明公开了一种视频弹幕显示方法、装置、计算机设备及可读存储介质,包括:获取包括视频文件的页面数据,渲染所述页面数据以播放所述视频文件的内容;侦测渲染所述页面数据时的计算机性能参数;获取弹幕文件,所述弹幕文件中包括用于显示视频弹幕的弹幕内容;显示所述弹幕文件中的弹幕内容;当侦测到渲染所述页面数据时的计算机性能参数小于预设值时停止显示部分弹幕内容。通过侦测渲染所述页面数据时的计算机性能参数,当侦测到渲染所述页面数据时的计算机性能参数小于预设值时停止显示部分弹幕内容,能够根据计算机性能状况调整弹幕显示密度,从而优化了弹幕显示过程,提高了弹幕显示的稳定性。
Description
技术领域
本发明涉及数据处理技术领域,具体涉及一种视频弹幕显示方法、装置、计算机设备及可读存储介质。
背景技术
随着互联网和智能终端的不断发展,越来越多的用户使用智能终端播放视频文件,弹幕显示是指一种在观看视频时,大量以字幕形式呈现的评论与视频同在一个画面的现象。在视频上方大量飘过的评论如密集炮弹一般,故得名弹幕。弹幕会随着视频的播放实时在视频上呈现,这样观看者在观看该视频时能够看到其他观看者和自己发送的弹幕,提高了用户体验。
但是相对于一般的视频播放,视频播放的同时显示弹幕在提供了用户体验的同时,也加重了计算机的资源消耗,因为需要渲染显示非常多的弹幕内容,特别是在弹幕数量非常多的时候,会影响正常的视频播放过程,甚至影响计算机的工作性能,使得视频弹幕播放出现卡顿,影响视频播放和弹幕显示的稳定性。因此,为了解决现有技术中的视频弹幕播放出现卡顿的问题,提供一种优化的视频弹幕显示方法为急需解决的技术问题。
发明内容
本发明的目的在于提供一种视频弹幕显示方法、装置、计算机设备及可读存储介质,能够根据计算机性能状况调整弹幕显示密度,从而优化了弹幕显示过程,提高了弹幕显示的稳定性。
根据本发明的一个方面,提供了一种视频弹幕显示方法,应用于客户端中,,所述方法包括:获取包括视频文件的页面数据,渲染所述页面数据以播放所述视频文件的内容;侦测渲染所述页面数据时的计算机性能参数;获取弹幕文件,所述弹幕文件中包括用于显示视频弹幕的弹幕内容;显示所述弹幕文件中的弹幕内容;当侦测到渲染所述页面数据时的计算机性能参数小于预设值时停止显示部分弹幕内容。
可选的,所述计算机性能参数为渲染所述页面数据时的浏览器帧速率,所述显示所述弹幕文件中的弹幕内容具体包括:按时序T1、T2、...Tn在所述视频文件的播放界面显示所述弹幕文件中的弹幕内容;所述当侦测到渲染所述页面数据时的计算机性能参数低于预设值时停止显示部分弹幕内容具体包括:当侦测到渲染所述页面数据时的浏览器帧速率小于预设值时,停止显示时间Tx之后的弹幕内容,其中1≤x<n。
可选的,所述侦测渲染所述页面数据时的计算机性能参数具体包括:实时侦测渲染所述页面数据时的浏览器帧速率;记录最近时间T内的浏览器帧速率S1、S2、...Sm;计算得到平均帧数(S1+S2+..Sm)/T;所述当侦测到渲染所述页面数据时的浏览器帧速率低于预设值时,停止显示时间Tx之后的弹幕内容具体包括:当侦测到(S1+S2+...Sm)/T小于预设值时,停止显示时间Tx之后的弹幕内容。
可选的,还包括:接收用户的输入值X;对应的,所述按时序T1、T2、...Tn在所述视频文件的播放界面显示所述弹幕文件中的弹幕内容具体包括:在所述视频文件的播放界面按时序T1、T2、...Tn最多显示X个弹幕内容。
可选的,还包括:当侦测到(S1+S2+...Sm)/T小于预设值时,修改X的值为Y,其中Y<X;对应的,所述按时序T1、T2、...Tn显示所述弹幕文件中的弹幕内容具体包括:在所述视频文件的播放界面按时序T1、T2、...Tn最多显示Y个弹幕内容。
可选的,还包括:当侦测到(S1+S2+...Sm)/T大于等于预设值时,修改X的值为用户输入的初始值;对应的,所述按时序T1、T2、...Tn在所述视频文件的播放界面显示所述弹幕文件中的弹幕内容具体包括:在所述视频文件的播放界面按时序T1、T2、...Tn最多显示X个弹幕内容。
可选的,所述渲染所述页面数据以播放所述视频文件的内容具体包括:在所述播放界面按时序T1、T2、...Tn播放所述视频文件的每一帧画面;所述当侦测到(S1+S2+...Sm)/T小于预设值时,修改X的值为Y之后还包括:暂停侦测渲染所述页面数据时的浏览器帧速率;启动倒计时;当倒计时满时恢复侦测渲染所述页面数据时的浏览器帧速率。
为了实现上述目的,本发明还提供一种视频弹幕显示装置,所述装置包括:视频播放模块,用于获取包括视频文件的页面数据,渲染所述页面数据以播放所述视频文件的内容;侦测模块,用于侦测渲染所述页面数据时的计算机性能参数;获取模块,用于获取弹幕文件,所述弹幕文件中包括用于显示视频弹幕的弹幕内容;弹幕播放模块,用于显示所述弹幕文件中的弹幕内容;判断模块,用于当侦测到渲染所述页面数据时的计算机性能参数小于预设值时停止显示部分弹幕内容。
为了实现上述目的,本发明还提供一种计算机设备,该计算机设备具体包括:存储器、处理器以及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述介绍的视频弹幕显示方法的步骤。
为了实现上述目的,本发明还提供一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述介绍的视频弹幕显示方法的步骤。
本发明提供的视频弹幕显示方法、装置、计算机设备及可读存储介质,通过侦测渲染所述页面数据时的计算机性能参数,当侦测到渲染所述页面数据时的计算机性能参数小于预设值时停止显示部分弹幕内容,能够根据计算机性能状况调整弹幕显示密度,从而优化了弹幕显示过程,提高了弹幕显示的稳定性。
附图说明
通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本发明的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中:
图1为实施例一提供的视频弹幕显示方法的一种可选的通信网络系统架构图;
图2为实施例一提供的视频弹幕显示方法的一种可选的流程示意图;
图3为基于图2提出的视频弹幕显示方法的一种可选的流程示意图;
图4为实施例一种侦测到渲染所述页面数据时的浏览器帧速率示意图一;
图5为实施例一种侦测到渲染所述页面数据时的浏览器帧速率示意图二;
图6为实施例一种侦测渲染所述页面数据时的计算机性能参数的一种可选的流程示意图;
图7为基于图6提出的视频弹幕显示方法的一种可选的流程示意图;
图8为基于图7提出的视频弹幕显示方法的一种可选的流程示意图;
图9为基于图8提出的视频弹幕显示方法的一种可选的流程示意图;
图10为基于图9提出的视频弹幕显示方法的一种可选的流程示意图;
图11为实施例二提供的视频弹幕显示装置的一种可选的程序模块示意图;
图12为实施例三提供的系统的一种可选的硬件架构示意图。
具体实施方式
以下结合附图与具体实施例进一步阐述本发明的优点。
这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本公开相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本公开的一些方面相一致的装置和方法的例子。
在本公开使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本公开。在本公开和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。还应当理解,本文中使用的术语“和/或”是指并包含一个或多个相关联的列出项目的任何或所有可能组合。
应当理解,尽管在本公开可能采用术语第一、第二、第三等来描述各种信息,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。例如,在不脱离本公开范围的情况下,第一信息也可以被称为第二信息,类似地,第二信息也可以被称为第一信息。取决于语境,如在此所使用的词语“如果”可以被解释成为“在......时”或“当......时”或“响应于确定”。
在本发明的描述中,需要理解的是,步骤前的数字标号并不标识执行步骤的前后顺序,仅用于方便描述本发明及区别每一步骤,因此不能理解为对本发明的限制。
本申请实施例的视频可以呈现于大型视频播放设备、游戏机、台式计算机、智能手机、平板电脑、MP3(MovingPictureExpertsGroupAudioLayerIII,动态影像专家压缩标准音频层)播放器、MP4(MovingPictureExpertsGroupAudioLayerlV,动态影像专家压缩标准音频层面)播放器、膝上型便携计算机、电子书阅读器以及其它显示终端等客户端。
本申请实施例中,用户通过输入弹幕内容经由服务器的处理后,可以再由服务器发送给各个客户端(即观看端或用户端),各个客户端再播放该视频内容以及对应的弹幕内容。请参考图1,图1是本申请实施例提供的视频弹幕显示方法的系统架构图。如图1所示,用户101通过无线网络或有线网络将视频弹幕内容传输给服务器200,用户101和用户102通过无线网络观看用户101的视频弹幕内容,用户103和用户104均通过有线网络观看用户101的视频弹幕内容并将各自的弹幕信息传输给服务器200。此处只给出一个服务器200,此处的应用场景还可以包括多台相互通讯的服务器。服务器200可以是云端服务器,还可以是本地服务器。在本申请实施例中,服务器200放置在云端侧。假如用户101发送弹幕信息,服务器W对该弹幕信息进行处理,并将该弹幕信息转发给用户101、用户102、用户103和用户104。
本发明为解决现有的视频弹幕播放出现卡顿,稳定性差的缺陷,提出了一种视频弹幕的显示方法。应用于客户端,其中,客户端为用户的智能终端,所述智能终端可以以各种形式来实施。例如,本发明中描述的终端可以包括诸如手机、平板电脑、笔记本电脑、掌上电脑、个人数字助理、便捷式媒体播放器等移动终端,以及诸如数字电视、台式计算机等固定终端。后续描述中将以固定终端为例进行说明,本领域技术人员将理解的是,除了特别用于移动目的的元件之外,根据本发明的实施方式的构造也能够应用于固定类型的终端。
其中,服务器可以为单个服务器设备,也可以是服务器集群或单个服务器中配置的部分虚拟主机区域。参阅图2,其为一符合本发明一优选实施例的视频弹幕显示方法的流程示意图,从图中可以看出,本实施例中所提供的视频弹幕显示方法主要包括以下步骤:
步骤S200:获取包括视频文件的页面数据,渲染所述页面数据以播放所述视频文件的内容。
步骤S210:侦测渲染所述页面数据时的计算机性能参数。
步骤S220:获取弹幕文件,所述弹幕文件中包括用于显示视频弹幕的弹幕内容。
步骤S230:显示所述弹幕文件中的弹幕内容。
步骤S240:当侦测到渲染所述页面数据时的计算机性能参数小于预设值时停止显示部分弹幕内容。
其中,所述视频文件包含在网页的页面数据之中,客户端从服务器获取到页面数据后,按照浏览器支持的协议解析页面数据,然后渲染所述页面数据以播放所述视频文件的内容。
对视频文件来说,当解析出视频文件渲染播放时,播放过程中至少包括视频文件数据接收、解析、解码、输出这几个处理流程。
其中,视频文件数据接收为接收、获取、得到从数据源发送的视频文件数据流。数据源来源可以有多种,例如可以为智能终端的硬盘或外接存储设备,或来自通过网络连接的服务器。将不同的数据来源统一接口,通过不同的协议和数据解析器来获取不同来源的视频文件给播放器进行处理。
其中,视频文件数据解析也叫解复用,是把合在一起的音频和视频分离,视频在制作的时候是独立编码的,得到的是分开的数据,为了传输方便一般会用某种方式合起来,即对应各种不同的封装格式,解复用就是通过分解出音频和视频流分别送往音频解码器和视频解码器,进行解码操作。
其中,视频文件数据解码包括音频和视频的解码,因为为了方便传输,视频文件在解码前是压缩过的,解码就是将压缩的视频文件还原成原始的视频文件。
其中,视频文件数据输出包括音频和视频的输出,通过将解码后的音频发送至声卡,将解码后的视频发送到显卡控制屏幕显示,从而完成播放过程。
另外,由于音频和视频在解复用后是独立的,所以还需要一种同步机制将视频同步,以及控制视频文件播放时的速度、暂停、停止、跳进和获取各种媒体信息、设置属性等。
这种同步机制是通过音频或视频的时间轴来实现的,所述通过同步机制,将时间轴信息中的时间信息,在同一时间同时播放视频和音频,便完成了音视频的同步。
具体的,如图3所示,在本实施例中,步骤S230:显示所述弹幕文件中的弹幕内容具体包括:
步骤S301:按时序T1、T2、...Tn在所述视频文件的播放界面显示所述弹幕文件中的弹幕内容。
对应的,步骤S240:所述当侦测到渲染所述页面数据时的计算机性能参数低于预设值时停止显示部分弹幕内容具体包括:
步骤S302:当侦测到渲染所述页面数据时的浏览器帧速率小于预设值时,停止显示时间Tx之后的弹幕内容,其中1≤x<n。
因为视频弹幕是由每帧画面按照时间轴信息来播放的,在本实施例中,所述按时序的T1、T2、...Tn弹幕信息,即时间轴,在时间轴中的每一个时间T显示对应弹幕内容。
当侦测到渲染所述页面数据时的浏览器帧速率小于预设值时,停止显示时间Tx之后的弹幕内容,即停止显示时间Tx之后插入的部分弹幕内容以降低计算机资源消耗。
侦测渲染所述页面数据时的计算机性能参数有很多,例如内存占用率,CPU占用率等,在本实施例中,所述计算机性能参数为渲染所述页面数据时的浏览器帧速率,即浏览器渲染页面文件时的FPS(Frames Per Second,每秒传输帧数)。
有多种方法可以侦测FPS,在本实施例中采用基于浏览器的requestAnimationFrame方法检测。
requestAnimationFrame通过向浏览器发送通知,并且要求浏览器在下次渲染页面之前调用指定的回调函数更新页面,通过传入一个回调函数作为参数,该回调函数会在浏览器下一次渲染之前执行,这将使浏览器在下一次重绘之前调用该回调函数。回调函数执行次数通常是每秒60次,回调函数执行次数通常与浏览器屏幕刷新次数相匹配。
在大多数浏览器里,当requestAnimationFrame()运行在后台标签页或者隐藏的<iframe>里,通过调用这些标签页的数据可以获取到FPS。
具体来说,requestAnimationFrame方法是由操作系统来决定回调函数的执行时机,如果屏幕刷新率是60Hz,那么回调函数就每16.7ms被执行一次,如果刷新率是75Hz,那么这个时间间隔就变成了1000/75=13.3ms,其中屏幕刷新频率即图像在屏幕上更新的速度,也即屏幕上的图像每秒钟出现的次数,requestAnimationFrame的步伐跟着系统的刷新步伐运行。
如图4和图5所示,以Chrome浏览器为例,如果存在较为消耗性能的行为,则会影响单个Frame(网页帧)耗时,并且导致当时页面FPS降低,当遇到当前页面中较为消耗性能的行为时,会导致渲染当前Frame的耗时变长,从而导致当前页面的FPS降低。其中main和compositor对应为Main线程和Compositor线程,用于网页内容的渲染过程。
具体的,如图6所示,在本实施例中,步骤S210:侦测渲染所述页面数据时的计算机性能参数,包括以下步骤:
步骤S601:实时侦测渲染所述页面数据时的浏览器帧速率。
步骤S602:记录最近时间T内的浏览器帧速率S1、S2、...Sm。
步骤S603:计算得到平均帧数(S1+S2+..Sm)/T。
对应的,步骤S302:所述当侦测到渲染所述页面数据时的浏览器帧速率低于预设值时,停止显示时间Tx之后的弹幕内容具体包括:
步骤S604:当侦测到(S1+S2+...Sm)/T小于预设值时,停止显示时间Tx之后的弹幕内容。
首先播放器会实时检测当前页面的FPS,并记录在性能列表FPSList中,保存最近T秒FPS值。播放器每秒根据已保存的性能列表FPSList计算出最近T秒内的平均FPS=(S1+S2+...Sm)/T。
如果平均FPS发生变化,则按照后续步骤通过设置相关弹幕密度来停止显示时间部分弹幕内容,以降低计算机资源消耗。而且当自动弹幕密度调整时,不会影响播放器上已显示弹幕。
具体的,如图7所示,在本实施例中,还包括以下步骤:
步骤S701:接收用户的输入值X;
对应的,步骤S301:所述按时序T1、T2、...Tn在所述视频文件的播放界面显示所述弹幕文件中的弹幕内容具体包括:
步骤S702:在所述视频文件的播放界面按时序T1、T2、...Tn最多显示X个弹幕内容。
具体的,如图8所示,在本实施例中,还包括以下步骤:
步骤S801:当侦测到(S1+S2+...Sm)/T小于预设值时,修改X的值为Y,其中Y<X。
对应的,步骤S301:所述按时序T1、T2、...Tn在所述视频文件的播放界面显示所述弹幕文件中的弹幕内容具体包括:
步骤S802:在所述视频文件的播放界面按时序T1、T2、...Tn最多显示Y个弹幕内容。
具体的,如图9所示,在本实施例中,还包括以下步骤:
步骤S901:当侦测到(S1+S2+...Sm)/T大于等于预设值时,修改X的值为用户输入的初始值。
对应的,步骤S301:所述按时序T1、T2、...Tn在所述视频文件的播放界面显示所述弹幕文件中的弹幕内容具体包括:
步骤S902:在所述视频文件的播放界面按时序T1、T2、...Tn最多显示X个弹幕内容。
在本实施例中,通过用户的自定义设置多个不同弹幕的显示密度X,即在视频播放界面最多显示多少个弹幕,当当前显示的弹幕数量达到用户设置的数量之后,在所述视频文件的播放界面按时序T1、T2、...Tn最多显示X个弹幕内容不再显示部分弹幕内容,如表1所示。
表1
例如,用户在页面A打开播放器观看,每次新页面播放器默认设置均为HIGH_PERF,设定默认弹幕密度为80,FPS保持稳定在60左右。此时,页面中出现各种占用性能计算或渲染时:
如果页面A检测到当前5s内平均20≤FPS<40,则会将自动将当前播放器内的弹幕密度设置为用户设定的二分之一,即最高为40条弹幕密度。
如果页面A在5s之后的平均FPS≥40时,则会将当前播放器内的弹幕密度设置回用户设定的值,保证正常的观看。
在本发明的实施例中,是通过修改用户输入值X为Y,Y和X之间存在系数关系,即用户设置的弹幕密度的衰减倍数来实现,每次FPS低于预设值,衰减一定倍数,例如如果页面A检测到当前5s内平均FPS≤40,则会将自动将当前播放器内的弹幕密度设置为用户设定的二分之一,如果页面A检测到当前5s内平均FPS≤20,则会将自动将当前播放器内的弹幕密度设置为用户设定的四分之一。
在本发明的其他实施例中,当每次检测到FPS小于预设值需要设置部分弹幕内容密度时,也可以重新接收用户新的输入Y,只要当Y<X,即可以调低弹幕密度,达到减少计算机资源消耗的作用。而且当自动弹幕密度调整时,不会影响播放器上已显示弹幕。
具体的,如图10所示,在本实施例中,还包括以下步骤:
步骤S1001:在所述播放界面按时序T1、T2、...Tn播放所述视频文件的每一帧画面。
通过在所述播放界面按时序T1、T2、...Tn播放所述视频文件的每一帧画面可以同步时间轴,使得播放所述视频文件和显示所述弹幕文件中的弹幕内容时间同步,从而使得在播放视频时的特定时间节点显示对应的弹幕,其中所示弹幕是其他用户在播放视频在该节点时输入发送给服务器的,包含了播放该视频文件时间节点信息,然后用户获取弹幕文件时在视频播放到该时间节点时显示。
步骤S801:所述当侦测到(S1+S2+...Sm)/T小于预设值时,修改X的值为Y之后还包括:
步骤S1002:暂停侦测渲染所述页面数据时的浏览器帧速率;
步骤S1003:启动倒计时;
步骤S1004:当倒计时满时恢复侦测渲染所述页面数据时的浏览器帧速率。
在本实施例中,每次动态调整时具有冷却时间,例如默认为5s内只允许一次动态调整,则在修改X的值为Y之后可以暂停侦测渲染所述页面数据时的浏览器帧速率,并启动一个5秒的倒计时,或者设置一个5秒的触发时间,倒计时满或者达到预设时间恢复侦测浏览器帧速率以及调整弹幕密度。
本发明提供的视频弹幕显示方法,通过侦测渲染所述页面数据时的计算机性能参数,当侦测到渲染所述页面数据时的计算机性能参数小于预设值时停止显示部分弹幕内容,能够根据计算机性能状况调整弹幕显示密度,从而优化了弹幕显示过程,提高了弹幕显示的稳定性。
实施例二
基于上述实施例一种提供的视频弹幕显示方法,本实施例中提供一种视频弹幕显示装置,具体地,图11示出了该视频弹幕显示装置的可选的结构框图,该视频弹幕显示装置被分割成一个或多个程序模块,一个或者多个程序模块被存储于存储介质中,并由一个或多个处理器所执行,以完成本发明。本发明所称的程序模块是指能够完成特定功能的一系列计算机程序指令段,比程序本身更适合描述视频弹幕显示装置在存储介质中的执行过程,以下描述将具体介绍本实施例各程序模块的功能。
如图11所示,应用于视频弹幕显示装置具体包括以下组成部分:
视频播放模块11,用于获取包括视频文件的页面数据,渲染所述页面数据以播放所述视频文件的内容;
侦测模块12,用于侦测渲染所述页面数据时的计算机性能参数;
获取模块13,用于获取弹幕文件,所述弹幕文件中包括用于显示视频弹幕的弹幕内容;
弹幕播放模块14,用于显示所述弹幕文件中的弹幕内容;
判断模块15,用于当侦测到渲染所述页面数据时的计算机性能参数小于预设值时停止显示部分弹幕内容。
实施例三
本实施例还提供一种计算机设备,如可以执行程序的智能手机、平板电脑、笔记本电脑、台式计算机、机架式服务器、刀片式服务器、塔式服务器或机柜式服务器(包括独立的服务器,或者多个服务器所组成的服务器集群)等。如图12所示,本实施例的计算机设备30至少包括但不限于:可通过系统总线相互通信连接的存储器301、处理器302。需要指出的是,图12仅示出了具有组件301-302的计算机设备30,但是应理解的是,并不要求实施所有示出的组件,可以替代的实施更多或者更少的组件。
本实施例中,存储器301(即可读存储介质)包括闪存、硬盘、多媒体卡、卡型存储器(例如,SD或DX存储器等)、随机访问存储器(RAM)、静态随机访问存储器(SRAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、可编程只读存储器(PROM)、磁性存储器、磁盘、光盘等。在一些实施例中,存储器301可以是计算机设备30的内部存储单元,例如该计算机设备30的硬盘或内存。在另一些实施例中,存储器301也可以是计算机设备30的外部存储设备,例如该计算机设备30上配备的插接式硬盘,智能存储卡(Smart Media Card,SMC),安全数字(Secure Digital,SD)卡,闪存卡(Flash Card)等。当然,存储器301还可以既包括计算机设备30的内部存储单元也包括其外部存储设备。在本实施例中,存储器301通常用于存储安装于计算机设备30的操作系统和各类应用软件,例如实施例二的视频弹幕显示装置的程序代码等。此外,存储器301还可以用于暂时地存储已经输出或者将要输出的各类数据。
处理器302在一些实施例中可以是中央处理器(Central Processing Unit,CPU)、控制器、微控制器、微处理器、或其他数据处理芯片。该处理器302通常用于控制计算机设备30的总体操作。
具体的,在本实施例中,处理器302用于执行处理器302中存储的视频文件的播放方法的程序,所述视频文件的播放方法的程序被执行时实现如下步骤:
获取包括视频文件的页面数据,渲染所述页面数据以播放所述视频文件的内容;
侦测渲染所述页面数据时的计算机性能参数;
获取弹幕文件,所述弹幕文件中包括用于显示视频弹幕的弹幕内容;
显示所述弹幕文件中的弹幕内容;
当侦测到渲染所述页面数据时的计算机性能参数小于预设值时停止显示部分弹幕内容。
实施例四
本实施例还提供一种计算机可读存储介质,如闪存、硬盘、多媒体卡、卡型存储器(例如,SD或DX存储器等)、随机访问存储器(RAM)、静态随机访问存储器(SRAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、可编程只读存储器(PROM)、磁性存储器、磁盘、光盘、服务器、App应用商城等等,其上存储有计算机程序,所述计算机程序被处理器执行时实现如下方法步骤:
获取包括视频文件的页面数据,渲染所述页面数据以播放所述视频文件的内容;
侦测渲染所述页面数据时的计算机性能参数;
获取弹幕文件,所述弹幕文件中包括用于显示视频弹幕的弹幕内容;
显示所述弹幕文件中的弹幕内容;
当侦测到渲染所述页面数据时的计算机性能参数小于预设值时停止显示部分弹幕内容。
上述方法步骤的具体实施例过程可参见第一实施例,本实施例在此不再重复赘述。
本实施例提供的视频弹幕显示方法、装置、计算机设备及可读存储介质,通过侦测渲染所述页面数据时的计算机性能参数,当侦测到渲染所述页面数据时的计算机性能参数小于预设值时停止显示部分弹幕内容,能够根据计算机性能状况调整弹幕显示密度,从而优化了弹幕显示过程,提高了弹幕显示的稳定性。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者装置不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者装置所固有的要素。在没有更多限制的情况下,由语句“包括一个......”限定的要素,并不排除在包括该要素的过程、方法、物品或者装置中还存在另外的相同要素。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。
以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。
Claims (9)
1.一种视频弹幕显示方法,应用于客户端中,其特征在于,所述方法包括:
获取包括视频文件的页面数据,渲染所述页面数据以播放所述视频文件的内容;
侦测渲染所述页面数据时的计算机性能参数,所述计算机性能参数为渲染所述页面数据时的浏览器帧速率;
获取弹幕文件,所述弹幕文件中包括用于显示视频弹幕的弹幕内容;
按时序T1、T2、...Tn在所述视频文件的播放界面显示所述弹幕文件中的弹幕内容;
当侦测到渲染所述页面数据时的计算机性能参数小于预设值时停止显示时间Tx之后的弹幕内容,其中1≤x<n。
2.根据权利要求1所述的视频弹幕显示方法,其特征在于,所述侦测渲染所述页面数据时的计算机性能参数具体包括:
实时侦测渲染所述页面数据时的浏览器帧速率;
记录最近时间T内的浏览器帧速率S1、S2、...Sm;
计算得到平均帧数(S1+S2+..Sm)/T;
所述当侦测到渲染所述页面数据时的浏览器帧速率低于预设值时,停止显示时间Tx之后的弹幕内容具体包括:
当侦测到(S1+S2+...Sm)/T小于预设值时,停止显示时间Tx之后的弹幕内容。
3.根据权利要求2所述的视频弹幕显示方法,其特征在于,还包括:
接收用户的输入值X;
对应的,所述按时序T1、T2、...Tn在所述视频文件的播放界面显示所述弹幕文件中的弹幕内容具体包括:
在所述视频文件的播放界面按时序T1、T2、...Tn最多显示X个弹幕内容。
4.根据权利要求3所述的视频弹幕显示方法,其特征在于,还包括:
当侦测到(S1+S2+...Sm)/T小于预设值时,修改X的值为Y,其中Y<X;
对应的,所述按时序T1、T2、...Tn显示所述弹幕文件中的弹幕内容具体包括:
在所述视频文件的播放界面按时序T1、T2、...Tn最多显示Y个弹幕内容。
5.根据权利要求3所述的视频弹幕显示方法,其特征在于,还包括:
当侦测到(S1+S2+...Sm)/T大于等于预设值时,修改X的值为用户输入的初始值;
对应的,所述按时序T1、T2、...Tn在所述视频文件的播放界面显示所述弹幕文件中的弹幕内容具体包括:
在所述视频文件的播放界面按时序T1、T2、...Tn最多显示X个弹幕内容。
6.根据权利要求1-5任一一项所述的视频弹幕显示方法,其特征在于,所述渲染所述页面数据以播放所述视频文件的内容具体包括:
在所述播放界面按时序T1、T2、...Tn播放所述视频文件的每一帧画面;
所述当侦测到(S1+S2+...Sm)/T小于预设值时,修改X的值为Y之后还包括:
暂停侦测渲染所述页面数据时的浏览器帧速率;
启动倒计时;
当倒计时满时恢复侦测渲染所述页面数据时的浏览器帧速率。
7.一种视频弹幕显示装置,其特征在于,所述装置包括:
视频播放模块,用于获取包括视频文件的页面数据,渲染所述页面数据以播放所述视频文件的内容;
侦测模块,用于侦测渲染所述页面数据时的计算机性能参数,所述计算机性能参数为渲染所述页面数据时的浏览器帧速率;
获取模块,用于获取弹幕文件,所述弹幕文件中包括用于显示视频弹幕的弹幕内容;
弹幕播放模块,用于按时序T1、T2、...Tn在所述视频文件的播放界面显示所述弹幕文件中的弹幕内容;
判断模块,用于当侦测到渲染所述页面数据时的计算机性能参数小于预设值时停止显示时间Tx之后的弹幕内容,其中1≤x<n。
8.一种计算机设备,所述计算机设备包括:存储器、处理器以及存储在所述存储器上并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至6中任一项的所述视频弹幕显示方法的步骤。
9.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至6中任一项的所述视频弹幕显示方法的步骤。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910532367.0A CN112118473B (zh) | 2019-06-19 | 2019-06-19 | 视频弹幕显示方法、装置、计算机设备及可读存储介质 |
US16/904,948 US11513937B2 (en) | 2019-06-19 | 2020-06-18 | Method and device of displaying video comments, computing device, and readable storage medium |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910532367.0A CN112118473B (zh) | 2019-06-19 | 2019-06-19 | 视频弹幕显示方法、装置、计算机设备及可读存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112118473A CN112118473A (zh) | 2020-12-22 |
CN112118473B true CN112118473B (zh) | 2022-05-17 |
Family
ID=73796639
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910532367.0A Active CN112118473B (zh) | 2019-06-19 | 2019-06-19 | 视频弹幕显示方法、装置、计算机设备及可读存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112118473B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115767163A (zh) * | 2022-10-14 | 2023-03-07 | 北京奇艺世纪科技有限公司 | 一种弹幕展示方法、装置及电子设备 |
CN117932182A (zh) * | 2022-10-26 | 2024-04-26 | 华为技术有限公司 | 一种网页弹幕的实现方法和电子设备 |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105898348A (zh) * | 2015-12-15 | 2016-08-24 | 乐视网信息技术(北京)股份有限公司 | 一种用于降低视频播放终端的cpu温度的方法及设备 |
CN106131641A (zh) * | 2016-06-30 | 2016-11-16 | 乐视控股(北京)有限公司 | 一种弹幕控制方法、系统和安卓智能电视 |
CN106210853A (zh) * | 2016-07-08 | 2016-12-07 | 上海幻电信息科技有限公司 | 弹幕显示系统及其cpu消耗控制方法 |
CN106933526A (zh) * | 2017-03-10 | 2017-07-07 | 广东欧珀移动通信有限公司 | 一种动态调节屏幕刷新率的方法、装置及移动终端 |
CN108462893A (zh) * | 2018-03-26 | 2018-08-28 | 武汉斗鱼网络科技有限公司 | 一种弹幕的显示方法、装置、终端和存储介质 |
CN109151966A (zh) * | 2018-10-15 | 2019-01-04 | Oppo广东移动通信有限公司 | 终端控制方法、装置、终端设备及存储介质 |
CN109361950A (zh) * | 2018-11-27 | 2019-02-19 | Oppo广东移动通信有限公司 | 视频处理方法、装置、电子设备及存储介质 |
CN109600654A (zh) * | 2018-11-27 | 2019-04-09 | Oppo广东移动通信有限公司 | 弹幕处理方法、装置以及电子设备 |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP5052691B1 (ja) * | 2011-06-29 | 2012-10-17 | 株式会社ソニー・コンピュータエンタテインメント | 情報処理装置および情報処理方法 |
US9066145B2 (en) * | 2011-06-30 | 2015-06-23 | Hulu, LLC | Commenting correlated to temporal point of video data |
CN105630296A (zh) * | 2016-01-07 | 2016-06-01 | 天脉聚源(北京)科技有限公司 | 一种视频弹幕显示方法及装置 |
CN106101849B (zh) * | 2016-06-21 | 2019-10-25 | 武汉斗鱼网络科技有限公司 | 一种弹幕输入方法及装置 |
CN107277641A (zh) * | 2017-07-04 | 2017-10-20 | 上海全土豆文化传播有限公司 | 一种弹幕信息的处理方法及客户端 |
CN108495165B (zh) * | 2018-01-29 | 2021-01-08 | 上海哔哩哔哩科技有限公司 | 弹幕播放控制方法、移动终端及弹幕播放控制系统 |
-
2019
- 2019-06-19 CN CN201910532367.0A patent/CN112118473B/zh active Active
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105898348A (zh) * | 2015-12-15 | 2016-08-24 | 乐视网信息技术(北京)股份有限公司 | 一种用于降低视频播放终端的cpu温度的方法及设备 |
CN106131641A (zh) * | 2016-06-30 | 2016-11-16 | 乐视控股(北京)有限公司 | 一种弹幕控制方法、系统和安卓智能电视 |
CN106210853A (zh) * | 2016-07-08 | 2016-12-07 | 上海幻电信息科技有限公司 | 弹幕显示系统及其cpu消耗控制方法 |
CN106933526A (zh) * | 2017-03-10 | 2017-07-07 | 广东欧珀移动通信有限公司 | 一种动态调节屏幕刷新率的方法、装置及移动终端 |
CN108462893A (zh) * | 2018-03-26 | 2018-08-28 | 武汉斗鱼网络科技有限公司 | 一种弹幕的显示方法、装置、终端和存储介质 |
CN109151966A (zh) * | 2018-10-15 | 2019-01-04 | Oppo广东移动通信有限公司 | 终端控制方法、装置、终端设备及存储介质 |
CN109361950A (zh) * | 2018-11-27 | 2019-02-19 | Oppo广东移动通信有限公司 | 视频处理方法、装置、电子设备及存储介质 |
CN109600654A (zh) * | 2018-11-27 | 2019-04-09 | Oppo广东移动通信有限公司 | 弹幕处理方法、装置以及电子设备 |
Also Published As
Publication number | Publication date |
---|---|
CN112118473A (zh) | 2020-12-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111901674B (zh) | 一种视频播放控制方法及装置 | |
US11218739B2 (en) | Live video broadcast method, live broadcast device and storage medium | |
US9473548B1 (en) | Latency reduction in streamed content consumption | |
EP3780637A1 (en) | Webpage video playback method and apparatus, electronic device and storage medium | |
US11482257B2 (en) | Image display method and apparatus | |
CN111078070B (zh) | Ppt视频弹幕的播放控制方法、装置、终端及介质 | |
US10271105B2 (en) | Method for playing video, client, and computer storage medium | |
CN110795056B (zh) | 调节显示参数的方法、装置、终端及存储介质 | |
CN110858827B (zh) | 启播加速方法、装置及计算机可读取存储介质 | |
CN109167890B (zh) | 一种音画同步方法和装置及显示设备 | |
CN114040243B (zh) | 直播间视频播放方法及装置 | |
WO2016207735A1 (en) | A system and methods thereof for auto-playing video content on mobile devices | |
WO2018184436A1 (zh) | 图片的显示方法和装置 | |
CN112118473B (zh) | 视频弹幕显示方法、装置、计算机设备及可读存储介质 | |
CN112437318A (zh) | 一种内容显示方法、装置、系统及存储介质 | |
US20240276031A1 (en) | Live room video playback | |
CN108769815B (zh) | 视频处理方法及其装置 | |
WO2017130035A1 (en) | A system and methods thereof for auto-playing video content on mobile devices | |
US20170161871A1 (en) | Method and electronic device for previewing picture on intelligent terminal | |
CN112118484B (zh) | 视频弹幕显示方法、装置、计算机设备及可读存储介质 | |
US11513937B2 (en) | Method and device of displaying video comments, computing device, and readable storage medium | |
WO2016160240A1 (en) | Digital content streaming from digital tv broadcast | |
CN105678688A (zh) | 一种图片处理方法及装置 | |
CN110582024A (zh) | 一种播放视频的方法和装置 | |
EP3522549A1 (en) | Information processing terminal, information processing method, and program |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |