CN106792086B - 一种弹幕排版方法及排版系统 - Google Patents
一种弹幕排版方法及排版系统 Download PDFInfo
- Publication number
- CN106792086B CN106792086B CN201611140329.3A CN201611140329A CN106792086B CN 106792086 B CN106792086 B CN 106792086B CN 201611140329 A CN201611140329 A CN 201611140329A CN 106792086 B CN106792086 B CN 106792086B
- Authority
- CN
- China
- Prior art keywords
- barrage
- current
- space
- video
- list
- 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
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
- H04N21/4316—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 for displaying supplemental content in a region of the screen, e.g. an advertisement in a separate window
Landscapes
- Business, Economics & Management (AREA)
- Marketing (AREA)
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
- Controls And Circuits For Display Device (AREA)
Abstract
本发明提供一种弹幕排版方法,该方法包含:视频对应上传的弹幕组成该视频对应的弹幕列表;视频播放时,取出弹幕列表中设定为当前时间段播放的当前弹幕进行渲染;空间检测,若当前弹幕预设的显示路径未被占用,则在视频中加载显示该当前弹幕。本发明通过判断弹幕显示空间,合理安排弹幕的显示排布,易于用户观看弹幕,提高用户体验。
Description
技术领域
本发明涉及弹幕推送技术,具体涉及一种弹幕排版方法及排版系统。
背景技术
弹幕是指一种在观看视频时,大量以字幕形式呈现的评论与视频同在一个画面的现象。在视频上方大量飘过的评论如密集炮弹一般,故得名弹幕。弹幕会随着视频的播放实时在视频上呈现,这样观看者在观看该视频时能够看到其他观看者和自己发送的弹幕。
发明内容
本发明提供一种弹幕排版方法及排版系统,易于弹幕观看,提高用户体验。
为实现上述目的,本发明提供一种弹幕排版方法,其特点是,该方法包含:
视频对应上传的弹幕组成该视频对应的弹幕列表;
视频播放时,取出弹幕列表中设定为当前时间段播放的当前弹幕进行渲染;
空间检测,若当前弹幕预设的显示路径未被占用,则在视频中加载显示该当前弹幕。
上述当前弹幕为顶部弹幕,则从弹幕显示空间的最上方向下开始检测;若弹幕显示空间中存在具有当前弹幕高度的空间,则将该当前弹幕安排在该空间进行显示。
上述当前弹幕为底部弹幕,则从弹幕显示空间的最下方向上开始检测;若弹幕显示空间中存在具有当前弹幕高度的空间,则将该当前弹幕安排在这块空间进行显示。
上述当前弹幕为滚动弹幕或逆向弹幕,从弹幕显示空间由上至下开始检测;
若弹幕显示空间中存在具有该当前弹幕高度的空间,则将当前弹幕安排在该空间进行显示;
若弹幕显示空间中具有该弹幕高度的空间已经被占据,就进行碰撞检测,若检测当前弹幕不会与占用其显示路径的占用弹幕发生碰撞,即显示当前弹幕,否则继续向下进行碰撞检测。
上述碰撞检测包含:若占据当前弹幕的显示路径的占用弹幕离开弹幕显示空间的边界时,当前弹幕还未到达占用弹幕所离开的弹幕显示空间的边界,则判定不会发生碰撞,当前弹幕即以匀速运动在弹幕显示空间显示。
由上至下检测完弹幕显示空间后,仍没有当前弹幕显示的空间,即将当前弹幕安排在正在渲染的弹幕列表最后一条弹幕后在进行空间判断。
上述弹幕包含:开始时间、持续时间、内容、模式和字号大小的信息。
视频播放时,每经过第一预设时间即判断弹幕列表中是否有当前时间段需要显示的弹幕;预设时间为一帧视频。
视频播放时,每经过第二预设时间即判断正在渲染的弹幕列表中是否有弹幕已超出其显示时间段,若弹幕已经超出其显示时间段则将其移出正在渲染的弹幕列表。
一种弹幕排版系统,其特点是,该系统包含:
弹幕编制模块,其将针对特定视频上传的弹幕按时间顺序组成该视频对应的弹幕列表;
弹幕渲染模块,其对当前时间段需要显示的当前弹幕列成列表并进行渲染;
显示空间判断模块,其判断当前弹幕的显示路径是否被占用,若否则显示该当前弹幕,若是则进行碰撞检测;碰撞检测结果为不会碰撞则显示当前弹幕。
本发明一种弹幕排版方法及排版系统和现有技术相比,其优点在于,本发明通过判断弹幕显示空间,合理安排弹幕的显示排布,易于用户观看弹幕,提高用户体验。
附图说明
图1为本发明一种弹幕排版方法的流程图。
具体实施方式
以下结合附图,进一步说明本发明的具体实施例。
如图1所示,为一种弹幕排版方法的实施例,该方法具体包含以下步骤:
S1、服务器接收用户针对特定视频对应上传的弹幕,将该些弹幕按时间顺序组成该视频对应的有序弹幕列表。每条弹幕包含:开始时间、持续时间、内容、模式和字号大小的信息。
弹幕模式分为四种:滚动弹幕、逆向弹幕、顶部弹幕和底部弹幕。其中滚动弹幕为从右向左自上而下多行排列匀速滚动;逆向弹幕为从左向右自上而下多行排列匀速滚动;顶部弹幕为自上而下多行排列静止;底部弹幕为自下而上多行排列静止;四种模式的弹幕都匀速滚动或静止一段时间后移除弹幕。滚动弹幕、逆向弹幕、顶部弹幕和底部弹幕的排版空间相互独立。
S2、用户端播放视频时,服务器取出该视频对应的有序弹幕列表,并对有序弹幕列表中设定为当前时间段播放的当前弹幕进行渲染。
具体的,服务器在视频播放的每一帧(通常每一帧为1/60秒)都进行一次判断,判断有序弹幕列表中是否有预设为当前时间段进行显示的当前弹幕,若是则取出该当前弹幕进行渲染,若否则跳转回S2,继续判断。
S3、弹幕预渲染。首先,将当前弹幕预渲染到内存,得到渲染后的宽高,若超出弹幕显示空间的宽高,则直接丢弃,若未超出弹幕显示空间的宽搞,则判定该弹幕可显示,并对该弹幕进行渲染,进行空间检测后加入到弹幕显示空间。弹幕显示空间是指在例如浏览器页面或播放软件等视频播放界面中一块用于显示弹幕的x*y像素的矩形区域,其中x*y不是一个固定值。若需显示的当前弹幕的字体大小超过该弹幕显示空间的长宽范围,则系统判定不对该弹幕进行渲染和显示。
S4、弹幕空间检测,若当前弹幕预设的显示路径未被占用,则在视频中加载显示该当前弹幕。 具体有以下情况:
1)若当前弹幕为顶部弹幕,则从弹幕显示空间的最上方向下开始检测;若弹幕显示空间中存在具有当前弹幕高度的空间,则将该当前弹幕安排在该空间,将该当前弹幕加入正在渲染的弹幕列表中最先进行显示的位置(列表尾部),并随后在弹幕显示空间进行显示。
2)若当前弹幕为底部弹幕,则从弹幕显示空间的最下方向上开始检测;若弹幕显示空间中存在具有当前弹幕高度的空间,则将该当前弹幕安排在这块空间,将该当前弹幕加入正在渲染的弹幕列表中最先进行显示的位置(列表尾部),并随后在弹幕显示空间进行显示。
3)若当前弹幕为滚动弹幕或逆向弹幕,从弹幕显示空间由上至下开始检测。若弹幕显示空间中存在具有该当前弹幕高度的空间,则将当前弹幕安排在该空间进行显示。
4)若上述顶部弹幕、底部弹幕滚动弹幕或逆向弹幕的弹幕显示空间中具有该弹幕高度的空间已经被占用,就进行碰撞检测,若检测当前弹幕不会与占用其显示路径的占用弹幕发生碰撞,即显示当前弹幕,否则继续向下进行碰撞检测。其中,碰撞检测具体包含以下流程:
步骤a、设占据当前弹幕的显示路径的占用弹幕自开始碰撞检测起离开屏幕(占用弹幕整体离开屏幕边线)的时间t1,当前弹幕自开始碰撞检测起到达屏幕中央(当前弹幕的中线与屏幕中线重合)的时间t2;判断t1是否大于t2。
若是,满足t1>t2,占据当前弹幕的显示路径的占用弹幕离开弹幕显示空间的边界时,当前弹幕还未到达占用弹幕所离开的弹幕显示空间的边界,则判定不会发生碰撞,即占用弹幕在离开弹幕显示空间之前都不会与当前弹幕的内容造成重叠现象,碰撞检测完成,对当前弹幕进行渲染后以匀速运动在弹幕显示空间显示当前弹幕。
若否,t1<t2,则跳转到步骤b。
步骤b、若由上至下检测完弹幕显示空间后,弹幕一直由于判定为可能碰撞,仍没有当前弹幕显示的空间,没有位置可供显示,即将当前弹幕安排在正在渲染的弹幕列表最后一条弹幕后再进行空间判断。跳转到步骤c。
步骤c、如果最后一条弹幕之后仍然没有当前弹幕显示的空间,弹幕会造成碰撞,即判断弹幕是否为必要显示的弹幕。
若是,该当前弹幕为必要显示的弹幕,则忽略之前的检测,从弹幕容器最上方的位置开始重新进行碰撞检测,直到有位置插入容器为止。,这种做法会造成弹幕碰撞,即内容会覆盖在之前的弹幕上,但也保持原有的规律。
若否,该当前弹幕为非必要显示的弹幕,则从弹幕渲染列表中移除该弹幕。
进一步的,视频播放时,每经过一帧(1/60秒)都进行一个判断:如果正在渲染的弹幕列表中的弹幕已经超出其显示时间,则移除该弹幕,并将其移出正在渲染的弹幕列表。
本发明还公开了一种弹幕排版系统,该系统包含:弹幕编制模块、连接弹幕编制模块输出端的弹幕渲染模块和连接弹幕渲染模块输出端的显示空间判断模块;显示空间判断模块输出端连接外接的弹幕输出控制系统。
弹幕编制模块用于将针对特定视频上传的弹幕按时间顺序组成该视频对应的弹幕列表。
弹幕渲染模块用于对当前时间段需要显示的当前弹幕列成列表并进行渲染。
显示空间判断模块用于实行上述弹幕排版方法中S4弹幕空间检测的方法流程。判断当前弹幕的显示路径是否被占用,若否则下达显示该当前弹幕的指令,若是则进行碰撞检测;碰撞检测结果为不会碰撞则下达显示当前弹幕的指令,若判定会发生碰撞则移除该弹幕。
尽管本发明的内容已经通过上述优选实施例作了详细介绍,但应当认识到上述的描述不应被认为是对本发明的限制。在本领域技术人员阅读了上述内容后,对于本发明的多种修改和替代都将是显而易见的。因此,本发明的保护范围应由所附的权利要求来限定。
Claims (8)
1.一种弹幕排版方法,其特征在于,该方法包含:
视频对应上传的弹幕组成该视频对应的有序弹幕列表;
视频播放时,取出有序弹幕列表中设定为当前时间段播放的当前弹幕进行渲染;
空间检测,若当前弹幕预设的显示路径未被占用,则在视频中加载显示该当前弹幕;
若弹幕显示空间中具有该弹幕高度的空间已经被占用,就进行碰撞检测,若检测当前弹幕不会与占用其显示路径的占用弹幕发生碰撞,即显示当前弹幕,否则继续向下进行碰撞检测;
由上至下检测完弹幕显示空间后,仍没有当前弹幕显示的空间,即将当前弹幕安排在正在渲染的弹幕列表最后一条弹幕后再 进行空间判断;
如果最后一条弹幕之后仍然没有当前弹幕显示的空间,弹幕会造成碰撞,即判断弹幕是否为必要显示的弹幕;
若该当前弹幕为必要显示的弹幕,则忽略之前的碰撞检测结果,从弹幕容器最上方的位置开始重新进行碰撞检测,直到有位置插入容器为止,若该当前弹幕为非必要显示的弹幕,则从弹幕渲染列表中移除该弹幕。
2.如权利要求1所述的弹幕排版方法,其特征在于,所述当前弹幕为顶部弹幕,则从弹幕显示空间的最上方向下开始检测;若弹幕显示空间中存在具有当前弹幕高度的空间,则将该当前弹幕安排在该空间进行显示。
3.如权利要求1所述的弹幕排版方法,其特征在于,所述当前弹幕为底部弹幕,则从弹幕显示空间的最下方向上开始检测;若弹幕显示空间中存在具有当前弹幕高度的空间,则将该当前弹幕安排在这块空间进行显示。
4.如权利要求1所述的弹幕排版方法,其特征在于,所述当前弹幕为滚动弹幕或逆向弹幕,从弹幕显示空间由上至下开始检测;若弹幕显示空间中存在具有该当前弹幕高度的空间,则将当前弹幕安排在该空间进行显示。
5.如权利要求1所述的弹幕排版方法,其特征在于,所述碰撞检测包含:若占据当前弹幕的显示路径的占用弹幕离开弹幕显示空间的边界时,当前弹幕还未到达占用弹幕所离开的弹幕显示空间的边界,则判定不会发生碰撞,当前弹幕即以匀速运动在弹幕显示空间显示。
6.如权利要求1所述的弹幕排版方法,其特征在于,视频播放时,每经过第一预设时间即判断弹幕列表中是否有当前时间段需要显示的弹幕;预设时间为一帧视频。
7.如权利要求1所述的弹幕排版方法,其特征在于,视频播放时,每经过第二预设时间即判断正在渲染的弹幕列表中是否有弹幕已超出其显示时间段,若弹幕已经超出其显示时间段则将其移出正在渲染的弹幕列表。
8.一种适用于如权利要求1至7中任意一项权利要求所述弹幕排版方法的弹幕排版系统,其特征在于,该系统包含:
弹幕编制模块,其将针对特定视频上传的弹幕按时间顺序组成该视频对应的弹幕列表;
弹幕渲染模块,其对当前时间段需要显示的当前弹幕列成列表并进行渲染;
显示空间判断模块,其判断当前弹幕的显示路径是否被占用,若否则显示该当前弹幕,若是则进行碰撞检测;碰撞检测结果为不会碰撞则显示当前弹幕。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201611140329.3A CN106792086B (zh) | 2016-12-12 | 2016-12-12 | 一种弹幕排版方法及排版系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201611140329.3A CN106792086B (zh) | 2016-12-12 | 2016-12-12 | 一种弹幕排版方法及排版系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN106792086A CN106792086A (zh) | 2017-05-31 |
CN106792086B true CN106792086B (zh) | 2019-08-16 |
Family
ID=58876076
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201611140329.3A Active CN106792086B (zh) | 2016-12-12 | 2016-12-12 | 一种弹幕排版方法及排版系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN106792086B (zh) |
Families Citing this family (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107197355B (zh) * | 2017-06-02 | 2020-02-21 | 北京潘达互娱科技有限公司 | 弹幕显示方法及装置 |
CN107360459B (zh) * | 2017-07-07 | 2021-02-02 | 腾讯科技(深圳)有限公司 | 一种弹幕的处理方法、装置和存储介质 |
CN108696767B (zh) * | 2018-05-15 | 2021-05-25 | 北京字节跳动网络技术有限公司 | 弹幕播放方法、装置、计算机可读存储介质和终端 |
CN108696766B (zh) * | 2018-05-15 | 2022-01-14 | 北京字节跳动网络技术有限公司 | 弹幕显示方法、装置和计算机可读存储介质 |
CN109379604B (zh) * | 2018-08-15 | 2021-04-09 | 深圳点猫科技有限公司 | 一种基于教育云平台的视频弹幕制作方法及电子设备 |
CN111031376B (zh) * | 2019-11-25 | 2020-09-25 | 上海哔哩哔哩科技有限公司 | 基于微信小程序的弹幕处理方法和系统 |
CN110958480A (zh) * | 2019-11-28 | 2020-04-03 | 湖南快乐阳光互动娱乐传媒有限公司 | 一种弹幕显示方法 |
CN114302212B (zh) * | 2021-12-30 | 2024-03-15 | 北京爱奇艺科技有限公司 | 一种视频弹幕排版方法、装置、设备及存储介质 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105828164A (zh) * | 2016-04-28 | 2016-08-03 | 武汉斗鱼网络科技有限公司 | 一种避免弹幕重叠显示的方法及系统 |
CN105992026A (zh) * | 2015-02-11 | 2016-10-05 | 无锡掌睿星软件技术有限公司 | 一种显示弹幕评论信息的方法和装置 |
CN106162298A (zh) * | 2015-03-27 | 2016-11-23 | 天脉聚源(北京)科技有限公司 | 一种实现弹幕的方法和系统 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4137139B2 (ja) * | 2006-04-28 | 2008-08-20 | 株式会社スクウェア・エニックス | ビデオゲーム処理装置、およびビデオゲーム処理プログラム |
-
2016
- 2016-12-12 CN CN201611140329.3A patent/CN106792086B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105992026A (zh) * | 2015-02-11 | 2016-10-05 | 无锡掌睿星软件技术有限公司 | 一种显示弹幕评论信息的方法和装置 |
CN106162298A (zh) * | 2015-03-27 | 2016-11-23 | 天脉聚源(北京)科技有限公司 | 一种实现弹幕的方法和系统 |
CN105828164A (zh) * | 2016-04-28 | 2016-08-03 | 武汉斗鱼网络科技有限公司 | 一种避免弹幕重叠显示的方法及系统 |
Also Published As
Publication number | Publication date |
---|---|
CN106792086A (zh) | 2017-05-31 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106792086B (zh) | 一种弹幕排版方法及排版系统 | |
US9431059B2 (en) | Information processing method and electronic device thereof | |
CN102129352B (zh) | 用于表示动画菜单按钮的方法 | |
US20100156916A1 (en) | Display device | |
CN111970532B (zh) | 视频播放方法、装置及设备 | |
CN106162298B (zh) | 一种实现弹幕的方法和系统 | |
CN105635848A (zh) | 一种弹幕显示方法及终端 | |
US20140189516A1 (en) | Video preview display method and terminal device | |
US9984056B2 (en) | Display of user comments to timed presentation | |
CN109126131B (zh) | 游戏画面显示方法、存储介质及终端 | |
CN102270300A (zh) | 图像处理设备、图像处理方法和程序 | |
CN108984137A (zh) | 双屏显示方法及其系统、计算机可读存储介质 | |
CN107027068A (zh) | 渲染方法、解码方法、播放多媒体数据流的方法及装置 | |
CN108200479B (zh) | 基于流式文档的弹幕的播放方法、服务器及弹幕播放系统 | |
CN106249980B (zh) | 基于弹幕的信息呈现方法、信息呈现装置及用户设备 | |
US20100066905A1 (en) | System, method and device for displaying video signals | |
CN105679213A (zh) | 一种单一显示屏分屏显示播放的方法及播放机 | |
JP5566120B2 (ja) | 表示制御装置、方法及びプログラム並びに記録媒体 | |
US20160284383A1 (en) | Control apparatus, control method, and non-transitory computer-readable storage medium | |
CN107197182A (zh) | 一种在电视上显示屏幕菜单的方法、装置及电视 | |
US20140071343A1 (en) | Enhanced closed caption feature | |
US20100054713A1 (en) | Video reproducing apparatus | |
CN112995774A (zh) | 一种视频播放方法、装置、终端及存储介质 | |
JP2007011201A (ja) | 画像発生装置及び画像表示装置並びに画像発生方法及び画像表示方法 | |
JP2008158008A (ja) | メッセージ交換装置 |
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 |