CN113259772B - 弹幕处理方法、系统、设备和存储介质 - Google Patents
弹幕处理方法、系统、设备和存储介质 Download PDFInfo
- Publication number
- CN113259772B CN113259772B CN202110480568.8A CN202110480568A CN113259772B CN 113259772 B CN113259772 B CN 113259772B CN 202110480568 A CN202110480568 A CN 202110480568A CN 113259772 B CN113259772 B CN 113259772B
- Authority
- CN
- China
- Prior art keywords
- bullet screen
- barrage
- track point
- point position
- display
- 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
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/47—End-user applications
- H04N21/478—Supplemental services, e.g. displaying phone caller identification, shopping application
- H04N21/4788—Supplemental services, e.g. displaying phone caller identification, shopping application communicating with other users, e.g. chatting
Abstract
本申请公开了一种弹幕处理方法、系统、设备和存储介质,属于计算机处理技术领域。所述方法包括:获取用户输入的对应目标视频的弹幕内容;获取用户输入的所述弹幕内容对应的运动轨迹数据;向服务器发送对应所述目标视频的弹幕发布请求,其中,所述弹幕发布请求中携带有所述弹幕内容和所述运动轨迹数据。采用本申请,使得用户可以根据自身观看需求设置弹幕内容的运动轨迹,提高了弹幕显示形式的多样性和灵活性。
Description
技术领域
本申请涉及计算机处理技术领域,特别涉及一种弹幕处理方法、系统、设备和存储介质。
背景技术
现今,存在许多的视频应用程序,供用户观看电影、综艺等视频,在观看视频时,一些用户可以通过发布弹幕内容的方式来发表自己的看法和评价。通常的弹幕显示形式为沿直线显示,例如,常规的弹幕显示形式为弹幕内容在视频播放界面由右到左的水平移动,更高级一些的弹幕显示形式为可以沿斜线移动,但这种沿直线显示的形式较为单一,灵活性差。
发明内容
本申请实施例提供了一种弹幕处理方法,能够解决现有技术中弹幕显示形式较为单一,灵活性差的问题。
第一方面,提供了一种弹幕处理方法,所述方法包括:
获取用户输入的对应目标视频的弹幕内容;
当检测到用户的划动操作时,获取所述划动操作的操作点位置作为弹幕轨迹点位置,得到所述弹幕内容对应的运动轨迹数据;
向服务器发送对应所述目标视频的弹幕发布请求,其中,所述弹幕发布请求中携带有所述弹幕内容和所述运动轨迹数据。
在一种可能的实现方式中,所述当检测到用户的划动操作时,获取所述划动操作的操作点位置作为弹幕轨迹点位置,得到所述弹幕内容对应的运动轨迹数据,包括:
当检测到用户的划动操作时,按预设周期时长获取所述划动操作的操作点位置作为弹幕轨迹点位置,直到满足结束条件结束获取动作;
将各弹幕轨迹点位置按先后获取顺序排列得到所述弹幕内容对应的运动轨迹数据。
在一种可能的实现方式中,所述当检测到用户的划动操作时,获取所述划动操作的操作点位置作为弹幕轨迹点位置,得到所述弹幕内容对应的运动轨迹数据,包括:
当检测到用户的划动操作时,将所述划动操作的起始操作点位置确定为弹幕轨迹点位置;在所述划动操作持续过程中,每当所述划动操作在一个弹幕轨迹点位置之后的持续时长达到第一时长阈值、或所述划动操作在一个弹幕轨迹点位置之后的划动距离达到距离阈值时,将所述划动操作的当前操作点位置点确定为弹幕轨迹点位置,直到满足结束条件结束确定动作;
将各弹幕轨迹点位置按先后获取顺序排列得到所述弹幕内容对应的运动轨迹数据。
在一种可能的实现方式中,所述将所述划动操作的当前操作点位置点确定为弹幕轨迹点位置之后,还包括:
将所述划动操作由前一弹幕轨迹点位置至所述前一弹幕轨迹点位置的后一弹幕轨迹点位置的持续时长,确定为两个相邻弹幕轨迹点位置之间的间隔时长;
所述将各弹幕轨迹点位置按先后获取顺序排列得到所述弹幕内容对应的运动轨迹数据,包括:
将各弹幕轨迹点位置以及各个相邻弹幕轨迹点位置之间的间隔时长按先后获取顺序排列,得到所述弹幕内容对应的运动轨迹数据。
在一种可能的实现方式中,所述结束条件包括所述划动操作结束或所述划动操作的持续时长达到第二时长阈值。
在一种可能的实现方式中,所述方法还包括:获取在用户开始输入所述运动轨迹数据时所述目标视频的播放时间点,作为弹幕显示开始时间点;
将所述弹幕显示开始时间点携带在所述弹幕发布请求中向所述服务器发送。
第二方面,提供了一种弹幕处理方法,所述方法包括:
接收第一终端发送的对应目标视频的弹幕发布请求,其中,所述弹幕发布请求中携带有弹幕内容和运动轨迹数据;
向播放所述目标视频的第二终端发送弹幕显示消息,其中,所述弹幕显示消息中携带有所述弹幕内容和所述运动轨迹数据。
在一种可能的实现方式中,所述弹幕发布请求中还携带有弹幕显示开始时间点,所述弹幕显示消息中还携带有所述弹幕显示开始时间点。
第三方面,提供了一种弹幕处理方法,所述方法包括:
播放目标视频;
接收服务器发送的对应目标视频的弹幕显示消息,其中所述弹幕显示消息携带有弹幕内容和运动轨迹数据,所述运动轨迹数据包括按顺序排列的多个弹幕轨迹点位置;
确定所述顺序中每两个相邻的弹幕轨迹点位置之间的间隔时长;
在所述目标视频播放过程中,根据所述多个弹幕轨迹点位置和所述顺序中每两个相邻的弹幕轨迹点位置之间的间隔时长,对所述弹幕内容进行移动显示。
在一种可能的实现方式中,所述确定所述顺序中每两个相邻的弹幕轨迹点位置之间的间隔时长,包括:
根据预设弹幕显示时长、所述多个弹幕轨迹点位置和所述多个弹幕轨迹点位置的排列顺序,确定所述顺序中每两个相邻的弹幕轨迹点位置之间的间隔时长;
所述根据所述多个弹幕轨迹点位置和所述顺序中每两个相邻的弹幕轨迹点位置之间的间隔时长,对所述弹幕内容进行移动显示,包括:
按照所述多个弹幕轨迹点位置的排列顺序,逐个在弹幕轨迹点位置处显示所述弹幕内容,其中,所述弹幕内容在任一弹幕轨迹点位置处的显示时长等于所述任一弹幕轨迹点位置与下一个弹幕轨迹点位置之间的间隔时长。
在一种可能的实现方式中,所述
运动轨迹数据还包括用于获取弹幕轨迹点位置的预设周期时长;
所述确定所述顺序中每两个相邻的弹幕轨迹点位置之间的间隔时长,包括:
将所述预设周期时长确定为所述顺序中每两个相邻的弹幕轨迹点位置之间的间隔时长;
所述根据所述多个弹幕轨迹点位置和所述顺序中每两个相邻的弹幕轨迹点位置之间的间隔时长,对所述弹幕内容进行移动显示,包括:
按照所述多个弹幕轨迹点位置的排列顺序,逐个在弹幕轨迹点位置处显示所述弹幕内容,其中,所述弹幕内容在任一弹幕轨迹点位置处的显示时长等于所述任一弹幕轨迹点位置与下一个弹幕轨迹点位置之间的间隔时长。
在一种可能的实现方式中,所述运动轨迹数据还包括所述顺序中每两个相邻弹幕轨迹点位置之间的间隔时长;
所述确定所述顺序中每两个相邻的弹幕轨迹点位置之间的间隔时长,包括:
在所述运动轨迹数据中获取所述顺序中每两个相邻弹幕轨迹点位置之间的间隔时长;
所述根据所述多个弹幕轨迹点位置和所述顺序中每两个相邻的弹幕轨迹点位置之间的间隔时长,对所述弹幕内容进行移动显示,包括:
按照所述多个弹幕轨迹点位置的排列顺序,逐个在弹幕轨迹点位置处显示所述弹幕内容,其中,所述弹幕内容在任一弹幕轨迹点位置处的显示时长等于所述任一弹幕轨迹点位置与下一个弹幕轨迹点位置之间的间隔时长。
在一种可能的实现方式中,所述弹幕显示消息中还携带有弹幕显示开始时间点;
所述根据所述多个弹幕轨迹点位置和所述顺序中每两个相邻的弹幕轨迹点位置之间的间隔时长,对所述弹幕内容进行移动显示,包括:
当所述目标视频播放至所述弹幕显示开始时间点时,根据所述多个弹幕轨迹点位置和所述顺序中每两个相邻的弹幕轨迹点位置之间的间隔时长,对所述弹幕内容进行移动显示。
第四方面,提供一种弹幕处理装置,所述装置包括:
第一获取模块,用于获取用户输入的对应目标视频的弹幕内容;
第二获取模块,用于当检测到用户的划动操作时,获取所述划动操作的操作点位置作为弹幕轨迹点位置,得到所述弹幕内容对应的运动轨迹数据;
第一发送模块,用于向服务器发送对应所述目标视频的弹幕发布请求,其中,所述弹幕发布请求中携带有所述弹幕内容和所述运动轨迹数据。
在一种可能的实现方式中,所述第二获取模块,用于:
当检测到用户的划动操作时,按预设周期时长获取所述划动操作的操作点位置作为弹幕轨迹点位置,直到满足结束条件结束获取动作;
将各弹幕轨迹点位置按先后获取顺序排列得到所述弹幕内容对应的运动轨迹数据。
在一种可能的实现方式中,所述第二获取模块,用于:
当检测到用户的划动操作时,将所述划动操作的起始操作点位置确定为弹幕轨迹点位置;在所述划动操作持续过程中,每当所述划动操作在一个弹幕轨迹点位置之后的持续时长达到第一时长阈值、或所述划动操作在一个弹幕轨迹点位置之后的划动距离达到距离阈值时,将所述划动操作的当前操作点位置点确定为弹幕轨迹点位置,直到满足结束条件结束确定动作;
将各弹幕轨迹点位置按先后获取顺序排列得到所述弹幕内容对应的运动轨迹数据。
在一种可能的实现方式中,所述第二获取模块,还用于:
将所述划动操作由前一弹幕轨迹点位置至所述前一弹幕轨迹点位置的后一弹幕轨迹点位置的持续时长,确定为两个相邻弹幕轨迹点位置之间的间隔时长;
所述第二获取模块,用于:
将各弹幕轨迹点位置以及各个相邻弹幕轨迹点位置之间的间隔时长按先后获取顺序排列,得到所述弹幕内容对应的运动轨迹数据。
在一种可能的实现方式中,所述结束条件包括所述划动操作结束或所述划动操作的持续时长达到第二时长阈值。
在一种可能的实现方式中,所述装置还用于:获取在用户开始输入所述运动轨迹数据时所述目标视频的播放时间点,作为弹幕显示开始时间点;
将所述弹幕显示开始时间点携带在所述弹幕发布请求中向所述服务器发送。
第五方面,提供一种弹幕处理装置,所述装置包括:
第一接收模块,用于接收第一终端发送的对应目标视频的弹幕发布请求,其中,所述弹幕发布请求中携带有弹幕内容和运动轨迹数据;
第二发送模块,用于向播放所述目标视频的第二终端发送弹幕显示消息,其中,所述弹幕显示消息中携带有所述弹幕内容和所述运动轨迹数据。
在一种可能的实现方式中,所述弹幕发布请求中还携带有弹幕显示开始时间点,所述弹幕显示消息中还携带有所述弹幕显示开始时间点。
第六方面,提供一种弹幕处理装置,所述装置包括:
播放模块,用于播放目标视频;
第二接收模块,用于接收服务器发送的对应目标视频的弹幕显示消息,其中所述弹幕显示消息携带有弹幕内容和运动轨迹数据,所述运动轨迹数据包括按顺序排列的多个弹幕轨迹点位置;
确定模块,用于确定所述顺序中每两个相邻的弹幕轨迹点位置之间的间隔时长;
显示模块,用于在所述目标视频播放过程中,根据所述多个弹幕轨迹点位置和所述顺序中每两个相邻的弹幕轨迹点位置之间的间隔时长,对所述弹幕内容进行移动显示。
在一种可能的实现方式中,所述确定模块,用于:
根据预设弹幕显示时长、所述多个弹幕轨迹点位置和所述多个弹幕轨迹点位置的排列顺序,确定所述顺序中每两个相邻的弹幕轨迹点位置之间的间隔时长;
所述显示模块,用于:
按照所述多个弹幕轨迹点位置的排列顺序,逐个在弹幕轨迹点位置处显示所述弹幕内容,其中,所述弹幕内容在任一弹幕轨迹点位置处的显示时长等于所述任一弹幕轨迹点位置与下一个弹幕轨迹点位置之间的间隔时长。
在一种可能的实现方式中,所述运动轨迹数据还包括用于获取弹幕轨迹点位置的预设周期时长;
所述确定模块,用于:
将所述预设周期时长确定为所述顺序中每两个相邻的弹幕轨迹点位置之间的间隔时长;
所述显示模块,用于:
按照所述多个弹幕轨迹点位置的排列顺序,逐个在弹幕轨迹点位置处显示所述弹幕内容,其中,所述弹幕内容在任一弹幕轨迹点位置处的显示时长等于所述任一弹幕轨迹点位置与下一个弹幕轨迹点位置之间的间隔时长。
在一种可能的实现方式中,所述运动轨迹数据还包括所述顺序中每两个相邻弹幕轨迹点位置之间的间隔时长;
所述确定模块,用于:
在所述运动轨迹数据中获取所述顺序中每两个相邻弹幕轨迹点位置之间的间隔时长;
所述显示模块,用于:
按照所述多个弹幕轨迹点位置的排列顺序,逐个在弹幕轨迹点位置处显示所述弹幕内容,其中,所述弹幕内容在任一弹幕轨迹点位置处的显示时长等于所述任一弹幕轨迹点位置与下一个弹幕轨迹点位置之间的间隔时长。
在一种可能的实现方式中,所述弹幕显示消息中还携带有弹幕显示开始时间点;
所述显示模块,用于:
当所述目标视频播放至所述弹幕显示开始时间点时,根据所述多个弹幕轨迹点位置和所述顺序中每两个相邻的弹幕轨迹点位置之间的间隔时长,对所述弹幕内容进行移动显示。
第七方面,提供一种弹幕处理系统,所述弹幕处理系统包括第一终端、第二终端和服务器,其中:
所述第一终端,用于获取用户输入的对应目标视频的弹幕内容;当检测到用户的划动操作时,获取所述划动操作的操作点位置作为弹幕轨迹点位置,得到所述弹幕内容对应的运动轨迹数据;向所述服务器发送对应所述目标视频的弹幕发布请求,其中,所述弹幕发布请求中携带有所述弹幕内容和所述运动轨迹数据;
所述服务器,用于接收所述第一终端发送的对应目标视频的弹幕发布请求;向播放所述目标视频的所述第二终端发送弹幕显示消息,其中,所述弹幕显示消息中携带有所述弹幕内容和所述运动轨迹数据,所述运动轨迹数据包括按顺序排列的多个弹幕轨迹点位置;
所述第二终端,用于播放所述目标视频;接收所述服务器发送的对应目标视频的弹幕显示消息;确定所述顺序中每两个相邻的弹幕轨迹点位置之间的间隔时长;在所述目标视频播放过程中,根据所述多个弹幕轨迹点位置和所述顺序中每两个相邻的弹幕轨迹点位置之间的间隔时长,对所述弹幕内容进行移动显示。
第八方面,提供了一种计算机设备,所述计算机设备包括处理器和存储器,存储器中存储有至少一条指令,指令由处理器加载并执行以实现弹幕处理方法所执行的操作。
第九方面,提供了一种计算机可读存储介质,存储介质中存储有至少一条指令,指令由处理器加载并执行以实现弹幕处理方法所执行的操作。
本申请实施例提供的技术方案带来的有益效果是:本申请实施例中提到的方案,可以根据获取到的用户输入的运动轨迹数据,对弹幕内容进行移动显示,从而使得用户可以根据自身观看需求设置弹幕内容的运动轨迹,提高了弹幕显示形式的多样性和灵活性。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本申请实施例提供的一种弹幕处理方法的流程图;
图2是本申请实施例提供的一种目标视频的播放界面的示意图;
图3是本申请实施例提供的一种弹幕轨迹输入界面的示意图;
图4是本申请实施例提供的一种弹幕轨迹输入界面的示意图;
图5是本申请实施例提供的一种弹幕处理方法的流程图;
图6是本申请实施例提供的一种弹幕处理方法的流程图;
图7是本申请实施例提供的一种弹幕处理方法的流程图;
图8是本申请实施例提供的一种弹幕轨迹点位置的示意图;
图9是本申请实施例提供的一种弹幕处理装置的结构示意图;
图10是本申请实施例提供的一种弹幕处理装置的结构示意图;
图11是本申请实施例提供的一种弹幕处理装置的结构示意图;
图12是本申请实施例提供的一种弹幕处理系统的结构示意图;
图13是本申请实施例提供的一种终端的结构框图;
图14是本申请实施例提供的一种服务器的结构框图。
具体实施方式
为使本申请的目的、技术方案和优点更加清楚,下面将结合附图对本申请实施方式作进一步地详细描述。
本申请实施例提供了一种弹幕处理方法,该方法可以应用在弹幕处理系统中。弹幕处理系统用于显示出可以沿着运动轨迹进行移动显示的弹幕内容。弹幕处理系统可以包括终端和服务器,终端可以是台式计算机、笔记本计算机、平板电脑、手机等。服务器可以是一台单独的服务器,也可以是运行在实体机上的虚拟机,还可以是一个服务器组,服务器组中的每台服务器可以分别负责方法过程中的不同处理。
终端可以包括处理器、存储器和通信部件等。
处理器可以是CPU(central processing unit,中央处理器),处理器用于获取用户输入的弹幕内容、获取用户输入的运动轨迹数据,等等。
存储器可以是各种易失性存储器或非易失性存储器,如SSD(solid state disk,固态硬盘)、DRAM(dynamic random access memory,动态随机存取存储器)内存等。存储器可以用于存储弹幕内容和运动轨迹数据等的相关数据。
通信部件可以是有线网络连接器、WiFi(wireless fidelity,无线保真)模块、蓝牙模块、蜂巢网通信模块等。通信部件可以用于与服务器进行通信,例如,通信部件可以向服务器发送弹幕发布请求等。
计算机设备可以包括处理器、存储器和通信部件等。处理器可以是CPU,处理器可以用于获取用户输入的弹幕内容、获取用户输入的弹幕内容对应的运动轨迹数据、在目标视频中对弹幕内容进行移动显示的过程的处理,等等。存储器可以是各种非易失性存储设备或易失性存储设备,如SSD、DRAM内存等,可以用于数据存储,例如,获取到的用户输入的对应目标视频的弹幕内容、获取到的用户输入的弹幕内容对应的运动轨迹数据、接收到的第一终端发送的弹幕发布请求对应的数据、接收到的服务器发送的对应目标视频的弹幕显示消息对应的数据,等等。通信部件可以是有线网络连接器、WiFi模块、蓝牙模块、蜂巢网通信模块等,通信部件可以用户与终端进行数据传输,例如,通信部件可以向终端发送弹幕显示消息等。
计算机设备中安装有视频应用程序,例如,直播应用程序,电影、电视剧、短视频应用程序,等等。用户可以在直播应用程序上观看直播视频时发布弹幕、并设置运动轨迹,用户所在的终端会将弹幕发布请求发送给该直播应用程序的后台服务器,后台服务器在接收到弹幕发布请求后对弹幕发布请求携带的弹幕内容和运动轨迹数据进行存储并将携带有弹幕内容和运动轨迹数据的弹幕显示消息直接发送给正在观看直播视频的用户终端,从而使得这些用户可以看到沿着运动轨迹进行移动显示的弹幕内容。用户还可以在电影、电视剧、短视频应用程序上观看录播视频时发布弹幕、并设置运动轨迹,用户所在的终端会将弹幕发布请求发送给该直播应用程序的后台服务器,后台服务器在接收到弹幕发布请求后对弹幕发布请求携带的弹幕内容和运动轨迹数据进行存储,有用户在该应用程序上观看该录播视频,用户所在的终端会向后台服务器发送弹幕显示请求,然后后台服务器会将携带有弹幕内容和运动轨迹数据的弹幕显示消息发送给这些用户所在的终端,从而使得这些用户可以看到沿着运动轨迹进行移动显示的弹幕内容。需要注意的是,本实施例中的视频包括录播视频和直播视频。
图1是本申请实施例提供的一种弹幕处理方法的流程图。该方法可以应用于终端,为了便于与其他终端区分,该终端可以称为第一终端。参见图1,该方法包括如下处理步骤:
101、获取用户输入的对应目标视频的弹幕内容。
在实施中,用户可以在用户所在的第一终端上打开视频应用程序,在观看视频时可以发布弹幕,来表达自己的观点或者评论。此时,用户在视频播放界面中观看目标视频时,可以点击目标视频下方的弹幕输入框输入弹幕内容,如图2所示,此时,第一终端可以获取用户输入的对应目标视频的弹幕内容。
可选的,弹幕内容也可以是图片,在弹幕输入框的一侧设置有“图片”图标,用户可以点击该“图片”图标,会触发显示第一终端的本地图片,用户可以点选一张图片,点击“确定”,即为已经输入弹幕内容,此时,第一终端可以获取用户输入的弹幕内容。
102、当检测到用户的划动操作时,获取划动操作的操作点位置作为弹幕轨迹点位置,得到弹幕内容对应的运动轨迹数据。
在实施中,如图2所示,用户在弹幕输入框中输入了弹幕内容后,可以点击弹幕输入框一旁的“高级弹幕”按钮,触发在目标视频的播放界面中显示弹幕轨迹输入界面,该弹幕轨迹输入界面可以以透明或者半透明的形式位于目标视频的播放界面的上层,在该界面中还可以看到目标视频的播放内容。如图3所示,弹幕轨迹输入界面中设置有弹幕轨迹输入框,该弹幕轨迹输入框的大小和位置与正在播放的目标视频的播放框的大小和位置相同,覆盖在该目标视频的播放框上方。此时,用户可以根据自己期望实现的弹幕运动轨迹,如图4所示,在该弹幕轨迹输入框中进行划动。当检测到用户在该弹幕轨迹输入框中进行划动操作时,开始按照预设规则获取用户进行划动操作的各个操作点位置作为弹幕轨迹点位置,当满足结束条件时,可以结束弹幕轨迹点的获取动作,可以根据获取到的多个弹幕轨迹点位置,得到用户进行划动操作的运动轨迹数据。
103、向服务器发送对应目标视频的弹幕发布请求。
其中,弹幕发布请求中携带有弹幕内容和运动轨迹数据。
在实施中,如图4所示,用户在弹幕轨迹输入框中完成了划动操作后,可以点击弹幕轨迹输入界面中设置的“发布”按钮,此时,第一终端会向该视频应用程序的服务器发送对应该目标视频的弹幕发布请求,在该弹幕发布请求中携带有用户输入的弹幕内容和获取到的运动轨迹数据。
与应用在第一终端的弹幕处理方法对应,本实施例还提供了一种应用于服务器的弹幕处理方法,图5是本申请实施例提供的一种弹幕处理方法的流程图。参见图5,该方法包括如下处理步骤:
501、接收第一终端发送的对应目标视频的弹幕发布请求。
其中,弹幕发布请求中携带有弹幕内容和运动轨迹数据。
在实施中,作为视频应用程序的后台服务器,在用户所在的第一终端向服务器发送弹幕发布请求后,可以接收该第一终端发送的对应目标视频的弹幕发布请求,该弹幕发布请求中携带有弹幕内容和运动轨迹数据。此时,服务器可以对接收到的弹幕内容和运动轨迹数据进行对应存储。
502、向播放目标视频的第二终端发送弹幕显示消息。
其中,弹幕显示消息中携带有弹幕内容和运动轨迹数据。
在实施中,当有用户播放该目标视频时,会向该用户所在的第二终端发送弹幕显示消息,该弹幕显示消息中携带有对应存储的弹幕内容和运动轨迹数据等数据。可以理解的是,第二终端可以包括第一终端。
与应用在第一终端的弹幕处理方法对应,本实施例还提供了一种应用于第二终端的弹幕处理方法,图6是本申请实施例提供的一种弹幕处理方法的流程图。参见图6,该方法包括如下处理步骤:
601、播放目标视频。
在实施中,安装有该视频应用程序的第二终端的用户可以在第二终端上播放目标视频。
602、接收服务器发送的对应目标视频的弹幕显示消息。
其中,弹幕显示消息中携带有弹幕内容和运动轨迹数据,运动轨迹数据包括按顺序排列的多个弹幕轨迹点位置。
在实施中,在用户播放该目标视频时,可以触发第二终端向服务器发送弹幕显示请求,该弹幕显示请求中携带有该目标视频的标识信息,服务器根据该目标视频的标识信息,向第二终端发送对应目标视频的弹幕显示消息,第二终端接收服务器发送的对应目标视频的弹幕显示消息,该弹幕显示消息中携带有弹幕内容和运动轨迹数据,运动轨迹数据包括按顺序排列的多个弹幕轨迹点位置,用于后续的对弹幕内容进行显示。
603、确定顺序中每两个相邻的弹幕轨迹点位置之间的间隔时长。
在实施中,可以根据接收到的弹幕显示消息中携带的运动轨迹数据中的信息或者工作人员预设的条件,确定出运动轨迹数据的排列顺序中,每两个相邻的弹幕轨迹点位置之间的间隔时长,该每两个相邻的弹幕轨迹点位置之间的间隔时长为在用户的第一终端中获取用户的划动操作对应的弹幕轨迹点位置时,由一个弹幕轨迹点位置划动到下一个弹幕轨迹点位置的实际时长。
604、在目标视频播放过程中,根据多个弹幕轨迹点位置和顺序中每两个相邻的弹幕轨迹点位置之间的间隔时长,对弹幕内容进行移动显示。
在实施中,第二终端可以根据运动轨迹数据和确定出的每两个相邻的弹幕轨迹点位置之间的间隔时长,计算出在对弹幕内容进行显示时,弹幕内容在每个弹幕轨迹点位置处的显示时长,然后根据弹幕内容在每个弹幕轨迹点位置处的显示时长,在弹幕轨迹点位置处对弹幕内容进行移动显示。例如,当弹幕内容在第一个弹幕轨迹点位置处的显示时长为50ms,则当弹幕内容在第一个弹幕轨迹点位置显示了50ms时,该弹幕内容在第一个弹幕轨迹点位置处消失,同时在第二个弹幕轨迹点位置处进行显示。
本申请实施例提供的技术方案带来的有益效果是:本申请实施例中提到的方案,可以根据获取到的用户输入的运动轨迹数据,对弹幕内容进行移动显示,从而使得用户可以根据自身观看需求设置弹幕内容的运动轨迹,提高了弹幕显示形式的多样性和灵活性。
本申请实施例还提供了一种弹幕处理方法,图7是本申请实施例提供的一种弹幕处理方法的流程图。参见图7,该方法包括如下处理步骤:
701、第一终端获取用户输入的对应目标视频的弹幕内容。
在实施中,用户可以在用户所在的第一终端上打开视频应用程序,在观看视频时可以发布弹幕,来表达自己的观点或者评论。此时,用户在目标视频的播放界面中观看目标视频时,可以点击目标视频下方的弹幕输入框输入弹幕内容,如图2所示,此时,第一终端可以获取用户输入的对应目标视频的弹幕内容。
可选的,弹幕内容也可以是图片,在弹幕输入框的一侧设置有“图片”图标,用户可以点击该“图片”图标,会触发显示第一终端的本地图片,用户可以点选一张图片,点击“确定”,即为已经输入弹幕内容,此时,第一终端可以获取用户输入的弹幕内容。
702、当检测到用户的划动操作时,第一终端获取划动操作的操作点位置作为弹幕轨迹点位置,得到弹幕内容对应的运动轨迹数据。
在实施中,如图2所示,用户在弹幕输入框中输入了弹幕内容后,可以点击弹幕输入框一旁的“高级弹幕”按钮,触发在目标视频的播放界面中显示弹幕轨迹输入界面,该弹幕轨迹输入界面为透明界面,在该界面中还可以看到目标视频的播放内容。如图3所示,弹幕轨迹输入界面中设置有弹幕轨迹输入框,该弹幕轨迹输入框的大小和位置与正在播放的目标视频的播放框的大小和位置相同,覆盖在该目标视频的播放框上方。此时,用户可以根据自己想要的弹幕在目标视频中的运动轨迹,如图4所示,在该弹幕轨迹输入框中进行划动。当检测到用户在该弹幕轨迹输入框中进行划动操作时,开始按照预设规则获取用户进行划动操作的各个操作点位置作为弹幕轨迹点位置,当满足结束条件时,可以结束弹幕轨迹点的获取动作,可以根据获取到的多个弹幕轨迹点位置,得到用户进行划动操作的运动轨迹数据。对于获取到的弹幕内容和运动轨迹数据,可以使用JSON(JavaScript ObjectNotation,JS对象简谱)格式来进行存储和发送。
可选的,对于获取用户输入的弹幕内容对应的运动轨迹数据的方法,可以有多种,以下以其中的两种为例,对应的处理过程如下:
方法一
当检测到用户的划动操作时,按预设周期时长获取划动操作的操作点位置作为弹幕轨迹点位置,直到满足结束条件结束获取动作。将各弹幕轨迹点位置按先后获取顺序排列得到弹幕内容对应的运动轨迹数据。
在实施中,可以将该弹幕轨迹输入框的左下角的边界点定义为坐标零点,可以理解的是,由于在手机终端,手机的横屏和竖屏对应的弹幕轨迹输入框的大小是不一样的,在计算机终端,目标视频的播放框大小也不相同,所以需要对弹幕轨迹输入框的坐标零点进行设定。当用户在弹幕轨迹输入框中进行划动操作时,可以将用户进行划动操作的第一个操作点位置的坐标记录为该弹幕内容对应的运动轨迹数据的第一个弹幕轨迹点位置,然后按照预设周期时长,每到一个周期,就对划动操作的当前操作点位置的坐标进行记录,作为该弹幕内容对应的运动轨迹数据中的一系列的弹幕轨迹点位置,直到满足结束条件,才停止对划动操作的操作点位置的坐标进行记录,即停止获取弹幕轨迹点位置。然后可以将获取到的弹幕轨迹点位置按照获取的顺序排列,得到弹幕内容对应的运动轨迹数据。例如,如图8所示,该划动操作对应的按照获取顺序排列的弹幕轨迹点位置为点1-10对应的坐标,1-10点对应的坐标可以分别记录为[x1,y1]、[x2,y2]、[x3,y3]、[x4,y4]、[x5,y5]、[x6,y6]、[x7,y7]、[x8,y8]、[x9,y9]和[x10,y10],其中,x1—x10代表对应的横坐标的数值,y1—y10代表对应的纵坐标的数值。从第一个弹幕轨迹点位置开始,每到一个预设周期时长,则再确定一个弹幕轨迹点位置,从而得到图8所示的10个弹幕轨迹点位置。
可选的,预设周期时长可以根据具体情况进行设置,可以为50ms,或者30ms等等,本实施例对此不做限定。
方法二
当检测到用户的划动操作时,将划动操作的起始操作点位置确定为弹幕轨迹点位置,在划动操作持续过程中,每当划动操作在一个弹幕轨迹点位置之后的持续时长达到第一时长阈值、或划动操作在一个弹幕轨迹点位置之后的划动距离达到距离阈值时,将划动操作的当前操作点位置确定为弹幕轨迹点位置,直到满足结束条件结束确定动作,将各弹幕轨迹点位置按先后获取顺序排列得到弹幕内容对应的运动轨迹数据。
在实施中,可以将该弹幕轨迹输入框的左下角的边界点定义为坐标零点,技术人员可以预先设定一个第一时长阈值和距离阈值。当用户在弹幕轨迹输入框中进行划动操作时,可以将用户进行划动操作的第一个位置点的坐标记录为该弹幕内容对应的运动轨迹数据的第一个弹幕轨迹点位置,即将划动操作的起始点位置确定为弹幕轨迹点位置。
在确定出一个弹幕轨迹点位置后,可以实时对当前最后一个操作点位置后的划动操作的持续时长和划动距离进行计算。当用户在这段时间的划动操作较慢,划动操作的持续时长达到第一时长阈值、而划动距离未达到距离阈值时,可以将当前操作点位置确定为一个新的弹幕轨迹点位置;当用户在这段时间的划动操作较快,划动操作的持续时长未达到第一时长阈值、而划动距离达到距离阈值时,可以将当前操作点位置确定为一个新的弹幕轨迹点位置;当划动操作的持续时长达到第一时长阈值,且划动距离达到距离阈值时,可以将当前位置点确定为一个新的弹幕轨迹点位置。例如,预先设定第一时长阈值为50ms、距离阈值为1cm,则当确定了第一个弹幕轨迹点位置之后的划动操作的持续时长如果达到50ms,而划动距离小于1cm,则将当前位置点确定为第二个弹幕轨迹点位置,若第二个弹幕轨迹点位置之后的划动操作的持续时长小于50ms,而划动距离达到1cm,则将当前位置点确定为第三个弹幕轨迹点位置,以此类推。
按照上述方式,在获取了一个弹幕轨迹点位置后,根据第一时长阈值和距离阈值再获取下一个弹幕轨迹点位置,直到满足结束条件,将之前获取到的所有的弹幕轨迹点位置按照获取的顺序进行排列,即可得到该弹幕内容对应的运动轨迹数据。
可选的,对于第二种获取运动轨迹数据的方式,还需要获取两个相邻弹幕轨迹点位置之间的划动操作对应的时间,即两个相邻弹幕轨迹点位置之间的持续时长,对应的处理可以如下:
将划动操作由前一个弹幕轨迹点位置至前一弹幕轨迹点位置的后一弹幕轨迹点位置的持续时长,确定为两个相邻弹幕轨迹点位置之间的间隔时长。
在实施中,在确定了一个弹幕轨迹点位置时,可以将当前确定的弹幕轨迹点位置的前一个弹幕轨迹点位置划动至当前确定的弹幕轨迹点的划动操作的持续时长,记录下来,该持续时长代表着这两个弹幕轨迹点位置之间的划动操作对应的划动时长,可以直接将该持续时长确定为当前确定的弹幕轨迹点位置与其前一个弹幕轨迹点位置之间的间隔时长。
根据上述方法确定出每两个相邻的弹幕轨迹点之间的间隔时长后,相对应的,可以进行如下操作:
将各弹幕轨迹点位置以及各个相邻弹幕轨迹点位置之间的间隔时长按先后获取顺序排列,得到弹幕内容对应的运动轨迹数据。
在实施中,将获取到的所有的弹幕轨迹点位置、以及每两个相邻的弹幕轨迹点之间的间隔时长,按照获取的顺序进行排列,得到弹幕内容对应的运动轨迹数据。
对于上述两种获取方式中的结束条件,也可以有多种设置方式,以下为其中的一种:结束条件包括划动操作结束或划动操作的持续时长达到第二时长阈值。
在实施中,技术人员可以预先设置第二时长阈值,用户在弹幕轨迹输入框中进行划动操作的持续时长如果一直未停止直到达到了第二时长阈值时,会将达到了第二时长阈值时对应的操作点位置确定为该弹幕内容对应的运动轨迹数据的最后一个弹幕轨迹点位置,之后用户进行的划动操作,终端将不进行记录。而当用户进行的划动操作的持续时长较短,在用户结束划动操作时还未达到第二时长阈值,此时可以将用户进行划动操作的最后一个操作点位置确定为该弹幕内容对应的运动轨迹数据的最后一个弹幕轨迹点位置。
当然,也可以设置其他的结束条件,例如,可以对用户进行划动操作的划动距离设置一个划动距离阈值,当用户一直未停止划动操作直到划动操作对应的划动距离达到了划动距离阈值,此时可以将达到划动距离阈值时的当前操作点位置确定为该弹幕内容对应的运动轨迹数据的最后一个弹幕轨迹点位置,之后用户进行的划动操作,终端将不进行记录。而当用户进行的划动操作的划动距离较短,在用户结束划动操作时还未达到划动距离阈值,此时可以将用户进行划动操作的最后一个位置点确定为该弹幕内容对应的运动轨迹数据的最后一个弹幕轨迹点位置。结束条件有多种设置方式,可以根据具体情况进行设置,本实施例对此不做限定。
703、第一终端向服务器发送对应目标视频的弹幕发布请求。
其中,弹幕发布请求中携带有弹幕内容和运动轨迹数据。
在实施中,如图4所示,用户在弹幕轨迹输入框中完成了划动操作后,可以点击弹幕轨迹输入界面中设置的“发布”按钮,此时,第一终端会向该视频应用程序的服务器发送对应该目标视频的弹幕发布请求,在该弹幕发布请求中携带有用户输入的弹幕内容和获取到的运动轨迹数据。
704、服务器接收第一终端发送的对应目标视频的弹幕发布请求。
其中,弹幕发布请求中携带有弹幕内容和运动轨迹数据。
在实施中,作为视频应用程序的后台服务器,在用户所在的第一终端向服务器发送弹幕发布请求后,可以接收该第一终端发送的对应目标视频的弹幕发布请求,该弹幕发布请求中携带有弹幕内容和运动轨迹数据。此时,服务器可以对接收到的弹幕内容和运动轨迹数据进行对应存储。
705、服务器向播放目标视频的第二终端发送弹幕显示消息。
其中,弹幕显示消息中携带有弹幕内容和运动轨迹数据。
在实施中,当有用户播放该目标视频时,会向该用户所在的第二终端发送弹幕显示消息,该弹幕显示消息中携带有对应存储的弹幕内容和运动轨迹数据等数据。或者,可以是用户在第二终端上点击了目标视频的播放按钮,然后触发向服务器发送视频播放请求和弹幕显示请求,该弹幕显示请求中携带有目标视频的标识信息,服务器可以接收到的弹幕显示请求中携带的目标视频的标识信息,向第二终端发送弹幕显示消息,该弹幕显示消息中个携带有弹幕内容和运动轨迹数据。
706、第二终端播放目标视频。
在实施中,用户可以在所在的第二终端上播放目标视频。
707、第二终端接收服务器发送的对应目标视频的弹幕显示消息。
其中,弹幕显示消息中携带有弹幕内容和运动轨迹数据,运动轨迹数据包括按顺序排列的多个弹幕轨迹点位置。
在实施中,在用户播放该目标视频时,可以触发第二终端向服务器同时发送目标视频显示请求和发送弹幕显示请求,该弹幕显示请求中携带有该目标视频的标识信息,服务器根据该目标视频的标识信息,向第二终端发送对应目标视频的弹幕显示消息,第二终端接收服务器发送的对应目标视频的弹幕显示消息,该弹幕显示消息中携带有弹幕内容和运动轨迹数据,运动轨迹数据中包括按顺序排列的多个弹幕轨迹点位置。或者,也可以是在用户播放该目标视频时,可以触发第二终端向服务器发送目标视频显示请求,该视频显示请求中携带有该目标视频的标识信息,服务器根据该目标视频的标识信息,除了会向第二终端发送目标视频的播放数据以外,还会向第二终端发送对应目标视频的弹幕显示消息,第二终端接收服务器发送的对应目标视频的弹幕显示消息,该弹幕显示消息中携带有弹幕内容和运动轨迹数据,运动轨迹数据中包括按顺序排列的多个弹幕轨迹点位置。对于第二终端与服务器之间的接收信息,可以根据情况进行不同的设置,本实施例对此不做限定。
708、确定顺序中每两个相邻的弹幕轨迹点位置之间的间隔时长。
在实施中,第二终端在接收到弹幕显示消息后,可以读取其中储存有弹幕内容和运动轨迹数据的JSON格式的文件,然后根据运动轨迹数据或者工作人员预设的条件,计算出运动轨迹数据中每两个相邻的弹幕轨迹点位置之间的显示时间间隔。该每两个相邻的弹幕轨迹点位置之间的间隔时长为在用户的第一终端中获取用户的划动操作对应的弹幕轨迹点位置时,由一个弹幕轨迹点位置划动到下一个弹幕轨迹点位置的实际划动时长。
709、在目标视频播放过程中,根据多个弹幕轨迹点位置和顺序中每两个相邻的弹幕轨迹点位置之间的间隔时长,对弹幕内容进行移动显示。
在实施中,可以在确定了在顺序中的每两个相邻的弹幕轨迹点位置之间的间隔时长之后,根据每两个相邻的弹幕轨迹点位置之间的间隔时长和运动轨迹数据,在目标视频的播放过程中,在弹幕轨迹点位置处对弹幕内容进行移动显示。例如,当第一个弹幕轨迹点位置与第二个弹幕轨迹点位置之间的间隔时长为50ms,则当弹幕内容在第一个弹幕轨迹点位置显示了50ms时,该弹幕内容在第一个弹幕轨迹点位置处消失,同时在第二个弹幕轨迹点位置处进行显示。上述的实现方式可以使用Objective-C语言,也可以是其他方式,本实施例对此不做限定。
可选的,对于确定每两个相邻的弹幕轨迹点位置之间的间隔时长的方法也有多种,且根据获取到的运动轨迹数据的不同、以及设置的不同,可以有不同的弹幕显示方法,其中的几种可以如下:
方法一
对于运动轨迹数据包括按顺序排列的多个弹幕轨迹点位置的情况,可以设置弹幕内容在目标视频中匀速移动显示,对应的弹幕匀速移动显示的处理可以如下:
根据预设弹幕显示时长、多个弹幕轨迹点位置和多个弹幕轨迹点位置的排列顺序,确定顺序中每两个相邻的弹幕轨迹点位置之间的间隔时长。按照多个弹幕轨迹点位置的排列顺序,逐个在弹幕轨迹点位置处显示弹幕内容,其中,弹幕内容在任一弹幕轨迹点位置处的显示时长等于任一弹幕轨迹点位置与下一个弹幕轨迹点位置之间的间隔时长。
在实施中,技术人员可以预先设置预设弹幕显示时长,例如,可以设置为1000ms,等等,本实施例对此不做限定。弹幕进行匀速移动显示时,在目标视频中对弹幕内容的显示时间为该预设弹幕显示时长。
在确定了运动轨迹数据中的多个弹幕轨迹点位置和多个弹幕轨迹点位置的排列顺序后,可以根据弹幕轨迹点位置对应的坐标,计算出每两个相邻的弹幕轨迹点位置之间的距离,然后将所有的距离加起来,可以得到整个运动轨迹的长度,即轨迹长度。然后用轨迹长度除以预设弹幕显示时长,可以得到该弹幕内容进行匀速移动显示时的移动速度。然后可以用移动速度乘以在排列顺序中每两个相邻的弹幕轨迹点位置之间的距离,可以得到在排列顺序中每两个弹幕轨迹点位置之间的间隔时长。
或者,也可以在计算出了每两个相邻的弹幕轨迹点位置之间的距离和整个运动轨迹的长度之后,分别用每两个相邻的弹幕轨迹点之间的距离除以整个运动轨迹的长度,可以得到每两个相邻的弹幕轨迹点之间的距离在整个运动轨迹的长度中所占的比例,然后可以分别用每两个相邻的弹幕轨迹点位置之间的距离所占的比例乘以预设弹幕显示时长,可以确定出每两个相邻的弹幕轨迹点位置之间的间隔时长。
在确定出每两个相邻的弹幕轨迹点位置之间的间隔时长之后,可以根据多个弹幕轨迹点位置的排列顺序,逐个的在每个弹幕轨迹点位置处对弹幕内容进行显示,弹幕内容在一个弹幕轨迹点位置处显示时长等于这个弹幕轨迹点位置和下一个弹幕轨迹点位置之间的间隔时长,弹幕内容在这个弹幕轨迹点位置处的显示时长达到间隔时长后,弹幕内容在这个弹幕轨迹点位置处消失,消失的同时在下一个弹幕轨迹点位置处开始显示,从而实现在目标视频中对弹幕内容进行匀速移动显示。
方法二
对于运动轨迹数据包括按顺序排列的多个弹幕轨迹点位置以及获取弹幕轨迹点位置的周期时长(即步骤702中的方法一)的情况,可以设置弹幕内容在目标视频中按照用户进行划动操作的速度进行变速移动显示,对应的弹幕变速移动显示的处理可以如下:
将预设周期时长确定为顺序中每两个相邻的弹幕轨迹点位置之间的间隔时长。按照多个弹幕轨迹点位置的排列顺序,逐个在弹幕轨迹点位置处显示弹幕内容,其中,弹幕内容在任一弹幕轨迹点位置处的显示时长等于任一弹幕轨迹点位置与下一个弹幕轨迹点位置之间的间隔时长。
在实施中,可以直接将获取弹幕轨迹点位置的周期时长,确定为每两个相邻的弹幕轨迹点位置之间的间隔时长。然后可以根据多个弹幕轨迹点位置的排列顺序,逐个的在每个弹幕轨迹点位置处对弹幕内容进行显示。弹幕内容在一个弹幕轨迹点位置的显示时长达到周期时长时,弹幕内容在该弹幕轨迹点位置处消失,同时在下一个弹幕轨迹点位置开始显示,以此种方式,对弹幕内容,进行变速移动显示。
方法三
对于运动轨迹数据包括按顺序排列的多个弹幕轨迹点位置以及每两个相邻弹幕轨迹点位置之间的间隔时长(即步骤702中的方法二)的情况,可以设置弹幕内容在目标视频中根据用户进行划动操作的速度进行变速移动显示,对应的弹幕变速移动显示的处理还可以如下:
在运动轨迹数据中获取顺序中每两个相邻弹幕轨迹点位置之间的间隔时长。按照多个弹幕轨迹点位置的排列顺序,逐个在弹幕轨迹点位置处显示弹幕内容,其中,弹幕内容在任一弹幕轨迹点位置处的显示时长等于任一弹幕轨迹点位置与下一个弹幕轨迹点位置之间的间隔时长。
在实施中,由于弹幕显示消息中的运动轨迹数据携带有每两个相邻弹幕轨迹点位置之间的间隔时长,所以弹幕内容在一个弹幕轨迹点位置处的显示时长可以直接等于这个弹幕轨迹点位置和下一个弹幕轨迹点位置之间的间隔时长,弹幕内容在这个弹幕轨迹点位置处的显示时长达到间隔时长后,弹幕内容在这个弹幕轨迹点位置处消失,消失的同时在下一个弹幕轨迹点位置处开始显示,从而实现在目标视频中对弹幕内容进行变速移动显示。
可选的,对于上述三种弹幕显示方法,对于弹幕轨迹数据中的最后一个弹幕轨迹点位置的显示时长,可以是技术人员预先设置的一个固定时长,即一个预设时长,弹幕内容在最后一个弹幕轨迹点位置处的显示时长达到预设时长时,弹幕内容消失,即完成一次弹幕内容的移动显示。
对于目标视频为直播视频的情况,用户在第一终端输入了弹幕内容和运动轨迹数据后,点击发布,此时会向服务器发送对应目标视频的弹幕发布请求,服务器将接收到的弹幕发布请求中的弹幕内容和运动轨迹数据等数据进行存储,然后直接向正在观看直播视频的第二终端发送弹幕显示消息,第二终端在接收到弹幕显示消息且根据弹幕显示消息计算出每个弹幕轨迹点位置处的显示时长后,可以直接根据各弹幕轨迹点位置、弹幕轨迹点位置的排列顺序和每个弹幕轨迹点位置处的显示时长,在目标视频中对弹幕内容进行移动显示。
对于目标视频为录播视频的情况,在上述步骤701-703的基础上,还需要确定出弹幕发布后在目标视频中的显示时间,即弹幕显示开始时间点。对应的处理可以如下:
获取在用户开始输入运动轨迹数据时目标视频的播放时间点,作为弹幕显示开始时间点,将弹幕显示开始时间点携带在弹幕发布请求中向服务器发送。
在实施中,由于弹幕轨迹输入界面是以透明或者半透明的形式位于目标视频的播放界面的上层的,所以用户在弹幕轨迹输入界面中,也可以看到目标视频的播放内容,用户可以在想要该弹幕内容开始进行显示的目标视频的播放时间点,开始进行划动操作。即将用户在弹幕轨迹输入框中开始输入运动轨迹数据时对应的目标视频的播放时间点,确定为弹幕显示开始时间点,对于此种情况,第一终端向服务器发送的弹幕发布请求中除了携带有弹幕内容和运动轨迹数据以外,还携带有弹幕显示开始时间点。
对于弹幕显示开始时间点的设定,也可以是其他方法,例如,还可以将用户在输入了运动轨迹数据之后,点击“发布”按钮时对应的目标视频的播放时间点,确定为弹幕显示开始时间点。还可以是其他设定方法,本实施例对此不做限定。
基于上述目标视频为录播视频的情况,获取了弹幕显示开始时间点后,步骤704-705与之前相同,都是接收弹幕发布请求和发送弹幕显示消息,更细节部分的不同是弹幕发布请求和弹幕显示消息中还携带有弹幕显示开始时间点。
可选的,由于目标视频为录播视频,弹幕显示消息中还携带有弹幕显示开始时间点,则处理上述步骤706-709的内容外,还可以进行下述处理:
当目标视频播放至弹幕显示开始时间点时,根据多个弹幕轨迹点位置和顺序中每两个相邻的弹幕轨迹点位置之间的间隔时长,对弹幕内容进行移动显示。
在实施中,当目标视频播放至弹幕显示开始时间时,弹幕内容会出现在运动轨迹数据中的第一个弹幕轨迹点位置处,持续时长直到达到显示时长时,才会在第一个弹幕轨迹点位置处消失,同时在第二个弹幕轨迹点位置处显示,以此类推,直到在运动轨迹数据中的最后一个弹幕轨迹点位置处显示的时长达到了预设时长时,弹幕内容会在最后一个弹幕轨迹点位置处消失,从而完成了在目标视频中的一次弹幕内容的显示。
上述所有可选技术方案,可以采用任意结合形成本申请的可选实施例,在此不再一一赘述。
本申请实施例中提到的方案,可以根据获取到的用户输入的运动轨迹数据,对弹幕内容进行移动显示,从而使得用户可以根据自身观看需求设置弹幕内容的运动轨迹,提高了弹幕显示形式的多样性。
本申请实施例还提供了一种弹幕处理装置,该装置可以是上述实施例中的计算机设备,如图9所示,所述装置包括:
第一获取模块910,用于获取用户输入的对应目标视频的弹幕内容;
第二获取模块920,用于当检测到用户的划动操作时,获取所述划动操作的操作点位置作为弹幕轨迹点位置,得到所述弹幕内容对应的运动轨迹数据;
第一发送模块930,用于向服务器发送对应所述目标视频的弹幕发布请求,其中,所述弹幕发布请求中携带有所述弹幕内容和所述运动轨迹数据。
在一种可能的实现方式中,所述第二获取模块920,用于:
当检测到用户的划动操作时,按预设周期时长获取所述划动操作的操作点位置作为弹幕轨迹点位置,直到满足结束条件结束获取动作;
将各弹幕轨迹点位置按先后获取顺序排列得到所述弹幕内容对应的运动轨迹数据。
在一种可能的实现方式中,所述第二获取模块920,用于:
当检测到用户的划动操作时,将所述划动操作的起始操作点位置确定为弹幕轨迹点位置;在所述划动操作持续过程中,每当所述划动操作在一个弹幕轨迹点位置之后的持续时长达到第一时长阈值、或所述划动操作在一个弹幕轨迹点位置之后的划动距离达到距离阈值时,将所述划动操作的当前操作点位置点确定为弹幕轨迹点位置,直到满足结束条件结束确定动作;
将各弹幕轨迹点位置按先后获取顺序排列得到所述弹幕内容对应的运动轨迹数据。
在一种可能的实现方式中,所述第二获取模块920,还用于:
将所述划动操作由前一弹幕轨迹点位置至所述前一弹幕轨迹点位置的后一弹幕轨迹点位置的持续时长,确定为两个相邻弹幕轨迹点位置之间的间隔时长;
所述第二获取模块,用于:
将各弹幕轨迹点位置以及各个相邻弹幕轨迹点位置之间的间隔时长按先后获取顺序排列,得到所述弹幕内容对应的运动轨迹数据。
在一种可能的实现方式中,所述结束条件包括所述划动操作结束或所述划动操作的持续时长达到第二时长阈值。
在一种可能的实现方式中,所述装置还用于:获取在用户开始输入所述运动轨迹数据时所述目标视频的播放时间点,作为弹幕显示开始时间点;
所述弹幕发布请求中还携带有所述弹幕显示开始时间点。
本申请实施例还提供了一种弹幕处理装置,该装置可以是上述实施例中的计算机设备,如图10所示,所述装置包括:
第一接收模块1010,用于接收第一终端发送的对应目标视频的弹幕发布请求,其中,所述弹幕发布请求中携带有弹幕内容和运动轨迹数据;
第二发送模块1020,用于向播放所述目标视频的第二终端发送弹幕显示消息,其中,所述弹幕显示消息中携带有所述弹幕内容和所述运动轨迹数据。
在一种可能的实现方式中,所述弹幕发布请求中还携带有弹幕显示开始时间点,所述弹幕显示消息中还携带有所述弹幕显示开始时间点。
本申请实施例还提供了一种弹幕处理装置,该装置可以是上述实施例中的计算机设备,如图11所示,所述装置包括:
播放模块1110,用于播放目标视频;
第二接收模块1120,用于接收服务器发送的对应目标视频的弹幕显示消息,其中所述弹幕显示消息携带有弹幕内容和运动轨迹数据,所述运动轨迹数据包括按顺序排列的多个弹幕轨迹点位置;
确定模块1130,用于确定所述顺序中每两个相邻的弹幕轨迹点位置之间的间隔时长;
显示模块1140,用于在所述目标视频播放过程中,根据所述多个弹幕轨迹点位置和所述顺序中每两个相邻的弹幕轨迹点位置之间的间隔时长,对所述弹幕内容进行移动显示。
在一种可能的实现方式中,所述确定模块1130,用于:
根据预设弹幕显示时长、所述多个弹幕轨迹点位置和所述多个弹幕轨迹点位置的排列顺序,确定所述顺序中每两个相邻的弹幕轨迹点位置之间的间隔时长;
所述显示模块1140,用于:
按照所述多个弹幕轨迹点位置的排列顺序,逐个在弹幕轨迹点位置处显示所述弹幕内容,其中,所述弹幕内容在任一弹幕轨迹点位置处的显示时长等于所述任一弹幕轨迹点位置与下一个弹幕轨迹点位置之间的间隔时长。
在一种可能的实现方式中,所述运动轨迹数据还包括用于获取弹幕轨迹点位置的预设周期时长;
所述确定模块1130,用于:
将所述预设周期时长确定为所述顺序中每两个相邻的弹幕轨迹点位置之间的间隔时长;
所述显示模块1140,用于:
按照所述多个弹幕轨迹点位置的排列顺序,逐个在弹幕轨迹点位置处显示所述弹幕内容,其中,所述弹幕内容在任一弹幕轨迹点位置处的显示时长等于所述任一弹幕轨迹点位置与下一个弹幕轨迹点位置之间的间隔时长。
在一种可能的实现方式中,所述运动轨迹数据还包括所述顺序中每两个相邻弹幕轨迹点位置之间的间隔时长;
所述确定模块1130,用于:
在所述运动轨迹数据中获取所述顺序中每两个相邻弹幕轨迹点位置之间的间隔时长;
所述显示模块1140,用于:
按照所述多个弹幕轨迹点位置的排列顺序,逐个在弹幕轨迹点位置处显示所述弹幕内容,其中,所述弹幕内容在任一弹幕轨迹点位置处的显示时长等于所述任一弹幕轨迹点位置与下一个弹幕轨迹点位置之间的间隔时长。
在一种可能的实现方式中,所述弹幕显示消息中还携带有弹幕显示开始时间点;
所述显示模块1140,用于:
当所述目标视频播放至所述弹幕显示开始时间点时,根据所述多个弹幕轨迹点位置和所述顺序中每两个相邻的弹幕轨迹点位置之间的间隔时长,对所述弹幕内容进行移动显示。
需要说明的是:上述实施例提供的弹幕处理装置在弹幕处理时,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将装置的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。另外,上述实施例提供的弹幕处理装置与弹幕处理方法实施例属于同一构思,其具体实现过程详见方法实施例,这里不再赘述。
本申请实施例提供了一种弹幕处理系统,如图12所示,上述弹幕处理方法可以应用于所述弹幕处理系统,所述弹幕处理系统包括第一终端、第二终端和服务器。
其中,第一终端,用于获取用户输入的对应目标视频的弹幕内容;获取用户输入的弹幕内容对应的运动轨迹数据;向服务器发送对应目标视频的弹幕发布请求,其中,弹幕发布请求中携带有所述弹幕内容和所述运动轨迹数据。
服务器,用于接收第一终端发送的对应目标视频的弹幕发布请求;向播放目标视频的第二终端发送弹幕显示消息,其中,弹幕显示消息中携带有弹幕内容和运动轨迹数据。
第二终端,用于播放目标视频;接收服务器发送的对应目标视频的弹幕显示消息;根据运动轨迹数据,在目标视频中对弹幕内容进行移动显示。
图13示出了本申请一个示例性实施例提供的终端1300的结构框图。该终端可以是上述实施例中的计算机设备。该终端1300可以是:智能手机、平板电脑、MP3播放器(movingpicture experts group audio layer III,动态影像专家压缩标准音频层面3)、MP4(moving picture experts group audio layer IV,动态影像专家压缩标准音频层面4)播放器、笔记本电脑或台式电脑。终端1300还可能被称为用户设备、便携式终端、膝上型终端、台式终端等其他名称。
通常,终端1300包括有:处理器1301和存储器1302。
处理器1301可以包括一个或多个处理核心,比如4核心处理器、8核心处理器等。处理器1301可以采用DSP(digital signal processing,数字信号处理)、FPGA(field-programmable gate array,现场可编程门阵列)、PLA(programmable logic array,可编程逻辑阵列)中的至少一种硬件形式来实现。处理器1301也可以包括主处理器和协处理器,主处理器是用于对在唤醒状态下的数据进行处理的处理器,也称CPU;协处理器是用于对在待机状态下的数据进行处理的低功耗处理器。在一些实施例中,处理器1301可以在集成有GPU(graphics processing unit,图像处理器),GPU用于负责显示屏所需要显示的内容的渲染和绘制。一些实施例中,处理器1301还可以包括AI(artificial intelligence,人工智能)处理器,该AI处理器用于处理有关机器学习的计算操作。
存储器1302可以包括一个或多个计算机可读存储介质,该计算机可读存储介质可以是非暂态的。存储器1302还可包括高速随机存取存储器,以及非易失性存储器,比如一个或多个磁盘存储设备、闪存存储设备。在一些实施例中,存储器1302中的非暂态的计算机可读存储介质用于存储至少一个指令,该至少一个指令用于被处理器1301所执行以实现本申请中方法实施例提供的弹幕处理方法。
在一些实施例中,终端1300还可选包括有:外围设备接口1303和至少一个外围设备。处理器1301、存储器1302和外围设备接口1303之间可以通过总线或信号线相连。各个外围设备可以通过总线、信号线或电路板与外围设备接口1303相连。具体地,外围设备包括:射频电路1304、显示屏1305、摄像头1306、音频电路1307、定位组件1308和电源1309中的至少一种。
外围设备接口1303可被用于将I/O(input/output,输入/输出)相关的至少一个外围设备连接到处理器1301和存储器1302。在一些实施例中,处理器1301、存储器1302和外围设备接口1303被集成在同一芯片或电路板上;在一些其他实施例中,处理器1301、存储器1302和外围设备接口1303中的任意一个或两个可以在单独的芯片或电路板上实现,本实施例对此不加以限定。
射频电路1304用于接收和发射RF(radio frequency,射频)信号,也称电磁信号。射频电路1304通过电磁信号与通信网络以及其他通信设备进行通信。射频电路1304将电信号转换为电磁信号进行发送,或者,将接收到的电磁信号转换为电信号。可选地,射频电路1304包括:天线系统、RF收发器、一个或多个放大器、调谐器、振荡器、数字信号处理器、编解码芯片组、用户身份模块卡等等。射频电路1304可以通过至少一种无线通信协议来与其它终端进行通信。该无线通信协议包括但不限于:城域网、各代移动通信网络(2G、3G、4G及5G)、无线局域网和/或WiFi网络。在一些实施例中,射频电路1304还可以包括NFC(nearfield communication,近距离无线通信)有关的电路,本申请对此不加以限定。
显示屏1305用于显示UI(user interface,用户界面)。该UI可以包括图形、文本、图标、视频及其它们的任意组合。当显示屏1305是触摸显示屏时,显示屏1305还具有采集在显示屏1305的表面或表面上方的触摸信号的能力。该触摸信号可以作为控制信号输入至处理器1301进行处理。此时,显示屏1305还可以用于提供虚拟按钮和/或虚拟键盘,也称软按钮和/或软键盘。在一些实施例中,显示屏1305可以为一个,设置终端1300的前面板;在另一些实施例中,显示屏1305可以为至少两个,分别设置在终端1300的不同表面或呈折叠设计;在再一些实施例中,显示屏1305可以是柔性显示屏,设置在终端1300的弯曲表面上或折叠面上。甚至,显示屏1305还可以设置成非矩形的不规则图形,也即异形屏。显示屏1305可以采用LCD(liquid crystal display,液晶显示屏)、OLED(organic light-emitting diode,有机发光二极管)等材质制备。
摄像头组件1306用于采集图像或视频。可选地,摄像头组件1306包括前置摄像头和后置摄像头。通常,前置摄像头设置在终端的前面板,后置摄像头设置在终端的背面。在一些实施例中,后置摄像头为至少两个,分别为主摄像头、景深摄像头、广角摄像头、长焦摄像头中的任意一种,以实现主摄像头和景深摄像头融合实现背景虚化功能、主摄像头和广角摄像头融合实现全景拍摄以及VR(virtual reality,虚拟现实)拍摄功能或者其它融合拍摄功能。在一些实施例中,摄像头组件1306还可以包括闪光灯。闪光灯可以是单色温闪光灯,也可以是双色温闪光灯。双色温闪光灯是指暖光闪光灯和冷光闪光灯的组合,可以用于不同色温下的光线补偿。
音频电路1307可以包括麦克风和扬声器。麦克风用于采集用户及环境的声波,并将声波转换为电信号输入至处理器1301进行处理,或者输入至射频电路1304以实现语音通信。出于立体声采集或降噪的目的,麦克风可以为多个,分别设置在终端1300的不同部位。麦克风还可以是阵列麦克风或全向采集型麦克风。扬声器则用于将来自处理器1301或射频电路1304的电信号转换为声波。扬声器可以是传统的薄膜扬声器,也可以是压电陶瓷扬声器。当扬声器是压电陶瓷扬声器时,不仅可以将电信号转换为人类可听见的声波,也可以将电信号转换为人类听不见的声波以进行测距等用途。在一些实施例中,音频电路1307还可以包括耳机插孔。
定位组件1308用于定位终端1300的当前地理位置,以实现导航或LBS(locationbased service,基于位置的服务)。定位组件1308可以是基于美国的GPS(globalpositioning system,全球定位系统)、中国的北斗系统、俄罗斯的格雷纳斯系统或欧盟的伽利略系统的定位组件。
电源1309用于为终端1300中的各个组件进行供电。电源1309可以是交流电、直流电、一次性电池或可充电电池。当电源1309包括可充电电池时,该可充电电池可以支持有线充电或无线充电。该可充电电池还可以用于支持快充技术。
在一些实施例中,终端1300还包括有一个或多个传感器1310。该一个或多个传感器1310包括但不限于:加速度传感器1311、陀螺仪传感器1312、压力传感器1313、指纹传感器1314、光学传感器1315以及接近传感器1316。
加速度传感器1311可以检测以终端1300建立的坐标系的三个坐标轴上的加速度大小。比如,加速度传感器1311可以用于检测重力加速度在三个坐标轴上的分量。处理器1301可以根据加速度传感器1311采集的重力加速度信号,控制显示屏1305以横向视图或纵向视图进行用户界面的显示。加速度传感器1311还可以用于游戏或者用户的运动数据的采集。
陀螺仪传感器1312可以检测终端1300的机体方向及转动角度,陀螺仪传感器1312可以与加速度传感器1311协同采集用户对终端1300的3D动作。处理器1301根据陀螺仪传感器1312采集的数据,可以实现如下功能:动作感应(比如根据用户的倾斜操作来改变UI)、拍摄时的图像稳定、游戏控制以及惯性导航。
压力传感器1313可以设置在终端1300的侧边框和/或显示屏1305的下层。当压力传感器1313设置在终端1300的侧边框时,可以检测用户对终端1300的握持信号,由处理器1301根据压力传感器1313采集的握持信号进行左右手识别或快捷操作。当压力传感器1313设置在显示屏1305的下层时,由处理器1301根据用户对显示屏1305的压力操作,实现对UI界面上的可操作性控件进行控制。可操作性控件包括按钮控件、滚动条控件、图标控件、菜单控件中的至少一种。
指纹传感器1314用于采集用户的指纹,由处理器1301根据指纹传感器1314采集到的指纹识别用户的身份,或者,由指纹传感器1314根据采集到的指纹识别用户的身份。在识别出用户的身份为可信身份时,由处理器1301授权该用户执行相关的敏感操作,该敏感操作包括解锁屏幕、查看加密信息、下载软件、支付及更改设置等。指纹传感器1314可以被设置终端1300的正面、背面或侧面。当终端1300上设置有物理按键或厂商Logo时,指纹传感器1314可以与物理按键或厂商Logo集成在一起。
光学传感器1315用于采集环境光强度。在一个实施例中,处理器1301可以根据光学传感器1315采集的环境光强度,控制显示屏1305的显示亮度。具体地,当环境光强度较高时,调高显示屏1305的显示亮度;当环境光强度较低时,调低显示屏1305的显示亮度。在另一个实施例中,处理器1301还可以根据光学传感器1315采集的环境光强度,动态调整摄像头组件1306的拍摄参数。
接近传感器1316,也称距离传感器,通常设置在终端1300的前面板。接近传感器1316用于采集用户与终端1300的正面之间的距离。在一个实施例中,当接近传感器1316检测到用户与终端1300的正面之间的距离逐渐变小时,由处理器1301控制显示屏1305从亮屏状态切换为息屏状态;当接近传感器1316检测到用户与终端1300的正面之间的距离逐渐变大时,由处理器1301控制显示屏1305从息屏状态切换为亮屏状态。
本领域技术人员可以理解,图13中示出的结构并不构成对终端1300的限定,可以包括比图示更多或更少的组件,或者组合某些组件,或者采用不同的组件布置。
图14是本申请实施例提供的一种服务器的结构示意图,该服务器1400可因配置或性能不同而产生比较大的差异,可以包括一个或一个以上处理器1401和一个或一个以上的存储器1402,其中,所述存储器1402中存储有至少一条指令,所述至少一条指令由所述处理器1401加载并执行以实现上述各个方法实施例提供的方法。当然,该服务器还可以具有有线或无线网络接口、键盘以及输入输出接口等部件,以便进行输入输出,该服务器还可以包括其他用于实现设备功能的部件,在此不做赘述。
在示例性实施例中,还提供了一种计算机可读存储介质,例如包括指令的存储器,上述指令可由终端中的处理器执行以完成上述实施例中弹幕处理方法。该计算机可读存储介质可以是非暂态的。例如,所述计算机可读存储介质可以是ROM(read-only memory,只读存储器)、RAM(random access memory,随机存取存储器)、CD-ROM、磁带、软盘和光数据存储设备等。
本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。
以上所述仅为本申请的可选实施例,并不用以限制本申请,凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。
Claims (11)
1.一种弹幕处理方法,其特征在于,所述方法包括:
获取用户输入的对应目标视频的弹幕内容;
当检测到用户的划动操作时,获取所述划动操作的操作点位置作为弹幕轨迹点位置,将所述划动操作由前一弹幕轨迹点位置至所述前一弹幕轨迹点位置的后一弹幕轨迹点位置的持续时长,确定为两个相邻弹幕轨迹点位置之间的间隔时长,将各弹幕轨迹点位置以及各个相邻弹幕轨迹点位置之间的间隔时长按先后获取顺序排列得到所述弹幕内容对应的运动轨迹数据;
向服务器发送对应所述目标视频的弹幕发布请求,其中,所述弹幕发布请求中携带有所述弹幕内容和所述运动轨迹数据,用于在对所述弹幕内容进行变速移动显示时,按照所述各弹幕轨迹点位置的排列顺序,逐个在弹幕轨迹点位置处显示所述弹幕内容,所述弹幕内容在任一弹幕轨迹点位置处的显示时长等于所述任一弹幕轨迹点位置与下一个弹幕轨迹点位置之间的间隔时长,当所述弹幕内容在所述任一弹幕轨迹点位置处消失时,所述弹幕内容在所述下一个弹幕轨迹点位置处显示。
2.根据权利要求1所述的方法,其特征在于,所述当检测到用户的划动操作时,获取所述划动操作的操作点位置作为弹幕轨迹点位置,包括:
当检测到用户的划动操作时,按预设周期时长获取所述划动操作的操作点位置作为弹幕轨迹点位置,直到满足结束条件结束获取动作。
3.根据权利要求1所述的方法,其特征在于,所述当检测到用户的划动操作时,获取所述划动操作的操作点位置作为弹幕轨迹点位置,包括:
当检测到用户的划动操作时,将所述划动操作的起始操作点位置确定为弹幕轨迹点位置;在所述划动操作持续过程中,每当所述划动操作在一个弹幕轨迹点位置之后的持续时长达到第一时长阈值、或所述划动操作在一个弹幕轨迹点位置之后的划动距离达到距离阈值时,将所述划动操作的当前操作点位置点确定为弹幕轨迹点位置,直到满足结束条件结束确定动作。
4.根据权利要求2-3任一项所述的方法,其特征在于,所述结束条件包括所述划动操作结束或所述划动操作的持续时长达到第二时长阈值。
5.根据权利要求1所述的方法,其特征在于,所述方法还包括:获取在用户开始输入所述运动轨迹数据时所述目标视频的播放时间点,作为弹幕显示开始时间点;
将所述弹幕显示开始时间点携带在所述弹幕发布请求中向所述服务器发送。
6.一种弹幕处理方法,其特征在于,所述方法包括:
播放目标视频;
接收服务器发送的对应目标视频的弹幕显示消息,其中所述弹幕显示消息携带有弹幕内容和运动轨迹数据,所述运动轨迹数据包括按顺序排列的多个弹幕轨迹点位置和所述顺序中每两个相邻弹幕轨迹点位置之间的间隔时长,其中,在所述按顺序排列的多个弹幕轨迹点位置中,任一弹幕轨迹点位置与下一个弹幕轨迹点位置之间的间隔时长是在通过用户的划动操作获取所述多个弹幕轨迹点位置时,所述划动操作由所述任一弹幕轨迹点位置至所述下一个弹幕轨迹点位置的持续时长;
在所述目标视频播放过程中,按照所述多个弹幕轨迹点位置的排列顺序,逐个在弹幕轨迹点位置处显示所述弹幕内容,其中,所述弹幕内容在任一弹幕轨迹点位置处的显示时长等于所述任一弹幕轨迹点位置与下一个弹幕轨迹点位置之间的间隔时长,当所述弹幕内容在所述任一弹幕轨迹点位置处消失时,所述弹幕内容在所述下一个弹幕轨迹点位置处显示,以对所述弹幕内容进行变速移动显示。
7.根据权利要求6所述的方法,其特征在于,所述各个相邻弹幕轨迹点位置之间的间隔时长是用于获取弹幕轨迹点位置的预设周期时长。
8.根据权利要求6所述的方法,其特征在于,所述弹幕显示消息还携带有弹幕显示开始时间点;
所述按照所述多个弹幕轨迹点位置的排列顺序,逐个在弹幕轨迹点位置处显示所述弹幕内容,包括:
当所述目标视频播放至所述弹幕显示开始时间点时,按照所述多个弹幕轨迹点位置的排列顺序,逐个在弹幕轨迹点位置处显示所述弹幕内容。
9.一种弹幕处理系统,其特征在于,所述弹幕处理系统包括第一终端、第二终端和服务器,其中:
所述第一终端,用于获取用户输入的对应目标视频的弹幕内容;当检测到用户的划动操作时,获取所述划动操作的操作点位置作为弹幕轨迹点位置,将所述划动操作由前一弹幕轨迹点位置至所述前一弹幕轨迹点位置的后一弹幕轨迹点位置的持续时长,确定为两个相邻弹幕轨迹点位置之间的间隔时长,将各弹幕轨迹点位置以及各个相邻弹幕轨迹点位置之间的间隔时长按先后获取顺序排列得到所述弹幕内容对应的运动轨迹数据;向所述服务器发送对应所述目标视频的弹幕发布请求,其中,所述弹幕发布请求中携带有所述弹幕内容和所述运动轨迹数据,用于在对所述弹幕内容进行变速移动显示时,按照所述各弹幕轨迹点位置的排列顺序,逐个在弹幕轨迹点位置处显示所述弹幕内容,所述弹幕内容在任一弹幕轨迹点位置处的显示时长等于所述任一弹幕轨迹点位置与下一个弹幕轨迹点位置之间的间隔时长,当所述弹幕内容在所述任一弹幕轨迹点位置处消失时,所述弹幕内容在所述下一个弹幕轨迹点位置处显示;
所述服务器,用于接收所述第一终端发送的对应目标视频的弹幕发布请求;向播放所述目标视频的所述第二终端发送弹幕显示消息,其中,所述弹幕显示消息中携带有所述弹幕内容和所述运动轨迹数据,所述运动轨迹数据包括按顺序排列的多个弹幕轨迹点位置以及各个相邻弹幕轨迹点位置之间的间隔时长;
所述第二终端,用于播放所述目标视频;接收所述服务器发送的对应目标视频的弹幕显示消息;在所述目标视频播放过程中,按照所述多个弹幕轨迹点位置的排列顺序,逐个在弹幕轨迹点位置处显示所述弹幕内容,其中,所述弹幕内容在任一弹幕轨迹点位置处的显示时长等于所述任一弹幕轨迹点位置与下一个弹幕轨迹点位置之间的间隔时长,当所述弹幕内容在所述任一弹幕轨迹点位置处消失时,所述弹幕内容在所述下一个弹幕轨迹点位置处显示,以对所述弹幕内容进行变速移动显示。
10.一种计算机设备,其特征在于,所述计算机设备包括处理器和存储器,所述存储器中存储有至少一条指令,所述至少一条指令由所述处理器加载并执行以实现如权利要求1-5或权利要求6-8任一项所述的弹幕处理方法所执行的操作。
11.一种计算机可读存储介质,其特征在于,所述存储介质中存储有至少一条指令,所述至少一条指令由处理器加载并执行以实现如权利要求1-5或权利要求6-8任一项所述的弹幕处理方法所执行的操作。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110480568.8A CN113259772B (zh) | 2021-04-30 | 2021-04-30 | 弹幕处理方法、系统、设备和存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110480568.8A CN113259772B (zh) | 2021-04-30 | 2021-04-30 | 弹幕处理方法、系统、设备和存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113259772A CN113259772A (zh) | 2021-08-13 |
CN113259772B true CN113259772B (zh) | 2023-06-20 |
Family
ID=77223374
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110480568.8A Active CN113259772B (zh) | 2021-04-30 | 2021-04-30 | 弹幕处理方法、系统、设备和存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113259772B (zh) |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106101804A (zh) * | 2016-06-16 | 2016-11-09 | 乐视控股(北京)有限公司 | 弹幕设定方法及装置 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107734373A (zh) * | 2017-10-12 | 2018-02-23 | 网易(杭州)网络有限公司 | 弹幕发送方法及装置、存储介质、电子设备 |
CN109525885B (zh) * | 2018-12-13 | 2021-07-20 | 广州华多网络科技有限公司 | 信息处理方法、装置、电子设备及计算机可读存储介质 |
CN109905775A (zh) * | 2019-01-16 | 2019-06-18 | 北京奇艺世纪科技有限公司 | 一种涂鸦弹幕生成及显示方法、装置、终端设备及存储介质 |
-
2021
- 2021-04-30 CN CN202110480568.8A patent/CN113259772B/zh active Active
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106101804A (zh) * | 2016-06-16 | 2016-11-09 | 乐视控股(北京)有限公司 | 弹幕设定方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
CN113259772A (zh) | 2021-08-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110992493B (zh) | 图像处理方法、装置、电子设备及存储介质 | |
CN108391171B (zh) | 视频播放的控制方法及装置、终端 | |
CN109874312B (zh) | 播放音频数据的方法和装置 | |
CN108401124B (zh) | 视频录制的方法和装置 | |
CN109348247B (zh) | 确定音视频播放时间戳的方法、装置及存储介质 | |
CN110213608B (zh) | 显示虚拟礼物的方法、装置、设备及可读存储介质 | |
CN108965922B (zh) | 视频封面生成方法、装置和存储介质 | |
CN110022363B (zh) | 虚拟对象的运动状态修正方法、装置、设备及存储介质 | |
CN109922356B (zh) | 视频推荐方法、装置和计算机可读存储介质 | |
CN110740340B (zh) | 视频直播方法及装置、存储介质 | |
CN111246095B (zh) | 控制镜头运动的方法、装置、设备及存储介质 | |
CN111142838B (zh) | 音频播放方法、装置、计算机设备及存储介质 | |
CN109635133B (zh) | 可视化音频播放方法、装置、电子设备及存储介质 | |
CN110288689B (zh) | 对电子地图进行渲染的方法和装置 | |
CN111586444B (zh) | 视频处理方法、装置、电子设备及存储介质 | |
CN111083526B (zh) | 视频转场方法、装置、计算机设备及存储介质 | |
CN108845777B (zh) | 播放帧动画的方法和装置 | |
CN107888975B (zh) | 视频播放方法、装置及存储介质 | |
CN110992268B (zh) | 背景设置方法、装置、终端及存储介质 | |
CN110152309B (zh) | 语音通信方法、装置、电子设备及存储介质 | |
CN109005359B (zh) | 视频录制方法、装置存储介质 | |
CN108966026B (zh) | 制作视频文件的方法和装置 | |
CN109032492B (zh) | 一种切歌的方法及装置 | |
WO2021218926A1 (zh) | 图像显示方法、装置和计算机设备 | |
CN114594885A (zh) | 应用图标的管理方法、装置、设备及计算机可读存储介质 |
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 |