一种避免弹幕重叠显示的方法及系统的利记博彩app

文档序号:10474239阅读:1530来源:国知局
一种避免弹幕重叠显示的方法及系统的利记博彩app
【专利摘要】本发明公开了一种避免弹幕重叠显示的方法及系统,该避免重叠显示的方法包括如下步骤:将所述直播显示页面分成n个弹幕播放通道;其中n满足如下条件:n×弹幕高度+(n?1)×弹幕间距≤直播显示页面;实时更新所述每个弹幕播放通道中的距离弹幕出口最远的播放弹幕的信息;分析所述信息,来计算下一待显示弹幕的运动状态并根据该状态进行播放。按照本发明实现的避免弹幕重叠显示的方法和系统,能够显著地提高弹幕显示资源的利用效率,并且显著地提高弹幕用户的交互体验。
【专利说明】
一种避免弹幕重叠显示的方法及系统
技术领域
[0001 ]本发明属于互联网弹幕式视频直播领域,更具体地,涉及一种避免弹幕重叠显示的方法及系统。
【背景技术】
[0002]弹幕视频直播方式是在用户观看视频直播的时候,将用户的表达通过弹幕的方式叠加在视频上,可以使其他同时在线的用户看到发送的信息,从而实现用户与用户、用户与主播之间的互动,实现观看视频直播时的代入感,随着直播技术的发展进步,这种弹幕视频直播方式已经得到越来越广泛的应用。
[0003]目前国内主流的弹幕视频直播平台将移动端作为重要的媒介,并吸引了众多的用户。
[0004]然后,目前大多数移动显示端上的弹幕显示技术较简单,并且多数的改进都集中在弹幕内容的花式显示上,在现有的播放技术中,通常都设置为弹幕的移动速度保持一致,弹幕存在重叠,特别是在弹幕量大的情况下,弹幕的重叠更为严重,往往是用户看不清信息交互的内容,极大地降低了直播中用户的参与度,由此,亟待进行研究避免弹幕进行重叠显示的方法。

【发明内容】

[0005]针对现有技术的以上缺陷或改进需求,本发明提供了一种避免弹幕重叠显示的方法,由此解决现有技术中的移动端的移动速度单一并且存在重叠的技术问题。
[0006]为实现上述目的,按照本发明的一个方面,提供了一种避免视频弹幕重叠显示的方法,其特征在于,该方法包括如下步骤:
[0007]将直播显示页面分成平行于弹幕运动方向的η个弹幕播放通道;其中η满足如下条件:η X弹幕高度+(n-丨)X弹幕间距 < 直播显示页面;
[0008]实时更新每个所述弹幕播放通道中的距离弹幕出口最远的播放弹幕的信息;
[0009]分析所述信息,获得下一待显示弹幕的运动状态,根据所述运动状态执行播放;所述运动状态包括所述下一待显示弹幕是否播放以及其播放通道与运动速度。
[0010]进一步地,所述信息为:记录离弹幕出口最远的播放弹幕与所述弹幕出口的距离I,以及所述播放弹幕的运动速度V,实时更新后获得Issf后=Isswv* At,At为更新的时间间隔。
[0011 ]进一步地,分析所述信息的过程为:若Isii后小于或等于O,则表示所述播放弹幕已播放完毕;若1_大于O并且小于所述弹幕播放通道长度,则表示可生成所述下一待显示弹幕的所述运行状态准备播放;若Iawg大于所述弹幕播放通道长度,则表示所述弹幕播放通道已布满弹幕。
[0012]进一步地,所述播放通道的选择依据如下原则:选择所述播放弹幕离所述弹幕出口最远的播放通道。
[0013]进一步地,在进行所述下一待显示弹幕运动速度的生成中,使得所述播放弹幕运动到所述弹幕出口的时间小于所述下一待显示弹幕的在整个所述弹幕播放通道长度中的播放时间。
[0014]本发明还公开了一种避免视频弹幕重叠显示的方法,其特征在于,该方法包括如下步骤:
[0015]STEPl:根据待显示弹幕的直播页面的高度,将直播页面分成η个弹幕播放通道;其中η满足如下条件:
[0016]η X弹幕高度+(n-丨)χ弹幕间距 < 直播显示页面;
[0017]STEP2:记录每个播放通道上距离弹幕出口最远的播放弹幕与所述弹幕出口之间的距离I,并且记录所述播放弹幕的运动速度V;
[0018]STEP3:经过时间间隔Δ t后,更新每个播放通道上的所述STEP2中的距离,即I熵后=laiflt-v* △ t,若Iaif后小于或等于所述弹幕显示通道的长度,转到步骤STEP4,若Iaif后大于所述弹幕显示通道的长度,则不读取弹幕;
[0019]STEP4:为所述下一待显示弹幕选择播放通道,选择所述播放弹幕离弹幕出口距离最远的播放通道;
[0020]STEP5:为所述下一待显示弹幕生成运行速度,使得所述播放弹幕运动到所述弹幕出口的时间小于所述下一待显示弹幕的在整个所述弹幕播放通道中的播放时间;
[0021 ] 重复步骤STEP2-STEP5,由此实现弹幕播放。
[0022 ]本发明还公开了一种避免弹幕重叠显示的系统,其特征在于,该系统包括:
[0023]弹幕获取单元,从网络或本地获取弹幕;
[0024]弹幕生成单元,用于为所述弹幕获取单元中的所述弹幕定制显示模式;
[0025]弹幕维护单元,其包括定时器和弹幕状态存储器,所述定时器用于获取弹幕数据和更新弹幕数据的定时控制,所述弹幕状态存储器依据所述定时控制更新位于播放通道的弹幕运动状态;所述弹幕状态存储器中存储离弹幕出口最远的播放弹幕与所述弹幕出口距离,及存储所述播放弹幕的运行速度;
[0026]弹幕动画生成单元,该单元依据所述弹幕状态存储器中的信息为下一待显示弹幕选择播放通道,以及生成其运动速度;
[0027]弹幕动画绘制单元,其依据所述弹幕动画生成单元生成的轨道及运算速度来播放。
[0028]进一步地,所述系统还包括弹幕回收单元,实现完成播放弹幕的回收处理。
[0029]进一步地,所述弹幕动画生成单元依据如下原则为下一待显示弹幕选择播放通道:选择所述播放弹幕离弹幕出口距离最远的播放通道。
[0030]进一步地,所述弹幕动画生成单元依据如下原则为下一待显示弹幕生成运动速度:使得所述播放弹幕运动到所述弹幕出口的时间小于所述下一待显示弹幕的在整个所述弹幕播放通道中的播放时间。
[0031]总体而言,通过本发明所构思的以上技术方案与现有技术相比,能够取得下列有益效果:
[0032](I)提出了弹幕重叠的问题,并且提出了一种避免重叠的解决方法及其系统;
[0033](2)在显示屏幕上对弹幕进行显示前的播放通道的划分,并为每个通道设置定时器和状态存储系统,实现了对弹幕显示的有效管理;
[0034](3)实时对运行中的弹幕的运行速度和运行距离进行运算和存储,从而来控制弹幕的有序播放,避免弹幕重叠碰撞。
[0035](4)依据每个播放通道上的最后一条弹幕的消息的状态,来决定是否进行下一弹幕的显示,如何显示,更加进一步地避免了重叠碰撞;
[0036](5)使得在弹幕充满整个显示屏幕的时候,不占用资源,合理利用内存。
【附图说明】
[0037]图1是按照本发明实现的避免弹幕重叠显示的方法的总体步骤框图;
[0038]图2是按照本发明实现的避免弹幕重叠显示的方法的执行细节步骤框图;
[0039]图3是按照本发明实现的避免弹幕重叠显示的模块组成结构示意图;
[0040]图4是按照本发明实现的避免弹幕重叠显示的方法在弹幕充满整个屏幕的效果显不O
【具体实施方式】
[0041 ]为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。此外,下面所描述的本发明各个实施方式中所涉及到的技术特征只要彼此之间未构成冲突就可以相互组合。
[0042]首先本发明提出了一种避免弹幕重叠显示的方法,该方法做如下的类比,类似于公路式的弹幕显示,将直播页面视作公路,将该公路划分为多条车道,而弹幕就是公路上运行的“车辆”,车辆能够由驾驶者控制来实现碰撞,而弹幕,也可以经过控制的设计来达到避免碰撞的效果。
[0043]如图1所示,是该避免弹幕重叠显示的总体步骤框图,其中该方法的总体思路就是:(I)对弹幕播放页面进行弹幕播放通道的设定,将其分为η个,其中原则为,每个弹幕播放通道的宽度要大于或等于待显示的弹幕的宽度,并且弹幕播放通道之间的距离设定为大于或等于O; (2)实时更新每个弹幕播放通道中的距离弹幕出口最远的播放弹幕的信息,实时地关注该弹幕的信息,可以获知弹幕在通道上的运行状态,也即是实时掌握了整条通道上的弹幕播放占有的信息;(3)分析上述信息,可以获得是否播放下一条待显示弹幕,并且可以生成该播放弹幕的运动状态。
[0044]具体地,如图2所示,其中该方法主要包括如下执行步骤:
[0045]STEPl:根据待显示弹幕的直播页面的高度h,将直播页面分成η个弹幕播放通道,该直播页面的宽度为w,该直播页面的宽度即弹幕播放通道的宽度,该通道数目η的选择可以依据弹幕生成时的字体大小来设置,以满足最大字体的弹幕能够容纳显示的标准来进行划分,具体为其中η满足如下条件:ηΧ弹幕高度+(η-1) X弹幕间距《直播显示页面;为弹幕播放通道设置一个定时器,时间间隔为A t,间隔上述定时时间间隔实现数据的更新;当然,对弹幕播放通道的选择,并不严格限定为高度,只要是随着弹幕播放方向的平行方向来设置播放通道即可;
[0046]STEP2:当弹幕以一定的运动速度在每个设定好的播放通道进行播放的时候,记录距离弹幕出口最远的播放弹幕与出口之间的距离I,并且记录该弹幕的运动速度V;
[0047]STEP3:开启定时器,经过时间间隔At后,更新每个播放通道上的上述步骤(2)中记录的距离弹幕出口最远的播放弹幕与出口之间的距离,其中更新的规则为,Isse= Issw-V* At,若Iaff后小于或等于0,则表示播放弹幕已播放完毕;若Iaff后大于O并且小于弹幕播放通道长度,则表示可生成下一待显示弹幕的运行状态准备播放;若Iaif后大于或等于弹幕播放通道长度,则表示弹幕播放通道已布满弹幕,当判定所有的弹幕播放通道已布满弹幕时,则停止进行新的弹幕读取;如果更新后明确该弹幕已经飘出页面外或者可以读取下一待显示弹幕,则跳转到下一个步骤STEP4;
[0048]STEP4:依据弹幕播放通道的宽度W,取上述所有弹幕显示通道中的I更新后最小的通道作为该待显示的弹幕的显示通道;
[0049]STEP5:在经过STEP4中的步骤选择完待显示通道后,接下来要生成该弹幕的运行速度,首先取一个区间类的随机数作为弹幕从进页面到出页面所需的时间t,其决定了弹幕的移动速度,并且计算前一行弹幕飘完所需时间是否比该设置的随机数时间长,如果是,则重置该时间t,使得其比前一行弹幕飘完所需的时间更长,避免同一个显示通道的弹幕发生碰撞,如果否,则无需重置该随机时间t;
[0050]由此开始下一个待显示的弹幕的显示,以此类推,保证弹幕显示界面的每个弹幕显示通道中显示的弹幕都不发生重叠,实现良好的直播互动。
[0051]作为另外一方面,如图3所示,本发明还提出了一种避免弹幕重叠显示的单元,该装置主要包括如下单元:
[0052](I)弹幕获取单元,负责从网络或本地中获取弹幕。
[0053](2)弹幕生成单元,该模块可定制个性化的弹幕显示,比如:个性字体多样颜色、图文混排等。
[0054](3)弹幕维护单元,该单元包括一个定时器和弹幕状态存储器,定时器用以定时控制获取弹幕数据和更新弹幕状态数组,后者用以存储当前整处于播放状态的弹幕的信息,包括距离数组和速度数组。
[0055](4)弹幕动画生成单元,该单元根据所述弹幕维护单元中的状态数组选择最合适的轨道作为新进入的弹幕的运动轨道,并负责计算下一待显示弹幕的运动速度,以保证在屏幕中弹幕之间不会发生重叠,并且还用于运算生成待播放弹幕的运动速度信息,该生成方式如步骤STEP5中所示。
[0056](5)弹幕动画绘制单元,该模块根据弹幕动画生成单元中计算得到的轨道和速度来执行弹幕播放。
[0057](6)弹幕回收模块,该模块对完成动画的弹幕进行回收,包括重用和销毁,重用可以减少弹幕生成的开销,而销毁则负责释放内存。
[0058]实施例1
[0059]按照本发明实现的一种避免弹幕重叠显示的方法,其具体包括如下步骤:
[0060]STEPl:根据待显示弹幕的直播页面的高度,将直播页面平分成η个弹幕播放通道,该弹幕播放通道的宽度为w,本实施例基于1S实现,试验环境为16GB的iPad Air2,屏幕尺寸为9.7英寸,屏幕分辨率为2048 X 1536,并且划分为34个弹幕行,其中定时器设置为每隔
0.02s读取弹幕数据,弹幕速度取5?1s之间的随机数;[0061 ] STEP2:当弹幕以一定的运动速度在每个设定好的播放通道进行播放的时候,记录距离弹幕出口最远的播放弹幕与出口之间的距离I,并且记录该弹幕的运动速度V;在【具体实施方式】中,弹幕维护单元中,同时定义有两个数组distance[;^Pspeed□,用来存储各自的播放通道上的距离弹幕出口最远的弹幕与弹幕出口的距离,以及该弹幕的运行速度,以上两个参数的初始值都设置为O ;
[0062]STEP3:经过时间间隔,更新数组distance值:distance[ i ] = distance[ i ]_speed
[i]*0.02,i为弹幕播放通道索引,如果diStance[i]小于或等于0,则表示弹幕已经飘出屏幕外,或者该值小,使得该通道留有足够的空间能够播放下一个待显示弹幕,可以重新从弹幕生成单元中读取待显示的弹幕,并且重置(1丨8丨31106[;[]=0,8口66(1[;[]=0,如果所有的distanCe[i]大于或等于页面宽度,说明该通道已被弹幕占满,暂时则不读取弹幕;
[0063]STEP4:读取下一个待显示的弹幕,计算该弹幕宽度w’,取上述所有弹幕显示通道中的diStance[ i ]的最小值作为该待显示弹幕的显示通道;假设该显示通道数为m;
[0064]STEP5:并且在经过STEP4的选择之后,取一个区间类的随机数作为该弹幕从进播放通道到完全出播放通道所需的时间为t,在5-lOs之间,其决定了弹幕的运行速度,此时判断distance [m]/ speed [m]与t进行比较,则重置t = distance [m]/ speed [m]或略大于该值,避免同行弹幕碰撞同时能保证弹幕过慢的通过,如果否,则无需重置t,最后,更新当前行上的距离distance[m] =w+w’,速度speed[m] =distance[m]/t;
[0065]由此开始弹幕的显示,以此类推,保证弹幕显示界面的每个弹幕显示通道中显示的弹幕都不发生重叠。
[0066]这种公路式的弹幕展示方式,将屏幕页面视作公路,划分为多条车道,弹幕以各自速度各行其道,彼此不会发生交错,而弹幕的速度则会根据同一车道上的弹幕之间的距离进行调整,即使速度不一致,也不会碰撞。
[0067]同时按照上述方法,可以在弹幕充满页面的时候,停止读取弹幕,知道页面有空余的空间,这样就可以保证即使在弹幕量大的情况下,依然不会发生弹幕重叠和弹幕无限堆积导致大量被占用的情况,如图4所示,是在页面被弹幕全部占满的情况下,也未发生重叠。
[0068]本领域的技术人员容易理解,以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。
【主权项】
1.一种避免视频弹幕重叠显示的方法,其特征在于,该方法包括如下步骤: 将直播显示页面分成平行于弹幕运动方向的η个弹幕播放通道;其中η满足如下条件:ηX弹幕高度+(η-1) X弹幕间距《直播显示页面; 实时更新每个所述弹幕播放通道中的距离弹幕出口最远的播放弹幕的信息; 分析所述信息,获得下一待显示弹幕的运动状态,根据所述运动状态执行播放;所述运动状态包括所述下一待显示弹幕是否播放以及其播放通道与运动速度。2.如权利要求1所述的避免视频弹幕重叠显示的方法,其特征在于,所述信息为:记录离弹幕出口最远的播放弹幕与所述弹幕出口的距离I,以及所述播放弹幕的运动速度V,实时更新后获得Isse=Δ t,Δ t为更新的时间间隔。3.如权利要求1或2所述的避免视频弹幕重叠显示的方法,其特征在于,分析所述信息的过程为:若Isse小于或等于O,则表示所述播放弹幕已播放完毕;若111|?后大于O并且小于所述弹幕播放通道长度,则表示可生成所述下一待显示弹幕的所述运行状态准备播放;若Isse大于所述弹幕播放通道长度,则表示所述弹幕播放通道已布满弹幕。4.如权利要求3所述的避免视频弹幕重叠显示的方法,其特征在于,所述播放通道的选择依据如下原则:选择所述播放弹幕离所述弹幕出口最远的播放通道。5.如权利要求4所述的避免视频弹幕重叠显示的方法,其特征在于,在进行所述下一待显示弹幕运动速度的生成中,使得所述播放弹幕运动到所述弹幕出口的时间小于所述下一待显示弹幕的在整个所述弹幕播放通道长度中的播放时间。6.一种避免视频弹幕重叠显示的方法,其特征在于,该方法包括如下步骤: STEPl:根据待显示弹幕的直播页面的高度,将直播页面分成η个弹幕播放通道;其中η满足如下条件: η X弹幕高度+(n-1) X弹幕间距 < 直播显示页面; STEP2:记录每个播放通道上距离弹幕出口最远的播放弹幕与所述弹幕出口之间的距离I,并且记录所述播放弹幕的运动速度V; STEP3:经过时间间隔Δ t后,更新每个播放通道上的所述STEP2中的距离,即I更新后=Δ t,若1?#后小于或等于所述弹幕显示通道的长度,转到步骤STEP4,若1??大于所述弹幕显示通道的长度,则不读取弹幕; STEP4:为所述下一待显示弹幕选择播放通道,选择所述播放弹幕离弹幕出口距离最远的播放通道; STEP5:为所述下一待显示弹幕生成运行速度,使得所述播放弹幕运动到所述弹幕出口的时间小于所述下一待显示弹幕的在整个所述弹幕播放通道中的播放时间; 重复步骤STEP2-STEP5,由此实现弹幕播放。7.一种避免弹幕重叠显示的系统,其特征在于,该系统包括: 弹幕获取单元,从网络或本地获取弹幕; 弹幕生成单元,用于为所述弹幕获取单元中的所述弹幕定制显示模式; 弹幕维护单元,其包括定时器和弹幕状态存储器,所述定时器用于获取弹幕数据和更新弹幕数据的定时控制,所述弹幕状态存储器依据所述定时控制更新位于播放通道的弹幕运动状态;所述弹幕状态存储器中存储离弹幕出口最远的播放弹幕与所述弹幕出口距离,及存储所述播放弹幕的运行速度; 弹幕动画生成单元,该单元依据所述弹幕状态存储器中的信息为下一待显示弹幕选择播放通道,以及生成其运动速度; 弹幕动画绘制单元,其依据所述弹幕动画生成单元生成的轨道及运算速度来播放。8.如权利要求7所述的避免弹幕重叠显示的系统,其特征在于,所述系统还包括弹幕回收单元,实现完成播放弹幕的回收处理。9.如权利要求8所述的避免弹幕重叠显示的系统,其特征在于,所述弹幕动画生成单元依据如下原则为下一待显示弹幕选择播放通道:选择所述播放弹幕离弹幕出口距离最远的播放通道。10.如权利要求9所述的避免弹幕重叠显示的系统,其特征在于,所述弹幕动画生成单元依据如下原则为下一待显示弹幕生成运动速度:使得所述播放弹幕运动到所述弹幕出口的时间小于所述下一待显示弹幕的在整个所述弹幕播放通道中的播放时间。
【文档编号】H04N21/435GK105828164SQ201610274576
【公开日】2016年8月3日
【申请日】2016年4月28日
【发明人】张华兵
【申请人】武汉斗鱼网络科技有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1