弹幕处理方法、装置、电子设备及计算机可读存储介质与流程

文档序号:21103495发布日期:2020-06-16 21:02阅读:178来源:国知局
弹幕处理方法、装置、电子设备及计算机可读存储介质与流程

本发明涉及互联网技术,尤其涉及一种弹幕处理方法、装置、电子设备及计算机可读存储介质。



背景技术:

弹幕是指在播放多媒体信息时,将大量的用户评论以滚动字幕的形式显示在所播放的媒体信息上的一种显示方式。相关技术中,用户在观看在线视频时可以添加弹幕,服务器在获取到用户添加的弹幕后,将弹幕发送给所有播放该在线视频的用户客户端,由用户客户端在获取到弹幕后,在播放该在线视频时根据用户发送弹幕的时间先后顺序对纯文字形式的弹幕依次滚动。

然而,相关技术方案中,弹幕内容都是以一行文本的样式从屏幕中飘过,弹幕内容的表现形式单一,无法对用户发送的弹幕内容做出差异化展示。



技术实现要素:

本发明实施例提供一种弹幕处理方法、装置、电子设备及计算机可读存储介质,能够丰富弹幕内容的表现形式。

本发明实施例的技术方案是这样实现的:

本发明实施例提供一种弹幕处理方法,包括:

响应于在播放多媒体信息的过程中接收到的弹幕编辑操作,呈现弹幕编辑界面;

通过所述弹幕编辑界面接收待发送的弹幕内容,并通过所述弹幕编辑界面接收针对所述弹幕内容设置的弹幕样式,其中,所述弹幕样式包括所述弹幕内容的形状和所述弹幕内容的排布方式至少之一;

发送所述弹幕内容和所述弹幕样式,以

在多媒体播放界面中呈现符合所述弹幕样式的所述弹幕内容。

本发明实施例提供一种弹幕处理装置,包括:

呈现模块,用于响应于在播放多媒体信息的过程中接收到的弹幕编辑操作,呈现弹幕编辑界面;

接收模块,用于通过所述弹幕编辑界面接收待发送的弹幕内容,并通过所述弹幕编辑界面接收针对所述弹幕内容设置的弹幕样式,其中,所述弹幕样式包括所述弹幕内容的形状和所述弹幕内容的排布方式至少之一;

发送模块,用于发送所述弹幕内容和所述弹幕样式;

所述呈现模块,还用于在多媒体播放界面中呈现符合所述弹幕样式的所述弹幕内容。

上述方案中,所述呈现模块,还用于呈现用于编辑待发送的弹幕内容的字符输入界面,以及用于设置弹幕样式的操作入口;

所述接收模块,还用于通过所述弹幕编辑界面中的字符输入界面接收输入的待发送的弹幕内容;

所述呈现模块,还用于响应于针对所述设置弹幕样式的操作入口的触发操作,呈现样式编辑界面,并通过所述样式编辑界面获取被设置的弹幕样式。

上述方案中,所述弹幕样式的属性包括所述形状;

所述呈现模块,还用于在所述样式编辑界面中呈现网格,所述网格中预填充有所述弹幕内容包括的各个字符,且是根据默认弹幕样式中的形状填充的;

以及用于响应于针对所述弹幕内容中至少部分字符所处的网格的移位操作,得到包括新形状的新弹幕样式,并在所述样式编辑界面实时呈现应用了所述新弹幕样式中所述新形状的弹幕内容;

所述装置还包括确定模块,用于当在预定时间内不再接收到所述移位操作,或者接收到弹幕发送操作时,将所述新弹幕样式确定为待发送的弹幕样式。

上述方案中,所述接收模块,还用于接收针对所述网格的尺寸设置操作;

所述确定模块,还用于将所述尺寸设置操作所设置的尺寸,确定为呈现在所述样式编辑界面中呈现所述网格时所应用的尺寸。

上述方案中,所述弹幕样式的属性包括以下至少之一:弹幕内容的颜色、弹幕内容的尺寸、弹幕内容的特效、以及弹幕内容的所述排布方式;

所述样式编辑界面包括样式调整区域和样式预览区域;

所述呈现模块,还用于响应于在所述样式调整区域中针对所述弹幕内容的颜色、尺寸、特效和排布方式至少之一的设置操作,得到新弹幕样式,并通过所述样式预览区域实时呈现应用了所述新弹幕样式的弹幕内容;

所述确定模块,还用于当在预定时间内不再接收到所述设置操作,或者接收到弹幕发送操作时,将所述新弹幕样式确定为待发送的弹幕样式。

上述方案中,所述弹幕样式的类型包括静态弹幕和动态弹幕;

所述呈现模块,还用于响应于针对所述弹幕内容的弹幕类型设置操作,得到包括被设置的弹幕类型的新弹幕样式,并通过所述弹幕编辑界面中的样式预览区域实时呈现应用了所述新弹幕样式的弹幕内容;

所述确定模块,还用于当在预定时间内不再接收到所述设置操作,或者接收到弹幕发送操作时,将所述新弹幕样式确定为待发送的弹幕样式。

上述方案中,所述呈现模块,还用于当所述新弹幕样式中的弹幕类型为静态弹幕时,在所述样式预览区域中呈现应用了所述新弹幕样式中的属性的弹幕内容,并保持所应用的属性不变;

以及用于当所述新弹幕样式中的弹幕类型为动态弹幕时,在所述样式预览区域中呈现应用了所述新弹幕样式中的属性的弹幕内容,并使所应用的属性发生变化。

上述方案中,所述呈现模块,还用于从所述多媒体播放界面的第一端开始呈现符合所述弹幕样式的所述弹幕内容,并逐步移动到第二端,直至移出所述多媒体播放界面。

上述方案中,所述发送模块,还用于执行以下操作至少之一:

将所述弹幕内容和所述弹幕样式,发送到正在播放所述多媒体信息的所有处于在线状态的客户端中;

将所述弹幕内容和所述弹幕样式,发送到正在播放所述多媒体信息、且与弹幕编辑账号具有潜在好友关系的用户账号所关联的客户端中;

将所述弹幕内容和所述弹幕样式,发送到正在播放所述多媒体信息、且由所述弹幕编辑账号选定的用户账号所关联的客户端中;

其中,所述弹幕编辑账号是编辑所述弹幕样式的用户账号。

上述方案中,所述装置还包括转换模块,用于当所述弹幕样式的尺寸小于所述弹幕编辑界面中网格的默认尺寸时,将所述弹幕内容中各个字符在网格的坐标,转换成所述弹幕样式在所述弹幕编辑界面中所实际占用的网格中的坐标;

所述确定模块,还用于将所述弹幕内容中的各个字符转换后的坐标,确定为显示所述待发送的弹幕样式中的形状时所使用的坐标。

上述方案中,所述发送模块,还用于当通过所述弹幕编辑界面接收到待发送的弹幕内容、且未接收到针对所述弹幕内容设置的弹幕样式时,发送所述弹幕内容和默认弹幕样式到正在播放所述多媒体信息的多媒体播放界面中;

所述呈现模块,还用于在所述多媒体播放界面中呈现符合所述默认弹幕样式的所述弹幕内容。

上述方案中,所述确定模块,还用于在所述弹幕编辑界面中呈现对应所述弹幕内容的候选弹幕样式,响应于针对所述弹幕内容对应的候选弹幕样式的选取操作,将被选中的弹幕样式确定为针对所述弹幕内容设置的弹幕样式;或者

用于在所述弹幕编辑界面中呈现对应所述弹幕内容的候选弹幕样式,响应于针对所述弹幕内容自动设置弹幕样式的设置操作,确定候选弹幕样式的特征向量与弹幕编辑账号的特征向量的相似度;将相似度最高的候选弹幕样式确定为针对所述弹幕内容设置的弹幕样式。

本发明实施例提供一种电子设备,包括:

存储器,用于存储可执行指令;

处理器,用于执行所述存储器中存储的可执行指令时,实现本发明实施例提供的弹幕处理方法。

本发明实施例提供一种计算机可读存储介质,存储有可执行指令,用于引起处理器执行时,实现本发明实施例提供的弹幕处理方法。

本发明实施例具有以下有益效果:

在接收到弹幕编辑操作时,呈现弹幕编辑界面,并通过弹幕编辑界面接收输入的待发送的弹幕内容、以及针对弹幕内容设置的弹幕样式,如此,用户在发送弹幕时,不仅可以输入待发送的弹幕内容,还可以针对弹幕内容设置自定义的弹幕样式,以在多媒体播放界面中按照用户设置的自定义的弹幕样式呈现弹幕内容,丰富了弹幕内容的表现形式,提高了弹幕功能的趣味性。

附图说明

图1是本发明实施例提供的弹幕处理系统的一个可选的架构示意图;

图2是本发明实施例提供的弹幕处理设备的一个可选的结构示意图;

图3a是本发明实施例提供的弹幕处理方法的一个可选的流程示意图;

图3b是本发明实施例提供的弹幕处理方法的另一个可选的流程示意图;

图4是本发明实施例提供的一个可选的弹幕编辑界面示意图;

图5是本发明实施例提供的一个可选的样式编辑界面示意图;

图6是本发明实施例提供的弹幕处理方法的一个可选的处理界面示意图;

图7是本发明实施例提供的弹幕处理方法呈现心形弹幕的界面示意图;

图8是本发明实施例提供的弹幕处理方法的一个可选的流程示意图;

图9是本发明实施例提供的弹幕处理方法的一个可选的处理界面示意图;

图10是本发明实施例提供的控制类示意图;

图11是本发明实施例提供的数据类示意图。

具体实施方式

为了使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明作进一步地详细描述,所描述的实施例不应视为对本发明的限制,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。

在以下的描述中,涉及到“一些实施例”,其描述了所有可能实施例的子集,但是可以理解,“一些实施例”可以是所有可能实施例的相同子集或不同子集,并且可以在不冲突的情况下相互结合。

除非另有定义,本文所使用的所有的技术和科学术语与属于本发明的技术领域的技术人员通常理解的含义相同。本文中所使用的术语只是为了描述本发明实施例的目的,不是旨在限制本发明。

对本发明实施例进行进一步详细说明之前,对本发明实施例中涉及的名词和术语进行说明,本发明实施例中涉及的名词和术语适用于如下的解释。

1)弹幕:多媒体的播放界面中弹出的内容,该内容可以来自于不同的用户,用于对播放界面中的内容进行评论,或者基于播放界面中显示的内容进行互动等。

2)多媒体信息:媒体是指承载和传输某种信息或者物质的载体。在计算机领域中,媒体主要是传输和存储信息的载体,其中传输的信息包括语音、文字、视频、音频等。多媒体信息是指把各种媒体的功能进行整合,在交互界面上以文字、音频或者视频等形式进行展示。

3)弹幕样式:与弹幕的视觉相关的属性/特性,至少包括:弹幕的形状(即弹幕的外形/轮廓)。

弹幕样式还可以包括弹幕内容的排布方式、弹幕内容的尺寸、弹幕内容的颜色、弹幕内容的特效等。根据弹幕样式的类型(静态/动态),弹幕样式还可以包括与静态/动态显示效果相关的属性等。

需要说明的是,在本文中提及的多个是指两个或两个以上,字符“/”表示前后关联对象是一种或的关系。

发明人在实施本发明实施例的过程中发现,相关技术在进行弹幕处理时,通常将用户发送的弹幕内容以一行文本的方式从屏幕中飘过,弹幕内容的表现形式单一,无法对用户发送的弹幕内容进行差异化展示,影响了用户体验。

对此,考虑在用户发送弹幕时提供给用户针对待发送的弹幕内容设置自定义弹幕样式的能力,故可以响应于在播放多媒体信息的过程中接收到的弹幕编辑操作,呈现弹幕编辑界面;通过弹幕编辑界面接收待发送的弹幕内容,并通过弹幕编辑界面接收针对所述弹幕内容设置的弹幕样式;发送弹幕内容和所述弹幕样式到正在播放多媒体信息的多媒体播放界面中,以在多媒体播放界面中呈现符合弹幕样式的所述弹幕内容。

鉴于此,本发明实施例提供一种弹幕处理方法、装置、电子设备及计算机可读存储介质,能够增加弹幕内容的表现形式,提高弹幕内容的趣味性。

下面说明本发明实施例提供的弹幕处理设备的示例性应用,本发明实施例提供的弹幕处理设备可以实施为笔记本电脑、平板电脑、台式计算机、机顶盒、移动设备(例如,移动电话、便携式音乐播放器、个人数字处理、专用消息设备、便携式游戏设备)等各种类型的用户终端,也可以实施为服务器或服务器集群,还可以采用由用户终端和服务器协同的方式实施。下面,将说明弹幕处理设备实施为用户终端时的示例性应用。

参见图1,图1是本发明实施例提供的弹幕处理系统100的一个可选的架构示意图,用户终端400(示例性示出了用户终端400-1和用户终端400-2)通过网络300连接服务器200,网络300可以是广域网或者局域网,又或者是二者的组合。

如图1所示,用户终端400-1上的客户端410-1通过网络300向服务器200请求多媒体信息,多媒体信息的类型包括音频和视频等。服务器200向客户端410-1发送所请求的多媒体信息,以使客户端410-1解码播放。假设此时客户端410-2也同步在播放与客户端410-1相同的多媒体信息。

在客户端410-1播放多媒体信息的过程中,客户端410-1接收用户1提交的弹幕内容,并发送至服务器200。随后,服务器200将用户1提交的弹幕内容和多媒体信息一起发送到各个客户端(包括客户端410-1和客户端410-2),客户端410-1和客户端410-2在解码播放多媒体信息的数据流时,按照弹幕内容被发送到服务器的先后顺序在多媒体信息播放界面中呈现弹幕,弹幕的一种示例性的呈现方式为:从多媒体播放界面的一端(例如左端)进入并移动,直至从多媒体播放界面的另一端(例如右端)移出。

相关技术中,弹幕内容通常是按照一行文本的方式从屏幕中飘过,弹幕内容的表现形式单一,无法对用户发送的弹幕内容进行差异化展示,影响了用户体验。

为此,本发明实施例提供一种弹幕处理方法,在用户发送弹幕时提供给用户针对待发送的弹幕内容设置自定义的弹幕样式的能力。示例的,客户端410-1响应于在播放多媒体信息的过程中接收到的弹幕编辑操作,呈现弹幕编辑界面,并通过弹幕编辑界面接收待发送的弹幕内容、以及针对弹幕内容设置的弹幕样式。随后,客户端410-1将用户1输入的弹幕内容、以及针对弹幕内容设置的弹幕样式发送给服务器200。服务器200将弹幕内容和弹幕样式下发给所有正在播放与客户端410-1相同多媒体信息的客户端中,各客户端对接收到的弹幕样式进行解析,并在播放界面中呈现符合弹幕样式的弹幕内容。

在另一些实施例中,图1中的终端的数量可以仅为一个,以终端400-1为例,其中的客户端410-1可以直接根据用户所设置的弹幕样式来呈现用户所输入的弹幕内容;或者,客户端410-1将用户所设置的弹幕样式和弹幕内容发送给服务器200,当服务器200在接收到客户端410-1发送的弹幕内容、以及针对弹幕内容设置的弹幕样式后,也可以只将弹幕内容和弹幕样式返回给客户端410-1,以仅仅在客户端410-1的多媒体播放界面中呈现符合弹幕样式的弹幕内容。

参见图2,图2为本发明实施例提供的弹幕处理设备的结构示意图。以弹幕处理设备实施为用户终端400为例,图2所示的用户终端400包括:至少一个处理器410、存储器450、至少一个网络接口420和用户接口430。用户终端400中的各个组件通过总线系统440耦合在一起。可理解,总线系统440用于实现这些组件之间的连接通信。总线系统440除包括数据总线之外,还包括电源总线、控制总线和状态信号总线。但是为了清楚说明起见,在图2中将各种总线都标为总线系统440。

处理器410可以是一种集成电路芯片,具有信号的处理能力,例如通用处理器、数字信号处理器(dsp,digitalsignalprocessor),或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等,其中,通用处理器可以是微处理器或者任何常规的处理器等。

用户接口430包括使得能够呈现媒体内容的一个或多个输出装置431,包括一个或多个扬声器和/或一个或多个视觉显示屏。用户接口430还包括一个或多个输入装置432,包括有助于用户输入的用户接口部件,比如键盘、鼠标、麦克风、触屏显示屏、摄像头、其他输入按键和控件。

存储器450可以是可移除的,不可移除的或其组合。示例性的硬件设备包括固态存储器,硬盘驱动器,光盘驱动器等。存储器450可选地包括在物理位置上远离处理器410的一个或多个存储设备。

存储器450包括易失性存储器或非易失性存储器,也可包括易失性和非易失性存储器两者。非易失性存储器可以是只读存储器(rom,readonlymemory),易失性存储器可以是随机存取存储器(ram,randomaccessmemory)。本发明实施例描述的存储器450旨在包括任意适合类型的存储器。

在一些实施例中,存储器450能够存储数据以支持各种操作,这些数据的示例包括程序、模块和数据结构或者其子集或超集,下面示例性说明。

操作系统451,包括用于处理各种基本系统服务和执行硬件相关任务的系统程序,例如框架层、核心库层、驱动层等,用于实现各种基础业务以及处理基于硬件的任务;

网络通信模块452,用于经由一个或多个(有线或无线)网络接口420到达其他计算设备,示例性的网络接口420包括:蓝牙、无线相容性认证(wifi)、和通用串行总线(usb,universalserialbus)等;

呈现模块453,用于经由一个或多个与用户接口430相关联的输出装置431(例如,显示屏、扬声器等)使得能够呈现信息(例如,用于操作外围设备和显示内容和信息的用户接口);

输入处理模块454,用于对一个或多个来自一个或多个输入装置432之一的一个或多个用户输入或互动进行检测以及翻译所检测的输入或互动。

在一些实施例中,本发明实施例提供的弹幕处理装置可以采用软件方式实现,图2示出了存储在存储器450中的弹幕处理装置455,其可以是程序和插件等形式的软件,包括以下软件模块:呈现模块4551、接收模块4552、发送模块4553。在另一些实施例中,还可以包括确定模块4554和转换模块4555。上述的模块是逻辑上的,因此根据所实现的功能可以进行任意的组合或进一步拆分。需要指出,在图2中为了方便表达,一次性示出了上述模块,但是不应视为在弹幕处理装置455排除了可以只包括呈现模块4551、接收模块4552和发送模块4553的实施,将在下文中说明各个模块的功能。

在另一些实施例中,本发明实施例提供的弹幕处理装置可以采用硬件方式实现,作为示例,本发明实施例提供的弹幕处理装置可以是采用硬件译码处理器形式的处理器,其被编程以执行本发明实施例提供的弹幕处理方法,例如,硬件译码处理器形式的处理器可以采用一个或多个应用专用集成电路(asic,applicationspecificintegratedcircuit)、dsp、可编程逻辑器件(pld,programmablelogicdevice)、复杂可编程逻辑器件(cpld,complexprogrammablelogicdevice)、现场可编程门阵列(fpga,field-programmablegatearray)或其他电子元件。

下面将结合本发明实施例提供的弹幕处理设备实施为用户终端时的示例性应用,以用户终端运行的客户端中实现本发明实施例提供的弹幕处理方法为例进行说明。

这里,客户端可以是各种类型的专用客户端(nativeapp),例如视频播放器、音频播放器、短视频app和直播app等;客户端也可是浏览器,其通过网页的形式播放视频和音频等类型的多媒体信息;客户端还可以是运行有多媒体播放小程序的各种网络应用(例如社交网络app),其中包括有供多媒体播放小程序运行的浏览器环境。

参见图3a,图3a是本发明实施例提供的弹幕处理方法的一个可选的流程示意图,将结合图3a示出的步骤进行说明。步骤s301a:客户端响应于在播放多媒体信息的过程中接收到的弹幕编辑操作,呈现弹幕编辑界面。步骤s302a:客户端通过所呈现的弹幕编辑界面接收待发送的弹幕内容、以及针对弹幕内容设置的弹幕样式,其中,弹幕样式包括弹幕内容的形状和弹幕内容的排布方式至少之一。步骤s303a:客户端发送所接收到的弹幕内容和弹幕样式,以在多媒体播放界面中呈现符合弹幕样式的弹幕内容,如此,用户在发送弹幕时可以针对弹幕内容设置自定义的形状或者弹幕内容的排布方式,大大丰富了弹幕内容的表现形式。

下面结合客户端和服务器协同实施本发明实施例提供的弹幕处理方法为例进行具体说明。参见图3b,图3b是本发明实施例提供的弹幕处理方法的另一个可选的流程示意图,将结合图3b示出的步骤进行说明。

步骤s301b:客户端响应于在播放多媒体信息的过程中接收到的弹幕编辑操作,呈现弹幕编辑界面。

在一些实施例中,客户端向服务器请求多媒体信息,并对服务器下发的多媒体信息进行解码播放。当在播放多媒体信息的过程中接收到弹幕编辑操作时,表示用户此时想要进行弹幕编辑,则响应弹幕编辑操作,呈现弹幕编辑界面。

其中,弹幕编辑操作可以是用户针对多媒体播放界面执行的触屏操作。例如,当检测到用户针对当前正在播放多媒体信息的多媒体播放界面执行了触屏操作时,呈现弹幕编辑界面。这里,触屏操作可以包括滑动手势操作、双击操作或者长按操作等。当然,用户也可以根据自身的需求,灵活地将不同的触屏操作设置为弹幕编辑操作。例如,用户可以将双击操作设置为弹幕编辑操作,那么,当客户端检测到针对多媒体播放界面的双击操作时,呈现弹幕编辑界面。

当然,弹幕编辑操作的类型不仅限于触屏操作,还可以是语音操作,基于各种用户接口部件(例如键盘和鼠标)的操作,本发明实施例中对于触屏操作的类型不做限定。

步骤s302b:客户端通过弹幕编辑界面接收待发送的弹幕内容、以及针对弹幕内容设置的弹幕样式。

在一些实施例中,通过弹幕编辑界面接收待发送的弹幕内容,可以采用以下方式:通过弹幕编辑界面中的字符输入界面接收输入的待发送的弹幕内容;通过弹幕编辑界面接收针对弹幕内容设置的弹幕样式,可以采用以下方式::响应于针对设置弹幕样式的操作入口的触发操作,呈现样式编辑界面,通过样式编辑界面获取被设置的弹幕样式。

示例的,参见图4,图4是本发明实施例提供的一个可选的弹幕编辑界面示意图。如图4所示,用户可以在文本框中(即字符输入界面)输入待发送的弹幕内容,例如“这是我的弹幕”。图4中的“样式”按键是设置弹幕样式的操作入口,当用户点击“样式”按键时,呈现样式编辑界面,并在样式编辑界面中获取被设置的弹幕样式。

在一些实施例中,弹幕样式的属性包括弹幕的形状,则通过样式编辑界面获取被设置的弹幕样式,可以采用以下方式:在样式编辑界面呈现网格,在网格中根据默认弹幕样式中的形状预填充弹幕内容包括的各个字符;响应于针对弹幕内容中至少部分字符所处的网格的移位操作,得到包括新形状的新弹幕样式,并在样式编辑界面实时呈现应用了新形状的弹幕内容;当在预定时间内不再接收到移位操作,或者接收到弹幕发送操作时,将包括新形状的新弹幕样式确定为待发送的弹幕样式。

示例的,参见图5,图5是本发明实施例提供的一个可选的样式编辑界面示意图。如图5所示,样式编辑界面主要包括左侧的样式调整区域和右侧的样式预览区域。需要说明的是,样式调整区域和样式预览区域在图5中的结构只是一种示例,这两个区域的相对位置关系不存在限制。例如,可以是样式调整区域位于样式编辑界面的右侧,样式预览区域位于样式编辑界面的左侧;又可以是样式调整区域位于样式编辑界面的上侧,样式预览区域位于样式编辑界面的下侧;还可以是样式调整区域位于样式编辑界面的下侧,样式预览区域位于样式编辑界面的上侧等,用户可以根据自身的习惯设置样式调整区域和样式预览区域之间的相对位置。

样式调整区域为一个可调整字符位置的网格区域,每个网格都是由一个输入文本组件实现的,通过监听点击事件,记录用户在网格中输入的字符、以及网格的坐标。样式预览区域主要用于实时呈现应用了新弹幕样式包括的新形状的弹幕内容。

在一些实施例中,通过字符输入界面接收到的弹幕内容首先按照默认弹幕样式中的形状预填充在样式调整区域的网格中。这里,默认弹幕样式中的形状为相关技术中提供的一行文本的形状。此时,用户可以针对弹幕内容包括的各个字符进行移位操作,以得到新的弹幕形状。这里,移位操作可以是用户选中某个字符并将其拖拽到目标位置的拖动操作。示例的,参见图5,图5所示的心形是经用户移位操作后得到的新弹幕形状,从而将一行文本的形状调整成了心形。

在另一些实施例中,样式编辑界面上还包括多个候选弹幕的形状,用户可以从中选择出心仪的弹幕形状,随后,直接将通过字符输入界面接收到的待发送的弹幕内容填充到所选择的弹幕形状中。

示例的,用户可以首先在样式编辑界面的候选弹幕形状中,选择出心仪的弹幕形状,例如,用户选择了三角形作为弹幕的形状,随后,用户在字符输入界面输入的弹幕内容可直接填充到三角形中,以形成三角性的弹幕。当然,用户在选择出弹幕形状后,如果对所选择的弹幕形状不满意,也可以对弹幕形状进行进一步的调整,并将弹幕内容填充到调整后的弹幕形状中。

需要说明的是,本发明实施例提供的样式调整区域包括的网格的尺寸是可以调节的。因此,在呈现网格之前,可以首先接收针对网格的尺寸设置操作,将尺寸设置操作所设置的尺寸,确定为呈现在样式编辑界面中呈现网格时所应用的尺寸。

例如,在呈现网格之前,可以首先给出各种候选尺寸让用户选择,用户可以根据待发送弹幕内容包括的字符数量选择相应的候选尺寸,也可以是直接让用户输入网格的尺寸(例如:可以将样式调整区域划分为10×10,或者将样式调整区域划分为15×15,用户可以根据每次实际输入的弹幕内容所包括的字符数量进行不同粒度的划分)。当用户没有设置网格的尺寸时,以默认网格的尺寸在样式编辑界面呈现网格。

在另一些实施例中,弹幕样式的属性除了包括形状,还可以包括以下至少之一:弹幕内容的颜色;弹幕内容的尺寸;弹幕内容的特效和弹幕内容的排布方式(例如:横向排布、竖向排布、倾斜排布)。

则通过样式编辑界面获取被设置的弹幕样式,可以采用以下方式:响应于在所述样式调整区域中针对所述弹幕内容的颜色、尺寸、特效和排布方式至少之一的设置操作,得到新弹幕样式,并通过所述样式预览区域实时呈现应用了所述新弹幕样式的弹幕内容;当在预定时间内不再接收到所述设置操作,或者接收到弹幕发送操作时,将所述新弹幕样式确定为待发送的弹幕样式。

示例的,用户可以在样式调整区域中针对待发送弹幕内容的颜色、尺寸、特效和排布方式至少之一进行设置,得到新弹幕样式。

例如,用户可以在样式调整区域中将弹幕内容的颜色统一设置为红色、绿色、或者渐变色等,或者仅将弹幕内容包括的部分字符设置成红色,其他字符保持默认颜色;用户也可以针对弹幕内容的尺寸进行设置。

例如,将弹幕内容的尺寸统一设置成10号;或者仅将弹幕内容包括的部分字符设置成10号,而其他字符的尺寸保持默认尺寸。

例如,将弹幕内容所包括的字符统一设置成倾斜排布;或者仅将弹幕内容中包括的部分字符设置成倾斜排布,而其他字符为横向排布。

当然,用户也可以针对弹幕内容添加相应的特效,例如:添加一些火焰、彩色条纹等;用户还可以针对弹幕内容的排布方式进行设置,将弹幕内容的排布方式设置成横向排布、竖向排布和倾斜排布等。

在另一些实施例中,还可以针对弹幕样式的类型进行设置,弹幕样式的类型包括静态弹幕和动态弹幕。其中,静态弹幕是指在多媒体播放界面中呈现弹幕内容时,弹幕样式中的属性(包括弹幕的形状、弹幕内容的颜色、尺寸、特效和排布方式等)保持不变。动态弹幕是指在多媒体播放界面中呈现弹幕内容时,弹幕样式中的属性是变化的。

示例的,当弹幕类型被设置成静态弹幕时,在多媒体播放界面显示弹幕内容时,弹幕内容所使用的弹幕样式中的各个属性是保持不变的。例如,弹幕形状始终以心形的方式从屏幕的一端移动到屏幕的另一端。

示例的,当弹幕类型被设置成动态弹幕时,在多媒体播放界面显示弹幕内容时,弹幕内容所使用的弹幕样式中的各个属性是变化的。其中,弹幕样式中的各个属性可以是一直变化的,或者是仅在屏幕上显示的部分时间中发生变化(例如可以是在最初显示的几秒内发生变化、在最后显示的几秒内发生变化、或者每间隔几秒发生变化)。弹幕样式中的各个属性的变化方式可以是随机变化的,也可以是由用户设定的。例如,对于动态弹幕,当用户没有对属性的变化方式进行额外的设定时,则采用默认的变化方式。

需要说明的是,用户可以在样式调整区域同时对弹幕的形状、弹幕内容的颜色、尺寸、特效和排布方式、以及弹幕样式的类型进行设置。例如,用户在通过移位操作得到新的弹幕形状后,还可以进一步对弹幕内容的颜色、尺寸、特效和排布方式、以及弹幕样式的类型进行设置。当用户仅针对弹幕形状进行设置,而没有对其他属性进行设置时,弹幕内容的其他属性可以采用随机设置或者采用默认设置。

在一些实施例中,用户也可以直接从样式编辑界面包括的多个候选弹幕样式中抓取感兴趣的弹幕样式作为样式模板,进行复用,而无需自己进行设置;或者,对所抓取的弹幕样式进行进一步的调整后使用。

示例的,用户可以通过预先设定的操作(例如,三指下拉,四指单机等方式)来选择弹幕编辑界面中显示的任意样式的弹幕样式作为样式模板,并自动跳转到样式编辑界面对所选择的弹幕样式进行调整,或者直接将待发送的弹幕内容填充至所选择的弹幕样式中。

在另一些实施例中,客户端也可以定期或者不定期地从后台拉取新的弹幕样式。其中,新的弹幕样式包括:与当前用户的用户特征(用户特征可以基于用户观看/点赞/转发的视频等的向量表示)相似度大于相似度阈值的用户所使用的弹幕样式;与当前用户具有社交关系(例如:好友、关注等)的用户所使用的弹幕样式;由服务器从不同维度统计的高频/高评分的弹幕样式等。如此,在用户发送弹幕时,自动为用户输入的弹幕内容套用从后台拉取的新的弹幕样式,而这些新的弹幕样式是用户感兴趣的弹幕样式,从而可以帮助用户更快地针对弹幕内容设置出满意的弹幕样式。

示例的,当用户在编辑弹幕时,可以为弹幕内容随机套用不同的弹幕样式/轮流套用不同的弹幕样式,并可以提供样式的预览入口和切换入口,允许用户在对当前自动套用的弹幕样式不满意时,根据预览效果来快速选择出满意的弹幕样式;或者,通过切换入口来快速地进行切换直至选择出满意的弹幕样式。

在另一些实施例中,还可以基于人工智能的方案来更有效地帮助用户自动套用出满意的弹幕样式。例如,通过机器学习的方法训练出用于预测弹幕样式的模型,并使用训练好的模型基于用户当前的使用场景(例如:用户当前所观看的多媒体内容名称/类型、时间)和用户画像数据,来预测出用户倾向于使用的弹幕样式。

示例的,使用已知的用户画像数据和用户使用场景、以及对应的弹幕样式作为模型的训练样本,使用机器学习方法对模型进行训练,使得训练后的模型具有基于用户当前的使用场景和用户画像数据预测出用户感兴趣的弹幕样式的能力。这里模型的损失函数可以是各种损失函数,例如:回归损失函数、平方误差损失函数、绝对误差损失函数、以及交叉熵损失函数等,损失函数用于表征预测的弹幕样式与实际的弹幕样式之间的差异。模型的类型可以是各种机器学习模型,例如分类回归树模型、神经网络模型、以及各种衍生的网格模型等。

在另一些实施例中,当通过弹幕编辑界面接收到待发送的弹幕内容、且未接收到针对弹幕内容设置的弹幕样式时,发送弹幕内容和默认的弹幕样式到多媒体播放界面中,以在多媒体播放界面中呈现符合默认的弹幕样式的弹幕内容。其中,默认的弹幕样式包括以横向或者纵向显示弹幕内容。

示例的,如图4所示,用户在弹幕编辑界面的文本框中输入待发送的弹幕内容后,直接点击“发送”按键,则该弹幕内容将以一行文本的样式呈现在屏幕上。

步骤s303b:客户端发送弹幕内容和弹幕样式至服务器。

在一些实施例中,当在预定时间内不再接收到针对弹幕样式的设置操作,或者接收到弹幕发送操作时,将弹幕内容和针对弹幕内容设置的弹幕样式发送给服务器。

示例的,参见图5,当样式调整区域在预定时间内(例如:20秒内)不再接收到针对弹幕样式的设置操作时;或者用户在样式预览区域中对弹幕样式的效果确认后,点击“发送”按键时,将弹幕内容和针对弹幕内容设置的弹幕样式发送给服务器。

在另一些实施例中,在将弹幕内容和弹幕样式发送给服务器之前,还需要将弹幕样式中的弹幕形状进行转换,并将转换后的弹幕形状和弹幕内容发送给服务器。

示例的,当弹幕样式的尺寸小于弹幕编辑界面中网格的默认尺寸时,将弹幕内容中各个字符在网格的坐标,转换成弹幕样式在弹幕编辑界面中所实际占用的网格中的坐标;并将弹幕内容中的各个字符转换后的坐标,确定为待发送的弹幕样式中的形状。

例如,参见图6,弹幕编辑界面的样式调整区域默认的网格尺寸为7×7,而心形弹幕的实际尺寸为5×4,则首先将心形弹幕在样式调整区域的坐标,转换成在5×4的网格中的坐标(如图9所示),并将弹幕内容中的各个字符在5×4的网格中的坐标发送给服务器。

步骤s304b:客户端接收服务器下发的弹幕内容和弹幕样式。

步骤s305b:客户端在多媒体播放界面中呈现符合弹幕样式的弹幕内容。

在一些实施例中,服务器可以将弹幕内容和弹幕样式发送给正在播放同一多媒体信息的所有处于在线状态的客户端(或者网页播放界面)中,以在当前播放同一多媒体信息的所有播放界面中呈现符合弹幕样式的弹幕内容。

示例的,假设客户端1-n当前正在播放同一多媒体信息,在播放多媒体信息的过程中,客户端1接收到用户1输入的待发送的弹幕内容、以及针对弹幕内容设置的弹幕样式,随后,客户端1将弹幕内容和弹幕样式发送给服务器。服务器在接收到客户端1发送的弹幕内容和弹幕样式后,将弹幕内容和弹幕样式发送给客户端1-n,以在客户端1-n的播放界面中呈现符合弹幕样式的弹幕内容。

需要说明的是,只有当客户端在开启弹幕功能后,才会在客户端的多媒体播放界面中呈现符合弹幕样式的弹幕内容;当客户端关闭弹幕功能时,不会在客户端的多媒体播放界面中呈现任何弹幕。

在另一些实施例中,服务器还可以仅将弹幕内容和弹幕样式发送给正在播放同一多媒体信息、且与弹幕编辑账号具有潜在好友关系的用户账号所关联的客户端(或者网页播放界面)中。其中,弹幕编辑账号是指编辑弹幕样式的用户账号。确定与弹幕编辑账号具有潜在好友关系的用户账号的方式为:当接收到用户a针对多媒体信息发送的弹幕内容和弹幕样式时,根据用户a的画像数据提取出用户a的用户特征,与当前观看同一多媒体信息的在线用户的用户特征计算相似度,将相似度高于相似度阈值的用户确定为与用户a具有潜在好友关系的用户,并向具有潜在好友关系的用户账号所关联的客户端发送弹幕内容和弹幕样式,以在多媒体播放界面中呈现符合弹幕样式的弹幕内容。而对于相似度低于相似度阈值的用户(即不具有潜在好友关系的用户),对其所关联的客户端发送应用了默认弹幕样式的弹幕内容,或者,发送弹幕内容和弹幕样式(其中包括屏蔽标识,以指示不要应用弹幕样式),从而在多媒体播放界面中按照默认的弹幕样式显示弹幕内容。

在另一些实施例中,服务器还可以仅将弹幕内容和弹幕样式发送给正在播放同一多媒体信息、且由弹幕编辑账号选定的用户账号所关联的客户端(或者网页播放界面)中。

示例的,弹幕编辑界面中还可以提供弹幕样式的受众设置界面,供用户选择具有社交关系的用户,选择的维度可以是一类或者多类,也可以是每一类中的一个或多个;又或者,可以针对不同类型的社交关系设置一一对应的弹幕样式。其中,社交关系可以是:订阅、关注、互动(点赞、发送电子红包、分享多媒体信息)等。如此,服务器可以仅将弹幕内容和弹幕样式发送给正在播放同一多媒体信息、且与弹幕编辑账号具有社交关系的用户账号所关联的客户端(或者网页播放界面)中,以使在具有社交关系的用户账号所关联的客户端的播放界面中呈现符合弹幕样式的弹幕内容,而在不具有社交关系的用户账号所关联的客户端的播放界面中以默认的弹幕样式显示弹幕内容。

例如,假设客户端1-n当前正在播放同一多媒体信息。在播放多媒体信息的过程中,客户端1接收到用户1输入的待发送的弹幕内容、以及针对弹幕内容设置的弹幕样式,同时接收到用户设置弹幕样式的受众为客户端2和客户端3所关联的用户账号。随后,客户端1将弹幕内容、弹幕样式、以及受众用户账号发送给服务器。服务器在接收到客户端1发送的弹幕内容、弹幕样式以及受众用户账号后,将弹幕内容和弹幕样式发送给客户端1-3,以在客户端1-3的播放界面中呈现符合弹幕样式的弹幕内容;而对于客户端4-n则以默认的弹幕样式显示用户1发送的弹幕内容。如此,通过区别显示,更加便于具有社交关系的用户之间进行互动。

在另一些实施例中,服务器还可以仅将弹幕内容和弹幕样式发送给活跃用户的用户账号所关联的客户端中,以在活跃用户的用户账号所关联的客户端的播放界面中呈现符合弹幕样式的弹幕内容,而在非活跃用户的用户账号所关联的客户端的播放界面中按照默认的弹幕样式显示弹幕内容。其中,活跃用户可以是在线时长达到预设时长的用户,或者,发送弹幕的数量超过预定数量的用户。

在另一些实施例中,服务器还可以仅将弹幕内容和弹幕样式随机发送给正在播放同一多媒体信息的部分客户端中,在所选中的部分客户端的播放界面中呈现符合弹幕样式的弹幕内容,而在其余的客户端的播放界面中按照默认的弹幕样式显示弹幕内容。

需要说明的是,本发明实施例提供的弹幕处理方法,服务器可以将用户输入的弹幕内容、以及针对弹幕内容设置的弹幕样式发送给当前时刻正在观看同一多媒体信息的用户所关联的客户端中,也可以是其他时间观看同一多媒体信息的用户所关联的客户端中,例如后台对用户输入的弹幕内容以及弹幕样式进行筛选后,将符合要求的弹幕内容和弹幕样式发送给后续观看同一多媒体信息的用户所关联的客户端中。

下面继续说明本发明实施例提供的弹幕处理装置455的实施为软件模块的示例性结构,在一些实施例中,如图2所示,存储在存储器450的弹幕处理装置455中的软件模块可以包括:呈现模块4551、接收模块4552、发送模块4553。在另一实施例中,还可以包括确定模块4554和转换模块4555。

所述呈现模块4551,用于响应于在播放多媒体信息的过程中接收到的弹幕编辑操作,呈现弹幕编辑界面;所述接收模块4552,用于通过所述弹幕编辑界面接收待发送的弹幕内容,并通过所述弹幕编辑界面接收针对所述弹幕内容设置的弹幕样式,其中,所述弹幕样式包括所述弹幕内容的形状和所述弹幕内容的排布方式至少之一;所述发送模块4553,用于发送所述弹幕内容和所述弹幕样式;所述呈现模块4551,还用于在多媒体播放界面中呈现符合所述弹幕样式的所述弹幕内容。

在一些实施例中,所述呈现模块4551,还用于呈现用于编辑待发送的弹幕内容的字符输入界面,以及用于设置弹幕样式的操作入口;所述接收模块4552,还用于通过所述弹幕编辑界面中的字符输入界面接收输入的待发送的弹幕内容;所述呈现模块4551,还用于响应于针对所述设置弹幕样式的操作入口的触发操作,呈现样式编辑界面,并通过所述样式编辑界面获取被设置的弹幕样式。

在一些实施例中,所述弹幕样式的属性包括形状;所述呈现模块4551,还用于在所述样式编辑界面中呈现网格,所述网格中预填充有所述弹幕内容包括的各个字符,且是根据默认弹幕样式中的形状填充的;以及用于响应于针对所述弹幕内容中至少部分字符所处的网格的移位操作,得到包括新形状的新弹幕样式,并在所述样式编辑界面实时呈现应用了所述新弹幕样式中所述新形状的弹幕内容;所述装置还包括确定模块4554,用于当在预定时间内不再接收到所述移位操作,或者接收到弹幕发送操作时,将所述新弹幕样式确定为待发送的弹幕样式。

在一些实施例中,所述接收模块4552,还用于接收针对所述网格的尺寸设置操作;所述确定模块4554,还用于将所述尺寸设置操作所设置的尺寸,确定为呈现在所述样式编辑界面中呈现所述网格时所应用的尺寸。

在一些实施例中,所述弹幕样式的属性包括以下至少之一:弹幕内容的颜色、弹幕内容的尺寸、弹幕内容的特效、以及弹幕内容的排布方式;所述样式编辑界面包括样式调整区域和样式预览区域;所述呈现模块4551,还用于响应于在所述样式调整区域中针对所述弹幕内容的颜色、尺寸、特效和排布方式至少之一的设置操作,得到新弹幕样式,并通过所述样式预览区域实时呈现应用了所述新弹幕样式的弹幕内容;所述确定模块4554,还用于当在预定时间内不再接收到所述设置操作,或者接收到弹幕发送操作时,将所述新弹幕样式确定为待发送的弹幕样式。

在一些实施例中,所述弹幕样式的类型包括静态弹幕和动态弹幕;所述呈现模块4551,还用于响应于针对所述弹幕内容的弹幕类型设置操作,得到包括被设置的弹幕类型的新弹幕样式,并通过所述弹幕编辑界面中的样式预览区域实时呈现应用了所述新弹幕样式的弹幕内容;所述确定模块4554,还用于当在预定时间内不再接收到所述设置操作,或者接收到弹幕发送操作时,将所述新弹幕样式确定为待发送的弹幕样式。

在一些实施例中,所述呈现模块4551,还用于当所述新弹幕样式中的弹幕类型为静态弹幕时,在所述样式预览区域中呈现应用了所述新弹幕样式中的属性的弹幕内容,并保持所应用的属性不变;以及用于当所述新弹幕样式中的弹幕类型为动态弹幕时,在所述样式预览区域中呈现应用了所述新弹幕样式中的属性的弹幕内容,并使所应用的属性发生变化。

在一些实施例中,所述呈现模块4551,还用于从所述多媒体播放界面的第一端开始呈现符合所述弹幕样式的所述弹幕内容,并逐步移动到第二端,直至移出所述多媒体播放界面。

在一些实施例中,所述发送模块4553,还用于执行以下操作至少之一:将所述弹幕内容和所述弹幕样式,发送到正在播放所述多媒体信息的所有处于在线状态的客户端中;将所述弹幕内容和所述弹幕样式,发送到正在播放所述多媒体信息、且与弹幕编辑账号具有潜在好友关系的用户账号所关联的客户端中;将所述弹幕内容和所述弹幕样式,发送到正在播放所述多媒体信息、且由所述弹幕编辑账号选定的用户账号所关联的客户端中;其中,所述弹幕编辑账号是编辑所述弹幕样式的用户账号。

在一些实施例中,所述装置还包括转换模块4555,用于当所述弹幕样式的尺寸小于所述弹幕编辑界面中网格的默认尺寸时,将所述弹幕内容中各个字符所在网格的坐标,转换成所述弹幕样式在所述弹幕编辑界面中所实际占用的网格中的坐标;所述确定模块4554,还用于将所述弹幕内容中的各个字符转换后的坐标,确定为显示所述待发送的弹幕样式中的形状时所使用的坐标。

在一些实施例中,所述发送模块4553,还用于当通过所述弹幕编辑界面接收到待发送的弹幕内容、且未接收到针对所述弹幕内容设置的弹幕样式时,发送所述弹幕内容和默认弹幕样式到正在播放所述多媒体信息的多媒体播放界面中;所述呈现模块4551,还用于在所述多媒体播放界面中呈现符合所述默认弹幕样式的所述弹幕内容。

在一些实施例中,所述确定模块4554,还用于在所述弹幕编辑界面中呈现对应所述弹幕内容的候选弹幕样式,响应于针对所述弹幕内容对应的候选弹幕样式的选取操作,将被选中的弹幕样式确定为针对所述弹幕内容设置的弹幕样式;或者用于在所述弹幕编辑界面中呈现对应所述弹幕内容的候选弹幕样式,响应于针对所述弹幕内容自动设置弹幕样式的设置操作,确定候选弹幕样式的特征向量与弹幕编辑账号的特征向量的相似度;将相似度最高的候选弹幕样式确定为针对所述弹幕内容设置的弹幕样式。

需要说明的是,本发明实施例装置的描述,与上述方法实施例的描述是类似的,具有同方法实施例相似的有益效果,因此不做赘述。对于本发明实施例提供的弹幕处理装置中未尽的技术细节,可以根据图3、8任一附图的说明而理解。

下面,将说明本发明实施例在一个实际的应用场景中的示例性应用。

以视频播放客户端为例,当用户在观看视频的过程中想要发送弹幕时,点击编辑弹幕按键,弹出输入法进行弹幕内容的输入。图4是本发明实施例提供的一个可选的弹幕编辑界面示意图,如图4所示,用户在文本框中输入弹幕内容,例如“这是我的弹幕”,点击文本框右侧的“发送”按键后,弹幕内容将被发送到屏幕上进行显示。而“发送”按键右侧的“样式”按键是本发明实施例新增的针对弹幕内容设置弹幕样式的功能入口按键。当用户在文本框中输入自己想要发送的弹幕内容,并直接点击“发送”按键后,弹幕内容将以一行文本的样式显示在屏幕中。而当用户点击“样式”按键时,则跳转到样式编辑界面。

图5是本发明实施例提供的一个可选的样式编辑界面示意图。如图5所示,样式编辑界面包括两个主要区域,分别是左侧的样式调整区域和右侧的样式预览区域。其中,右侧的样式预览区域负责实时显示左侧样式调整区域调整后的弹幕内容在发送后会在屏幕上显示的样子。用户在样式预览区域确认效果后,点击“发送”按键,弹幕就会进入后续的发送流程。

需要说明的是,样式调整区域和样式预览区域的相对位置并不局限于图5所示,也可以是样式调整区域位于右侧,样式预览区域位于左侧,或者是样式调整区域位于上侧,样式预览区域位于下侧等。

如图5所示,左侧的样式调整区域为一个可调整字符位置的网格区域,每个网格都有自己的坐标用于确认位置。图5中样式调整区域显示的网格为7×7的样式,当然,样式调整区域显示的网格尺寸并不局限于图5所示的7×7的样式,也可以是10×10的样式,或者是其他尺寸的样式,本发明实施例对此不作限定。

下面以图5所示的7×7的样式为例进行说明,用户可以在网格中输入字符,每个网格只能输入一个字符。当用户连续输入多个字符时,其他的字符会依次填入后面的网格中。随后,针对网格区域构建坐标系,以确定出每个网格对应的坐标位置。图6是本发明实施例提供的弹幕处理方法的一个可选的处理界面示意图。如图6所示,以网格区域的左上角第一个网格为坐标原点(0,0),则右下角最后一个网格的坐标为(6,6),如此,每个网格的坐标位置可以按照坐标系确定下来。需要说明的是,本发明实施例只需确定出每个网格的坐标位置即可,并不限定坐标原点的位置。例如,可以以网格区域的左下角第一个网格为坐标原点构建坐标系,也可以以网格区域的右下角第一个网格为坐标原点构建坐标系,或者以网格区域的右上角第一个网格为坐标原点构建坐标系等。在构建坐标系后,用户在网格中添加的每个字符都有一个唯一的坐标位置与之对应。如图6所示,弹幕内容“这是我的弹幕”以心形摆放在网格中,每个字符都有一个对应的坐标位置。当用户添加字符并且摆放完成,点击“发送”按键后,该弹幕内容就会以网格中的心形样式出现在屏幕中,如图7所示。

需要说明的是,本发明实施例并不局限于上述通过网格对字符进行定位的方式,实际上还可以让用户直接在样式调整区域拖拽字符,并记录字符的像素坐标来进行字符坐标位置的记录。

图8是本发明实施例提供的弹幕处理方法的一个可选的流程示意图,下面将结合图8示出的步骤进行说明。

步骤s801:客户端在播放视频的过程中,接收弹幕编辑操作。

步骤s802:客户端响应于弹幕编辑操作,呈现样式编辑界面。

在一些实施例中,可以通过接收针对视频的播放界面上设置的特定热键的操作,来呈现样式编辑界面。

示例的,如图4所示,当用户在观看视频的过程中想要发送弹幕时,可以通过点击播放界面上设置的“样式”按键,进而呈现出样式编辑界面。其中,样式编辑界面可以悬浮显示于所播放的视频之上,或者独立于所述视频的播放界面进行显示。

步骤s803:客户端通过样式编辑界面接收弹幕内容、以及针对弹幕内容设置的弹幕样式。

其中,样式编辑界面包括样式调整区域和样式预览区域。通过样式调整区域接收待发送的弹幕内容、以及针对弹幕内容设置的弹幕样式。样式预览区域用于实时显示应用了设置后的弹幕样式的弹幕内容在屏幕中所显示的样子。

步骤s804:客户端接收确认操作。

如图5所示,用户在样式预览区域对编辑后的弹幕样式进行预览,当用户预览确认效果后,点击“发送”按键,即进入后续的发送流程。

步骤s805:客户端发送弹幕内容和弹幕样式至服务器。

客户端在将弹幕发送至服务器时,不仅会发送弹幕内容,还会发送针对弹幕内容设置的弹幕样式。其中,弹幕样式可以是弹幕内容包括的各个字符所对应的坐标位置所组成的一组坐标数据。以图6的心形弹幕为例,弹幕内容包括的各个字符对应的坐标如下:这(2,1),是(3,2),我(4,1),的(5,2),弹(4,3),幕(3,4),内(2,3),容(1,2),以及三个星号的坐标分别为(2,2),(4,2)和(3,3)。这组坐标是以7×7的网格坐标系计算出来的,但实际上心形弹幕占据的位置仅需5×4的网格大小,所以这组坐标会经过一次坐标转换,转换为图9所示的坐标系。经过转换后每个字符对应的坐标如下:这(1,0),是(2,1),我(3,0),的(4,1),弹(3,2),幕(2,3),内(1,2),容(0,1),以及三个星号的坐标分别为(1,1),(3,1),(2,2)。转换后的坐标数据将作为一条弹幕样式数据发送给服务器存储下来。

步骤s806:客户端接收服务器下发的弹幕内容和弹幕样式。

客户端在请求弹幕数据时,也会从服务器得到每条弹幕完整的坐标数据。这里的客户端可以是所有观看该视频并开启弹幕功能的客户端,也可以仅是与该用户账号具有社交关系的用户账号所关联的客户端。仍以上述心形弹幕为例,客户端从服务器下载到的一条弹幕数据为:这(1,0),是(2,1),我(3,0),的(4,1),弹(3,2),幕(2,3),内(1,2),容(0,1),以及三个星号的坐标分别为(1,1),(3,1),(2,2)。

步骤s807:客户端根据样式规则解析还原弹幕样式。

步骤s808:客户端在多媒体播放界面上呈现符合弹幕样式的弹幕内容。

客户端在接收到服务器下发的弹幕数据后,首先根据坐标位置确定这条弹幕需要占据的屏幕大小。以上述心形弹幕为例,客户端首先根据坐标位置确定出这条弹幕需要占据的屏幕大小为5×4的网格。然后,将每个字符填入到该5×4的网格中对应的位置,从而确定出该弹幕的形状,并按照该形状绘制弹幕到屏幕中,如此,便形成了最后屏幕上具备自定义样式的弹幕内容。

本发明实施例提供的弹幕处理方法,按照模型-视图-控制器(mvc,model-view-controller)架构实现为三层,包括:展示层、控制层和数据层。

其中,展示层的界面示意图如图5所示,包括:左侧的样式调整区域和右侧的样式预览区域。下面分别具体介绍这两个区域。

样式调整区域为一个可调整文字位置的网格区域,每个网格都是由一个输入文本组件(edittext)实现,每个网格限制字符个数为1个。通过监听点击事件,当用户点击某个网格时对应的输入文本组件进行响应,用户通过输入法输入的字符也会显示在每个网格中。整个网格区域通过7×7的独立网格平铺而成,每个网格会记录自己的坐标位置。

根据左侧样式调整区域中网格的坐标位置与其中字符之间的对应关系,在右侧的样式预览区域中绘制出该弹幕的最终样式,该预览窗口可以通过自定义的文本控件(textview)实现,在该自定义的文本控件内完成每个字符在不同坐标位置的绘制与显示。

其中,控制类的示意图如图10所示,包含了数据类(damakudata)和弹幕样式窗口(danmastyleview)。控制类的作用是作为数据类和展示类的桥梁,将二者的功能结合起来,封装成类给外界调用。如此,可以很好地将逻辑和界面分开,仅仅提供一个实现,就能完成一个功能。其可以实现的功能包括:组织弹幕数据、创建弹幕样式、向服务器添加新的弹幕内容和解析服务器返回的弹幕样式等。

其中,数据层主要用于处理弹幕的样式数据在客户端与服务器之间的发送和解析。数据类的示意图如图11所示,数据类(damakudata)负责存储所有的弹幕数据,且以列表(danmakulist)的形式进行存储。单一弹幕(danmukuitem)都包含了文本数据(mtext)和位置数据(mposition),其中,位置数据包含了文字对应的x坐标和y坐标。经过弹幕样式调整区域创建的带有样式的弹幕对应一条单一弹幕。控制层也是通过对数据类的解析进行弹幕的样式显示。

本发明实施例提供的弹幕处理方法,增加了弹幕的表现形式,除了可以将弹幕内容以一行文本的样式显示在屏幕中,还可以让用户自定义弹幕内容的样式。同时,弹幕样式会与弹幕内容一同保存在服务器中,实现了弹幕样式的持久性存储。本发明实施例提供的弹幕处理方法,丰富了弹幕的表现形式,使得弹幕功能更加具有趣味性,进而增加了用户使用弹幕功能的意愿。

本发明实施例提供一种存储有可执行指令的存储介质,其中存储有可执行指令,当可执行指令被处理器执行时,将引起处理器执行本发明实施例提供的弹幕处理方法,例如,如图3、8示出的弹幕处理方法。

在一些实施例中,存储介质可以是fram、rom、prom、eprom、eeprom、闪存、磁表面存储器、光盘、或cd-rom等存储器;也可以是包括上述存储器之一或任意组合的各种设备。

在一些实施例中,可执行指令可以采用程序、软件、软件模块、脚本或代码的形式,按任意形式的编程语言(包括编译或解释语言,或者声明性或过程性语言)来编写,并且其可按任意形式部署,包括被部署为独立的程序或者被部署为模块、组件、子例程或者适合在计算环境中使用的其它单元。

作为示例,可执行指令可以但不一定对应于文件系统中的文件,可以被存储在保存其它程序或数据的文件的一部分,例如,存储在超文本标记语言(html,hypertextmarkuplanguage)文档中的一个或多个脚本中,存储在专用于所讨论的程序的单个文件中,或者,存储在多个协同文件(例如,存储一个或多个模块、子程序或代码部分的文件)中。

作为示例,可执行指令可被部署为在一个计算设备上执行,或者在位于一个地点的多个计算设备上执行,又或者,在分布在多个地点且通过通信网络互连的多个计算设备上执行。

综上所述,通过本发明实施例具有以下有益效果:

在用户发送弹幕时,提供给用户针对弹幕内容设置自定义的弹幕样式的能力,用户可以将自己想要发送的弹幕内容进行不同形状的排列,或者添加颜色、特效、设置弹幕类型等,并以用户自定义设置的弹幕样式显示弹幕内容,改变了相关技术中仅支持以一行文本的形状显示弹幕内容,丰富了弹幕内容的表现形式,使得弹幕功能更加具有趣味性,进而增加了用户使用弹幕功能的意愿。

以上所述,仅为本发明的实施例而已,并非用于限定本发明的保护范围。凡在本发明的精神和范围之内所作的任何修改、等同替换和改进等,均包含在本发明的保护范围之内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1