CN113766298A - 弹幕展示方法、装置及系统 - Google Patents
弹幕展示方法、装置及系统 Download PDFInfo
- Publication number
- CN113766298A CN113766298A CN202111033625.4A CN202111033625A CN113766298A CN 113766298 A CN113766298 A CN 113766298A CN 202111033625 A CN202111033625 A CN 202111033625A CN 113766298 A CN113766298 A CN 113766298A
- Authority
- CN
- China
- Prior art keywords
- bullet screen
- type information
- target
- template
- protocol
- 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.)
- Granted
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/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/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/23—Processing of content or additional data; Elementary server operations; Server middleware
- H04N21/235—Processing of additional data, e.g. scrambling of additional data or processing content descriptors
-
- 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/435—Processing of additional data, e.g. decrypting of additional data, reconstructing software from modules extracted from the transport stream
-
- 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)
- User Interface Of Digital Computer (AREA)
Abstract
本申请提供弹幕展示方法、装置及系统,其中所述弹幕展示方法包括:接收服务端下发的协议类型信息,基于所述协议类型信息更新弹幕模板;在接收到所述服务端下发的弹幕数据包的情况下,对所述弹幕数据包进行解析获得弹幕类型信息以及所述弹幕类型信息对应的弹幕数据;根据所述弹幕类型信息在更新后的弹幕模板中选择目标弹幕模板;基于所述弹幕类型信息和所述弹幕数据对所述目标弹幕模板进行更新,根据更新结果生成目标弹幕并展示。
Description
技术领域
本申请涉及互联网技术领域,特别涉及弹幕展示方法、装置及系统。
背景技术
随着互联网技术的发展,越来越多的平台为了能够提高浏览者的参与度,在向浏览者播放多媒体资源时都会为浏览者提供发送弹幕功能。随着浏览者对弹幕的需求增强,各式各样类型的弹幕应用而生,实现在不同的场景下可以选择不同类型的弹幕实现信息的推送、评论的发表或业务的提醒等。但是在不同场景下为支持不同类型的弹幕,大多数需要针对当前场景单独开发支持弹幕的功能,以实现当前场景可以支持关于弹幕的相关功能。
发明内容
有鉴于此,本申请实施例提供了一种弹幕展示方法。本申请同时涉及一种弹幕展示装置,一种弹幕展示系统,一种计算设备,以及一种计算机可读存储介质,以解决现有技术中存在的弹幕功能通用性低,维护成本高的问题。
根据本申请实施例的第一方面,提供了一种弹幕展示方法,应用于客户端,包括:
接收服务端下发的协议类型信息,基于所述协议类型信息更新弹幕模板;
在接收到所述服务端下发的弹幕数据包的情况下,对所述弹幕数据包进行解析获得弹幕类型信息以及所述弹幕类型信息对应的弹幕数据;
根据所述弹幕类型信息在更新后的弹幕模板中选择目标弹幕模板;
基于所述弹幕类型信息和所述弹幕数据对所述目标弹幕模板进行更新,根据更新结果生成目标弹幕并展示。
根据本申请实施例的第二方面,提供了一种弹幕展示装置,应用于客户端,包括:
接收模块,被配置为接收服务端下发的协议类型信息,基于所述协议类型信息更新弹幕模板;
解析模块,被配置为在接收到所述服务端下发的弹幕数据包的情况下,对所述弹幕数据包进行解析获得弹幕类型信息以及所述弹幕类型信息对应的弹幕数据;
选择模块,被配置为根据所述弹幕类型信息在更新后的弹幕模板中选择目标弹幕模板;
展示模块,被配置为基于所述弹幕类型信息和所述弹幕数据对所述目标弹幕模板进行更新,根据更新结果生成目标弹幕并展示。
根据本申请实施例的第三方面,提供了一种弹幕展示系统,包括:
客户端和服务端;
所述服务端,被配置为向所述客户端下发协议类型信息;
所述客户端,被配置为基于所述协议类型信息更新弹幕模板;
所述服务端,进一步被配置为确定业务用户在目标业务中触发的业务事件;根据所述业务事件确定弹幕协议,并按照所述弹幕协议创建与所述业务事件关联的弹幕数据包,下发至所述客户端;
所述客户端,被配置为接收所述服务端下发的所述弹幕数据包,对所述弹幕数据包进行解析获得弹幕类型信息以及所述弹幕类型信息对应的弹幕数据;根据所述弹幕类型信息在更新后的弹幕模板中选择目标弹幕模板;基于所述弹幕类型信息和所述弹幕数据对所述目标弹幕模板进行更新,根据更新结果生成目标弹幕并展示。
根据本申请实施例的第四方面,提供了一种计算设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机指令,所述处理器执行所述指令时实现所述弹幕展示方法的步骤。
根据本申请实施例的第五方面,提供了一种计算机可读存储介质,其存储有计算机指令,该指令被处理器执行时实现所述弹幕展示方法的步骤。
本申请提供的弹幕展示方法,在接收到服务端下发的协议类型信息后,可以以此为基础对客户端已经存储的弹幕模板进行更新,实现在客户端设置具有通用性的弹幕模板;之后在接收到服务端下发的弹幕数据包后,可以对弹幕数据包进行解析获得需要展示的弹幕对应的弹幕类型信息及其对应的弹幕数据;再基于弹幕类型信息在更新后的弹幕模板中选择目标弹幕模板,结合弹幕类型信息和弹幕数据对其进行更新,即可得到用于展示的目标弹幕,不仅可以提高弹幕生成效率,还能够避免展示出错的问题发生。同时,设置与弹幕协议关联的弹幕模板,可以有效节省针对不同类型的弹幕设置不同的弹幕协议所消耗的成本,只需要动态调整协议类型信息即可实现支持不同类型弹幕的生成,从而有效的提高了弹幕的通用性,实现适配到更多的业务场景。
附图说明
图1是本申请一实施例提供的一种弹幕展示方法的流程图;
图2是本申请一实施例提供的一种弹幕展示方法中弹幕协议的示意图;
图3是本申请一实施例提供的一种弹幕展示方法中弹幕组成部分的示意图;
图4是本申请一实施例提供的一种弹幕展示方法中目标弹幕的示意图;
图5是本申请一实施例提供的一种弹幕展示装置的结构示意图;
图6是本申请一实施例提供的一种弹幕展示系统的结构示意图;
图7是本申请一实施例提供的一种应用于直播场景中的弹幕展示的处理流程图;
图8是本申请一实施例提供的一种计算设备的结构框图。
具体实施方式
在下面的描述中阐述了很多具体细节以便于充分理解本申请。但是本申请能够以很多不同于在此描述的其它方式来实施,本领域技术人员可以在不违背本申请内涵的情况下做类似推广,因此本申请不受下面公开的具体实施的限制。
在本申请一个或多个实施例中使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本申请一个或多个实施例。在本申请一个或多个实施例和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。还应当理解,本申请一个或多个实施例中使用的术语“和/或”是指并包含一个或多个相关联的列出项目的任何或所有可能组合。
应当理解,尽管在本申请一个或多个实施例中可能采用术语第一、第二等来描述各种信息,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。例如,在不脱离本申请一个或多个实施例范围的情况下,第一也可以被称为第二,类似地,第二也可以被称为第一。取决于语境,如在此所使用的词语“如果”可以被解释成为“在……时”或“当……时”或“响应于确定”。
在本申请中,提供了一种弹幕展示方法,本申请同时涉及一种弹幕展示装置,一种弹幕展示系统,一种计算设备,以及一种计算机可读存储介质,在下面的实施例中逐一进行详细说明。
实际应用中,随着弹幕应用的推广,更多业务场景中都会配置关于弹幕的功能,如视频浏览场景,用户可以发送弹幕进行评论。如直播场景,用户可以发送弹幕与主播互动。而随着用户对弹幕的需求增强,业务方也相对开发出了更多种类的弹幕;提示性弹幕成为了直播场景中不可缺少的一种弹幕。其主要用于发送广播提醒,如直播场景中,用户向主播赠送虚拟礼物时,可以通过提示性弹幕进行全直播间或全平台广播;或者用户在主播的直播间开通了特殊功能,可以通过提示性弹幕进行全直播间或全平台广播。然而现有技术中,提示性弹幕都是独立存在的,每次类似需求都需要重新开发,这就会影响业务的上线时间,同时单独开发成本和维护都较为复杂,因此亟需一种有效的方案以解决上述问题。
本申请提供的弹幕展示方法,在接收到服务端下发的协议类型信息后,可以以此为基础对客户端已经存储的弹幕模板进行更新,实现在客户端设置具有通用性的弹幕模板;之后在接收到服务端下发的弹幕数据包后,可以对弹幕数据包进行解析获得需要展示的弹幕对应的弹幕类型信息及其对应的弹幕数据;再基于弹幕类型信息在更新后的弹幕模板中选择目标弹幕模板,结合弹幕类型信息和弹幕数据对其进行更新,即可得到用于展示的目标弹幕,不仅可以提高弹幕生成效率,还能够避免展示出错的问题发生。同时,设置与弹幕协议关联的弹幕模板,可以有效节省针对不同类型的弹幕设置不同的弹幕协议所消耗的成本,只需要动态调整协议类型信息即可实现支持不同类型弹幕的生成,从而有效的提高了弹幕的通用性,实现适配到更多的业务场景。
图1示出了根据本申请一实施例提供的一种弹幕展示方法的流程图,该方法应用于客户端,具体包括以下步骤:
步骤S102,接收服务端下发的协议类型信息,基于所述协议类型信息更新弹幕模板。
具体的,客户端具有是指用户持有的终端设备,包括但不限于手机、电脑、笔记本或者可穿戴设备等;相应的,服务端具体是指向客户端提供弹幕服务的业务端,且服务端将根据业务需求向客户端广播/同步业务相关的信息。协议类型信息具体是指弹幕协议中针对不同的弹幕类型设置的相关信息,通过协议类型信息能够确定服务端新建立的弹幕,通过同步该协议类型信息能够使得客户端及时更新弹幕模板,支持新建立的弹幕的展示,无需重新进行模板的下发。相应的,弹幕模板具体是指对应不同弹幕类型的模板,将弹幕数据包中的弹幕数据添加到弹幕模板即可创建出与类型相同的目标弹幕。
进一步的,当服务端下发协议类型信息时,说明服务端需要创建新的弹幕,此时为了能够支持客户端进行弹幕的正常展示,可以向各个客户端进行协议类型信息的广播,客户端在接收到协议类型信息后,可以根据该信息对弹幕模板进行更新,以实现支持新的弹幕展示。
举例说明,客户端存在三种弹幕模板,分别为图弹幕模板,文字弹幕模板和图文弹幕模板,在模板中type1表示图数据,type2表示文字;当服务端需要建立图片+文字+控件的弹幕时,将向各个客户端广播type3表示控件的协议类型信息,客户端在接收到协议类型信息后,为了能够支持图片+文字+控件的弹幕的展示,将基于协议类型信息对已经存在的三种弹幕模板进行更新,以生成图片+控件的模板,图片+控件+文字的模板,文字+控件的模板以及控件模板,方便后续展示出能够包含控件的提示性弹幕。
步骤S104,在接收到所述服务端下发的弹幕数据包的情况下,对所述弹幕数据包进行解析获得弹幕类型信息以及所述弹幕类型信息对应的弹幕数据。
具体的,弹幕数据包具体是指生成弹幕所需要使用的数据组成的封装包,其中,弹幕数据包中可以包括生成文字弹幕的数据,或者生成图文弹幕的数据,或者生成包含用户交互区域的弹幕数据,及其各种类型数据对应的弹幕类型信息。
实际应用中,弹幕数据包中所包含的弹幕数据内容将取决于触发的弹幕事件,当触发的弹幕事件仅涉及文字的情况下,则弹幕数据包中将包含生成文字弹幕的相关数据;当触发的弹幕事件涉及图文的情况下,则弹幕数据包中将包含生成图片和文字组合弹幕的相关数据;当触发的弹幕事件涉及图文及交互的情况下,则弹幕数据包中间包含生成图片、文字以及交互控件组合弹幕的相关数据。其中,弹幕事件具体是指在用户使用不同的直播服务时所触发的事件;如用户在主播的直播间赠送虚拟礼物,则用户会触发广播礼物赠送弹幕事件。若用户在主播的直播间开通某项业务,则用户会触发广播公告弹幕事件等。
具体实施时,不同的弹幕事件将触发不同的弹幕,则此时服务端将根据不同的触发事件创建不同的弹幕数据包,用于发送至正在观看直播的用户持有的客户端,方便客户端可以基于弹幕数据包创建出提示性弹幕并展示,达到广播的作用。
需要说明的是,弹幕展示方法所应用于的客户端为了能够展示相应的目标弹幕,需要处于观看直播状态,并且未开启弹幕公告屏蔽功能,此时即可按照弹幕展示方法在客户端生成目标弹幕向用户进行展示。
基于此,弹幕类型信息具体是指弹幕事件所对应的提示性弹幕相关的信息,通过弹幕类型信息能够确定后续创建的目标弹幕所涉及到的相关数据类型,以方便后续选择合理的弹幕模板进行目标弹幕的创建。也就是说,弹幕类型信息为弹幕协议中每部分弹幕数据的标识,并且弹幕类型信息的定义由服务端设定。
进一步的,在接收到服务端下发的弹幕数据包之后,表明此时有某个用户或者主播触发了某个涉及弹幕相关的事件,需要在各个正在观看直播的客户端上展示该事件相关的弹幕内容,为了能够提高该种类弹幕的通用性,以及降低维护成本,可以读取在客户端预先存储可以动态变化的弹幕协议对应的弹幕模板,且该弹幕模板已经基于协议类型信息更新完成。其中弹幕协议可以根据需要展示的弹幕的类型封装不同类型的弹幕数据包;如需要在客户端展示文字弹幕,则在该弹幕协议中只添加文字对应的协议即可,用于对文字弹幕涉及到的数据及其对应的弹幕类型信息封装为弹幕数据包,实现在客户端展示文字形式的弹幕;如需要在客户端展示图文弹幕,则在弹幕协议中添加文字和图片对应的协议即可,其他协议内容保持不变,用于对图文弹幕涉及到的数据及其对应的弹幕类型信息封装为弹幕数据包,实现在客户端展示图文形式的弹幕。
也就是说,服务端为了能够支持不同类型弹幕的广播,可以设置可动态变化的通用性弹幕协议,实现根据待广播的弹幕类型动态在弹幕协议中增加相应的协议类型信息,即可支持客户端根据弹幕数据包创建出不同形式的弹幕,不仅可以提高弹幕的通用性,还能够降低弹幕维护成本,以此提高弹幕广播效率。
此外,服务端通过设置通用性弹幕协议还可以对提示性弹幕起到统一的作用,在有新的与弹幕相关的业务时,直接进行简单的接入即可实现支持提示性弹幕的功能,使得客户端提示性弹幕UI组件与业务完全分离,通过服务端广播弹幕数据包,即可支持展示不同类型的弹幕。
其中,弹幕数据具体是指组成目标弹幕所需要使用的数据,不同的弹幕类型涉及到的弹幕数据也不同,弹幕数据包括但不限于文字弹幕数据,图片弹幕数据和地址弹幕数据等,需要说明的是,弹幕数据的组成部分将根据触发弹幕事件的用户相关的信息,以及弹幕事件相关的信息共同组成,以此实现生成的目标弹幕可以起到提示性的目的。相应的,弹幕协议具体是指封装弹幕数据包所对应的协议,且该弹幕协议包含的协议内容可以根据弹幕类型动态增加或减少,以告知客户端当前需要展示的弹幕所属的类型,涉及到的内容;相应的,弹幕模板具体是指对应不同弹幕类型的模板,将弹幕数据包中的弹幕数据添加到弹幕模板即可创建出与类型相同的目标弹幕。
基于此,当接收到服务端广播的弹幕数据包之后,为了在客户端成功展示弹幕内容,此时可以对弹幕数据包进行解析获得弹幕类型信息及其对应的弹幕数据,之后可以读取客户端中预存的且更新后的弹幕模板,从中选择与弹幕数据包的弹幕协议关联的目标弹幕模板,方便后续结合弹幕数据创建出目标弹幕进行展示。
需要说明的是,由于弹幕类型是由服务端决定,而不同的弹幕类型对应不同的弹幕协议,因此不同的弹幕协议将对应不同的弹幕模板,通过确定与弹幕协议关联的弹幕模板,即可确定待展示的弹幕类型对应的弹幕模板,方便后续生成目标弹幕。
进一步的,在对弹幕数据包进行解析时,考虑到不同的弹幕数据包对应不同类型的弹幕,为了能够保证客户端可以正常展示目标弹幕,可以基于弹幕类型选择对应的解析策略对其进行解析,以获得弹幕类型信息及其对应的弹幕数据,本实施例中,具体实现方式如下所述:
确定与所述弹幕数据包对应的弹幕类型;
选择所述弹幕类型对应的解析策略对所述弹幕数据包进行解析,获得与所述弹幕类型对应的所述弹幕类型信息以及与所述弹幕类型关联的所述弹幕数据。
具体的,弹幕类型具体是指待展示的提示性弹幕所对应的类型,不同的弹幕类型可以对应不同的弹幕结构,相应的,解析策略具体是指能够对不同类型的弹幕数据包进行解析的方案,实现在弹幕数据包中成功提取与弹幕类型相关的弹幕类型信息及其对应的弹幕数据,方便后续进行弹幕创建。
基于此,在接收到服务端广播的弹幕数据包之后,为了能够成功的从弹幕数据包中提取后续生成目标弹幕所需要使用的弹幕数据,此时可以确定弹幕数据包对应的弹幕类型,之后选择与弹幕类型对应的解析策略对弹幕数据包进行解析,从而实现根据解析结果可以获得与弹幕类型对应的弹幕类型信息,并确定弹幕类型关联的弹幕数据,以用于后续创建目标弹幕所使用。
综上,通过选择与弹幕类型对应的解析策略对弹幕数据包解析,可以有效的提高解析成功率,从而保证解析后获得的弹幕数据和弹幕类型信息是与弹幕类型相关联的,以促使客户端将要生成的目标弹幕是与弹幕类型对应的。
步骤S106,根据所述弹幕类型信息在更新后的弹幕模板中选择目标弹幕模板。
具体的,在上述获得弹幕类型信息及其对应的弹幕数据后,为了能够快速的创建出目标弹幕进行展示,此时可以结合弹幕类型信息在更新后的弹幕模板中选择目标弹幕模板,以实现结合弹幕数据创建出目标弹幕向用户进行展示。其中,目标弹幕模板具体是指与待展示的提示性弹幕相对应的弹幕模板。
进一步的,服务端为了能够提高提示性弹幕的丰富性,通常会针对不同的需求设置具有不同展示效果的提示性弹幕,当客户端接收到弹幕数据包后,为了能够生成与弹幕事件匹配的目标弹幕,将读取与弹幕协议关联的弹幕模板,而弹幕协议是根据弹幕类型动态变化的,因此在确定弹幕类型信息后,即可确定当前需要展示的弹幕所对应的弹幕协议,从而可以精准的读取与弹幕类型对应的目标弹幕模板,方便后续创建目标弹幕,本实施例中,具体实现方式如下所述:
基于所述弹幕类型信息确定所述弹幕数据包对应的弹幕协议;
在更新后的弹幕模板中选择与所述弹幕协议关联的初始弹幕模板,作为所述目标弹幕模板。
具体的,初始弹幕模板具体是指与不同弹幕类型匹配的模板,且该模板是基于不同的弹幕协议所创建的。
基于此,在确定弹幕数据包对应的弹幕类型信息后,此时可以基于弹幕类型信息确定弹幕数据包对应的弹幕协议,并且由于客户端预先存储有更新后的弹幕模板,此时即可基于弹幕协议在更新后的弹幕模板中选择与弹幕协议关联的初始弹幕模板,作为后续创建目标弹幕所需要使用的目标弹幕模板,以方便后续结合弹幕数据创建出目标弹幕。
在此过程中,由于不同的初始弹幕模板对应不同的弹幕协议,而不同的弹幕协议又对应不同的弹幕类型,因此可以确定弹幕模板与弹幕类型的对应关系,为了能够支持客户端可以生成不同弹幕类型对应的弹幕,服务端将预先向客户端广播初始弹幕模板,本实施例中,具体实现方式如下所述:
接收所述服务端的模板广播请求,通过对所述模板广播请求进行解析获得至少一个弹幕模板;将所述至少一个弹幕模板写入本地存储空间;其中,所述服务端确定初始弹幕类型对应的初始弹幕协议,并按照所述初始弹幕协议创建所述弹幕模板。
具体的,模板广播请求具体是指服务端向具有通信关系的客户端发送初始弹幕模板的广播请求;相应的,本地存储空间具体是指能够对初始弹幕模板进行持久化的存储空间,如客户端中的本地磁盘;相应的,初始弹幕类型具体是指不同弹幕事件所触发的弹幕对应的类型,初始弹幕协议具体是指创建初始弹幕类型对应弹幕所需要使用的协议,且该协议是在通用性弹幕协议的基础上增加协议内容或删减协议内容所创建的。
基于此,由于服务端提供的弹幕较为丰富,且不同的弹幕类型所对应的弹幕具有不同的展示效果,因此为了能够降低不同类型弹幕的维护成本,将设置通用性弹幕协议,之后根据初始弹幕类型向通用性弹幕协议中添加协议内容或删除协议内容以生成与初始弹幕类型对应的初始弹幕协议,之后初始根据弹幕协议创建初始弹幕模板,即可实现针对不同的初始弹幕类型创建出不同的初始弹幕模板。
其中,通用性弹幕协议具体是指能够支持不同弹幕类型创建所对应弹幕的协议,该协议具有通用性,只需要在协议中增加或删除可动态调整的协议内容,即可支持不同的弹幕类型创建出相对应的弹幕。可动态调整的协议内容是指对应弹幕组成部分的协议内容。如图文弹幕类型对应的弹幕中包含图片和文字,则相应的弹幕协议中将包含图片对应的协议内容,文字对应的协议内容;如文字弹幕类型对应的弹幕中包含文字,则相应的弹幕协议中将包含文字对应的协议内容,不包含图片对应的协议内容,以此支持不同弹幕的生成。
参见图2所示的协议内容,其中弹幕类型信息type:1表示文字区域,用于在待生成的弹幕中添加文字内容;type:2表示图片区域,用于在待生成的弹幕中添加图片内容;type:3表示控件区域,用于在待生成的弹幕中添加可与用户交互的控件,不同的控件具有不同的功能。基于此,在服务端下发的弹幕数据包与图2所示的弹幕协议关联的情况下,则说明待生成的弹幕中将包含文字、图片以及交互控件,此时根据该弹幕协议可以选择包含文字、图片以及交互控件的弹幕模板使用,用于后续创建出包含文字、图片以及交互控件的目标弹幕。
实际应用中,通用性弹幕协议中还可以增加其他协议内容,如添加表示动画区域的type:4,添加表示音乐区域的type:5等。此时通过组合不同的协议内容组成弹幕协议,可以创建出对应不同弹幕类型的弹幕模板。
如弹幕协议中除固定协议内容外还包括type:1对应的协议内容,则可以结合该弹幕协议创建出对应文字弹幕类型(包含文字)的弹幕模板;如弹幕协议中除固定协议内容外还包括type:1和type:2对应的协议内容,则可以结合该弹幕协议创建出对应图文弹幕类型(包含图片和文字)的弹幕模板;如弹幕协议中除固定协议内容外还包括type:1、type:2和type:3对应的协议内容,则可以结合该弹幕协议创建出对应图文交互弹幕类型(包含图片、文字和交互控件)的弹幕模板。需要说明的是,不同协议内容的组合可以创建出对应不同弹幕类型的弹幕模板,其组合方式可以根据实际需求进行设定,本实施例在此不作任何限定。
进一步的,由于不同的弹幕中包含的内容通过不同的组合方式进行展示,会展示出不同的弹幕。如在直播场景中,用户开通业务服务的弹幕和用户赠送主播虚拟礼物的弹幕都是由图片、文字和控件三部分组合而成,但是开通业务服务的弹幕中三者的组合方式是图片+文字+控件,而用户赠送主播虚拟礼物的弹幕中三者的组合方式是文字+图片+控件,两种类型的弹幕虽然组成部分相同,但是组成部分的排列顺序并不相同,因此服务端在创建初始弹幕模板时,针对不同的弹幕类型不仅会结合弹幕协议创建,还会结合弹幕组成部分的排列顺序,即结合图3中所示的弹幕组成部分以及包含每部分对应的协议内容组成的弹幕协议,即可创建出各个初始弹幕类型对应的初始弹幕模板。
举例说明,直播服务端提供虚拟礼物赠送提示弹幕,用户进入直播间提示弹幕,用户开通业务提示弹幕,业务到期提示弹幕等,为支持某一用户或主播触发弹幕事件时可以广播相对应的弹幕内容,此时可以根据各个弹幕的弹幕类型确定其相对应的弹幕协议,确定虚拟礼物赠送提示弹幕和用户进入直播间提示弹幕为图文交互弹幕类型(包含图片、文字和交互控件),用户开通业务提示弹幕和业务到期提示弹幕为文字交互弹幕类型(包含文字和交互控件)。
进一步的,在虚拟礼物赠送提示弹幕中弹幕组成部分的排列顺序为图片+文字+交互控件,则此时可以根据弹幕组成部分的排列顺序以及包含图片协议内容、文字协议内容和交互控件协议内容的弹幕协议,创建出对应图文交互弹幕类型中虚拟礼物赠送提示弹幕的弹幕模板1。在用户进入直播间提示弹幕中弹幕组成部分的排列顺序为文字+图片+交互控件,则此时可以根据弹幕组成部分的排列顺序以及包含图片协议内容、文字协议内容和交互控件协议内容的弹幕协议,创建出对应图文交互弹幕类型中用户进入直播间提示弹幕的弹幕模板2。在用户开通业务提示弹幕中弹幕组成部分的排列顺序为文字+交互控件,则此时可以根据弹幕组成部分的排列顺序以及包含文字协议内容和交互控件协议内容的弹幕协议,创建出对应文字交互弹幕类型中用户开通业务提示弹幕的弹幕模板3。在业务到期提示弹幕中弹幕组成部分的排列顺序为交互控件+文字,则此时可以根据弹幕组成部分的排列顺序以及包含文字协议内容和交互控件协议内容的弹幕协议,创建出对应文字交互弹幕类型中业务到期提示弹幕的弹幕模板4。
在弹幕模板1-4创建完成之后,此时直播服务端可以向各个安装有直播应用的客户端广播弹幕模板,客户端在收到弹幕模板1-4后可以将其存储在本地磁盘,以方便后续使用。而在此过程中,当服务端创建出新的弹幕时,可以通过广播新的协议类型信息,对客户端已经存在的弹幕模板进行更新,以创建出新的弹幕模板,实现对客户端的弹幕模板进行扩充,提高弹幕丰富度。
进一步的,在用户甲向主播乙赠送虚拟礼物A的情况下,此时服务端将提取用户甲的用户数据以及虚拟礼物A的礼物数据,用户数据中包含用户的名称,头像,礼物数据中包含虚拟礼物A的名称,图标;之后将结合主播乙的直播地址数据、用户数据以及礼物数据创建弹幕数据包并发送到各个正在观看直播的客户端。客户端在接收到弹幕数据包后,确定该弹幕类型为图文交互弹幕类型,此时选择相对应的解析策略对弹幕数据包进行解析,获得待展示弹幕的弹幕类型信息(type1,type2和type3)以及包含直播地址数据、用户数据以及礼物数据的弹幕数据。同时基于图文交互弹幕类型确定该弹幕数据包对应的弹幕协议为包含图片协议内容、文字协议内容以及交互控件协议内容的弹幕协议,且弹幕组成部分的排列顺序为图片+文字+交互控件,则此时可以选择在本地选择弹幕模板1作为目标弹幕模板,以用于后续结合弹幕数据组成目标弹幕进行展示。
综上,通过预设弹幕协议的方式创建初始弹幕模板,不仅可以节省维护提示性弹幕的成本,还能够提高提示性弹幕的通用性,以实现针对不同的弹幕类型可以直接选择相对应的弹幕模板进行目标弹幕的创建,有效的提高了弹幕生成效率。
步骤S108,基于所述弹幕类型信息和所述弹幕数据对所述目标弹幕模板进行更新,根据更新结果生成目标弹幕并展示。
具体的,在上述得到弹幕类型信息及其对应的弹幕数据以及弹幕模板之后,此时即可根据弹幕类型信息将弹幕数据添加至弹幕模板中,以根据添加结果生成目标弹幕,并通过客户端进行展示,以使得持有客户端的用户可以观看到目标弹幕。
进一步的,在结合弹幕数据及其对应的弹幕类型信息和弹幕模板生成目标弹幕的过程中,由于不同类型的弹幕所对应的组成部分排序方式不同,为了能够保证生成的目标弹幕更加准确,此时可以基于弹幕数据所对应的添加位置进行创建目标弹幕,本实施例中,具体实现方式如下所述:
在所述目标弹幕模板中确定所述弹幕类型信息对应的添加位置;按照所述添加位置将所述弹幕数据添加至所述目标弹幕模板,根据添加结果生成所述目标弹幕。
具体的,弹幕数据具体是指目标弹幕的组成部分所对应的数据,包括但不限于图片数据,文字数据,地址数据等;相应的,添加位置具体是指弹幕模板中添加不同数据类型的弹幕子数据的位置,包括但不限于文字添加位置、图片添加位置、动画添加位置、地址添加位置。
基于此,在得到弹幕数据、弹幕类型信息以及弹幕模板后,可以提取弹幕数据,并根据弹幕类型信息确定弹幕数据在目标弹幕模板中对应的添加位置,之后按照添加位置将弹幕数据添加到目标弹幕模板中即可生成目标弹幕,以方便后续向用户进行展示。
具体实施是,由于弹幕数据包中包含的是创建目标弹幕所需要使用的弹幕数据,而基于弹幕数据在对弹幕模板进行更新时,为了能够保证创建出的目标弹幕更加合理,可以基于弹幕数据包的弹幕协议中对应弹幕组成部分的协议内容确定各个组成部分的设置参数,之后按照协议内容包含的设置参数对添加到弹幕模板中的弹幕数据进行调整,即可生成能够提供给用户观看的目标弹幕。进一步的,不同的弹幕类型对应的目标弹幕将具有不同的展示效果,也就是说,不同的弹幕类型所对应的目标弹幕可以对应图片展示区域、文字展示区域、用户交互区域和/或弹幕背景区域。
参见图4中(a)所示的示意图,图片展示区域具体是指用于展示目标弹幕涉及到的图片的区域,可以包含用户的头像,弹幕的图标或虚拟礼物的图标等;文字展示区域具体是指用于展示目标弹幕涉及到的文字的区域,可以包含用户的名称,弹幕内容或提示性信息等;用户交互区域具体是指用于展示目标弹幕涉及到的交互控件的区域,且交互控件可以实现不同的功能,可以包含跳转控件或互动控件等;弹幕背景区域具体是指用于展示目标弹幕涉及到的弹幕背景图像的区域。
综上,通过结合添加位置向弹幕模板中添加弹幕数据,可以保证添加弹幕数据后的弹幕模板可以生成目标弹幕,保证生成目标弹幕的准确性,同时提高了弹幕生成效率。
更进一步的,由于目标弹幕是基于服务端的广播的弹幕数据包所创建的,而服务端广播的弹幕数据包可能随着业务的增多而增多,因此客户端将可能持续生成不同的目标弹幕,为了能够保证客户端可以按照弹幕生成顺序依次展示不同的弹幕,可以预设弹幕列表,本实施例中,具体实现方式如下所述:
将所述目标弹幕添加至弹幕队列;
按照添加时间依次对所述弹幕队列中包含的目标弹幕进行展示。
具体的,弹幕列表具体是指存放待展示的目标弹幕的列表,添加时间具体是指每个目标弹幕添加到弹幕队列中的时间。基于此,在得到目标弹幕后,可以将目标弹幕添加到弹幕队列,队列中包含的目标弹幕将按照添加时间顺序排序,客户端在展示提示性弹幕时,将按照添加时间依次对所述弹幕队列中包含的目标弹幕进行展示,避免展示弹幕时出现混乱的问题。
沿用上例,在得到弹幕模板1后,确定弹幕数据中包含直播地址数据、用户数据以及礼物数据,其中,用户数据包括用户的名称和头像,礼物数据包括虚拟礼物A的名称和图标,直播地址数据包括主播乙的直播地址。进一步的,确定用户名称、虚拟礼物A为文字数据类型,用户的头像和虚拟礼物A的图标为图片数据类型,主播乙的直播地址为交互控件数据类型;此时可以根据弹幕模板中各个数据类型对应的添加位置将弹幕数据添加到弹幕模板1中,根据添加结果生成用户甲赠送主播乙虚拟礼物A的提示性弹幕,并将该弹幕添加到弹幕队列中,按照添加时间依次对弹幕队列中包含的弹幕进行展示,当展示到用户甲赠送主播乙虚拟礼物A的提示性弹幕,展示效果如图4中(b)所示。
此外,当目标弹幕中包含弹幕控件的情况下,持有客户端的用户可以点击弹幕控件实现交互,本实施例中,具体实现方式如下所述:
接收针对所述目标弹幕中包含的弹幕控件提交的选择指令;
根据所述选择指令确定所述弹幕控件对应的跳转信息,并基于所述跳转信息创建目标界面进行展示。
具体的,弹幕控件具体是指目标弹幕中可以与用户进行交互的控件,通过该控件可以跳转至目标界面。相应的,跳转信息具体是指目标界面对应的跳转地址信息,目标界面具体是指跳转地址对应的展示界面。基于此,在接收到针对所述目标弹幕中包含的弹幕控件提交的选择指令的情况下,说明持有客户端的用户需要跳转至目标弹幕中包含的地址,此时为了能够向用户展示相应的界面,可以根据选择指令确定弹幕控件对应的跳转信息,之后按照跳转信息获取生成目标界面的数据,并以此创建出目标界面向用户展示即可。
沿用上例,用户丙观看到如图4中(b)所示的弹幕,当用户丙点击交互控件后,说明用户丙需要进入主播乙的直播间,则此时可以基于用户丙的点击指令确定主播乙的直播地址,之后响应于点击指令跳转至直播地址对应的主播乙的直播间,并向用户丙展示主播乙的直播界面。
本申请提供的弹幕展示方法,在接收到服务端下发的协议类型信息后,可以以此为基础对客户端已经存储的弹幕模板进行更新,实现在客户端设置具有通用性的弹幕模板;之后在接收到服务端下发的弹幕数据包后,可以对弹幕数据包进行解析获得需要展示的弹幕对应的弹幕类型信息及其对应的弹幕数据;再基于弹幕类型信息在更新后的弹幕模板中选择目标弹幕模板,结合弹幕类型信息和弹幕数据对其进行更新,即可得到用于展示的目标弹幕,不仅可以提高弹幕生成效率,还能够避免展示出错的问题发生。同时,设置与弹幕协议关联的弹幕模板,可以有效节省针对不同类型的弹幕设置不同的弹幕协议所消耗的成本,只需要动态调整协议类型信息即可实现支持不同类型弹幕的生成,从而有效的提高了弹幕的通用性,实现适配到更多的业务场景。
与上述方法实施例相对应,本申请还提供了弹幕展示装置实施例,图5示出了本申请一实施例提供的一种弹幕展示装置的结构示意图。如图5所示,该装置包括:
接收模块502,被配置为接收服务端下发的协议类型信息,基于所述协议类型信息更新弹幕模板;
解析模块504,被配置为在接收到所述服务端下发的弹幕数据包的情况下,对所述弹幕数据包进行解析获得弹幕类型信息以及所述弹幕类型信息对应的弹幕数据;
选择模块506,被配置为根据所述弹幕类型信息在更新后的弹幕模板中选择目标弹幕模板;
展示模块508,被配置为基于所述弹幕类型信息和所述弹幕数据对所述目标弹幕模板进行更新,根据更新结果生成目标弹幕并展示。
一个可选的实施例中,所述解析模块504进一步被配置为:
确定与所述弹幕数据包对应的弹幕类型;选择所述弹幕类型对应的解析策略对所述弹幕数据包进行解析,获得与所述弹幕类型对应的所述弹幕类型信息以及与所述弹幕类型关联的所述弹幕数据。
一个可选的实施例中,所述选择模块506进一步被配置为:
基于所述弹幕类型信息确定所述弹幕数据包对应的弹幕协议;在更新后的弹幕模板中选择与所述弹幕协议关联的初始弹幕模板,作为所述目标弹幕模板。
一个可选的实施例中,所述弹幕模板采用如下方式确定:
接收所述服务端的模板广播请求,通过对所述模板广播请求进行解析获得至少一个弹幕模板;将所述至少一个弹幕模板写入本地存储空间;其中,所述服务端确定初始弹幕类型对应的初始弹幕协议,并按照所述初始弹幕协议创建所述弹幕模板。
一个可选的实施例中,所述展示模块508进一步被配置为:
在所述目标弹幕模板中确定所述弹幕类型信息对应的添加位置;按照所述添加位置将所述弹幕数据添加至所述目标弹幕模板,根据添加结果生成所述目标弹幕。
一个可选的实施例中,所述展示模块508进一步被配置为:
将所述目标弹幕添加至弹幕队列;按照添加时间依次对所述弹幕队列中包含的目标弹幕进行展示。
一个可选的实施例中,所述弹幕类型信息包括下述至少一项:
文字数据类型、图片数据类型、动画数据类型、地址数据类型;
相应的,所添加位置包括下述至少一项:
文字添加位置、图片添加位置、动画添加位置、地址添加位置;
相应的,所述目标弹幕包括下述至少一项:
图片展示区域、文字展示区域、用户交互区域、弹幕背景区域。
一个可选的实施例中,所述弹幕展示装置,还包括:
跳转模块,被配置为接收针对所述目标弹幕中包含的弹幕控件提交的选择指令;根据所述选择指令确定所述弹幕控件对应的跳转信息,并基于所述跳转信息创建目标界面进行展示。
本申请提供的弹幕展示装置,在接收到服务端下发的协议类型信息后,可以以此为基础对客户端已经存储的弹幕模板进行更新,实现在客户端设置具有通用性的弹幕模板;之后在接收到服务端下发的弹幕数据包后,可以对弹幕数据包进行解析获得需要展示的弹幕对应的弹幕类型信息及其对应的弹幕数据;再基于弹幕类型信息在更新后的弹幕模板中选择目标弹幕模板,结合弹幕类型信息和弹幕数据对其进行更新,即可得到用于展示的目标弹幕,不仅可以提高弹幕生成效率,还能够避免展示出错的问题发生。同时,设置与弹幕协议关联的弹幕模板,可以有效节省针对不同类型的弹幕设置不同的弹幕协议所消耗的成本,只需要动态调整协议类型信息即可实现支持不同类型弹幕的生成,从而有效的提高了弹幕的通用性,实现适配到更多的业务场景。
上述为本实施例的一种弹幕展示装置的示意性方案。需要说明的是,该弹幕展示装置的技术方案与上述的弹幕展示方法的技术方案属于同一构思,弹幕展示装置的技术方案未详细描述的细节内容,均可以参见上述弹幕展示方法的技术方案的描述。
与上述方法实施例相对应,本申请还提供了弹幕展示系统实施例,图6示出了本申请一实施例提供的一种弹幕展示系统的结构示意图。如图6所示,该系统600包括服务端610和客户端620;
所述服务端610,被配置为向所述客户端下发协议类型信息;
所述客户端620,被配置为基于所述协议类型信息更新弹幕模板;
所述服务端610,进一步被配置为确定业务用户在目标业务中触发的业务事件;根据所述业务事件确定弹幕协议,并按照所述弹幕协议创建与所述业务事件关联的弹幕数据包,下发至所述客户端;
所述客户端620,被配置为接收所述服务端下发的所述弹幕数据包,对所述弹幕数据包进行解析获得弹幕类型信息以及所述弹幕类型信息对应的弹幕数据;根据所述弹幕类型信息在更新后的弹幕模板中选择目标弹幕模板;基于所述弹幕类型信息和所述弹幕数据对所述目标弹幕模板进行更新,根据更新结果生成目标弹幕并展示。
一个可选的实施例中,所述服务端610,还被配置为确定初始弹幕类型对应的初始弹幕协议,并按照所述初始弹幕协议创建初始弹幕模板;建立所述初始弹幕类型与所述初始弹幕模板的对应关系,并将所述初始弹幕模板发送至所述客户端620。
一个可选的实施例中,所述服务端610,进一步被配置为读取所述业务用户对应的用户数据以及所述业务事件对应的业务数据;根据所述用户数据和所述业务数据生成所述业务事件关联的所述弹幕数据,并按照所述弹幕协议对所述弹幕数据进行封装,获得所述业务事件关联的所述弹幕数据包。
具体的,业务用户具体是指触发业务事件的用户,相应的业务事件具体是指需要发送提示性弹幕的弹幕事件,不同的业务事件对应不同类型的弹幕。用户数据具体是指创建目标弹幕时所需要使用的与用户相关的数据,包括但不限于用户的头像,名称等;业务数据具体是指创建目标弹幕时所需要使用的与业务事件相关的数据,包括但不限于事件图标,事件文字等。
一个可选的实施例中,所述客户端620,进一步被配置为确定与所述弹幕数据包对应的弹幕类型;选择所述弹幕类型对应的解析策略对所述弹幕数据包进行解析,获得与所述弹幕类型对应的所述弹幕类型信息以及与所述弹幕类型关联的所述弹幕数据。
一个可选的实施例中,所述客户端620,进一步被配置为基于所述弹幕类型信息确定所述弹幕数据包对应的弹幕协议;在更新后的弹幕模板中选择与所述弹幕协议关联的初始弹幕模板,作为所述目标弹幕模板。
一个可选的实施例中,所述客户端620,进一步被配置为接收所述服务端的模板广播请求,通过对所述模板广播请求进行解析获得至少一个弹幕模板;将所述至少一个弹幕模板写入本地存储空间;其中,所述服务端确定初始弹幕类型对应的初始弹幕协议,并按照所述初始弹幕协议创建所述弹幕模板。
一个可选的实施例中,所述客户端620,进一步被配置为在所述目标弹幕模板中确定所述弹幕类型信息对应的添加位置;按照所述添加位置将所述弹幕数据添加至所述目标弹幕模板,根据添加结果生成所述目标弹幕。
一个可选的实施例中,所述客户端620,进一步被配置为将所述目标弹幕添加至弹幕队列;按照添加时间依次对所述弹幕队列中包含的目标弹幕进行展示。
一个可选的实施例中,所述弹幕类型信息包括下述至少一项:
文字数据类型、图片数据类型、动画数据类型、地址数据类型;
相应的,所添加位置包括下述至少一项:
文字添加位置、图片添加位置、动画添加位置、地址添加位置;
相应的,所述目标弹幕包括下述至少一项:
图片展示区域、文字展示区域、用户交互区域、弹幕背景区域。
一个可选的实施例中,所述客户端620,还被配置为接收针对所述目标弹幕中包含的弹幕控件提交的选择指令;根据所述选择指令确定所述弹幕控件对应的跳转信息,并基于所述跳转信息创建目标界面进行展示。
本申请提供的弹幕展示系统,在接收到服务端下发的协议类型信息后,可以以此为基础对客户端已经存储的弹幕模板进行更新,实现在客户端设置具有通用性的弹幕模板;之后在接收到服务端下发的弹幕数据包后,可以对弹幕数据包进行解析获得需要展示的弹幕对应的弹幕类型信息及其对应的弹幕数据;再基于弹幕类型信息在更新后的弹幕模板中选择目标弹幕模板,结合弹幕类型信息和弹幕数据对其进行更新,即可得到用于展示的目标弹幕,不仅可以提高弹幕生成效率,还能够避免展示出错的问题发生。同时,设置与弹幕协议关联的弹幕模板,可以有效节省针对不同类型的弹幕设置不同的弹幕协议所消耗的成本,只需要动态调整协议类型信息即可实现支持不同类型弹幕的生成,从而有效的提高了弹幕的通用性,实现适配到更多的业务场景。
上述为本实施例的一种弹幕展示系统的示意性方案。需要说明的是,该弹幕展示系统的技术方案与上述的弹幕展示方法的技术方案属于同一构思,弹幕展示系统的技术方案未详细描述的细节内容,均可以参见上述弹幕展示方法的技术方案的描述。
下述结合附7,以本申请提供的弹幕展示系统在直播场景中的应用为例,对所述弹幕展示系统进行进一步说明。其中,图7示出了本申请一实施例提供的一种应用于直播场景中的弹幕展示系统的处理流程图,具体包括以下步骤:
步骤S702,直播服务端确定初始弹幕类型对应的弹幕协议。
步骤S704,直播服务端按照弹幕协议创建初始弹幕模板,并将初始弹幕模板广播至客户端。
步骤S706,直播服务端确定用户在直播间中触发的弹幕事件。
步骤S708,直播服务端读取用户对应的用户数据以及弹幕事件对应的事件数据,并根据用户数据和事件数据生成弹幕事件对应的弹幕数据。
步骤S710,直播服务端按照弹幕事件对应的弹幕类型关联的弹幕协议,对弹幕数据进行封装获得弹幕数据包,并发送至用户客户端。
步骤S712,用户客户端接收直播服务端下发的弹幕数据包,确定弹幕数据包对应的弹幕类型。
步骤S714,用户客户端选择弹幕类型对应的解析策略对弹幕数据包进行解析,获得与弹幕类型对应的弹幕类型信息,以及弹幕类型关联的弹幕数据。
步骤S716,用户客户端基于弹幕类型信息确定弹幕数据包对应的弹幕协议。
步骤S718,用户客户端在初始弹幕模板中选择与弹幕协议关联的弹幕模板。
步骤S720,用户客户端按照弹幕类型信息将弹幕数据添加至弹幕模板,根据添加结果生成目标弹幕并展示。
综上所述,通过结合弹幕类型信息和弹幕数据对弹幕模板进行更新,即可得到用于展示的目标弹幕,不仅可以提高弹幕生成效率,还能够避免展示出错的问题发生。同时,设置与弹幕协议关联的弹幕模板,可以有效节省针对不同类型的弹幕设置不同的弹幕协议所消耗的成本,只需要动态调整协议类型信息即可实现支持不同类型弹幕的生成,从而有效的提高了弹幕的通用性,实现适配到更多的业务场景。
图8示出了根据本申请一实施例提供的一种计算设备800的结构框图。该计算设备800的部件包括但不限于存储器810和处理器820。处理器820与存储器810通过总线830相连接,数据库850用于保存数据。
计算设备800还包括接入设备840,接入设备840使得计算设备800能够经由一个或多个网络860通信。这些网络的示例包括公用交换电话网(PSTN)、局域网(LAN)、广域网(WAN)、个域网(PAN)或诸如因特网的通信网络的组合。接入设备840可以包括有线或无线的任何类型的网络接口(例如,网络接口卡(NIC))中的一个或多个,诸如IEEE802.11无线局域网(WLAN)无线接口、全球微波互联接入(Wi-MAX)接口、以太网接口、通用串行总线(USB)接口、蜂窝网络接口、蓝牙接口、近场通信(NFC)接口,等等。
在本申请的一个实施例中,计算设备800的上述部件以及图8中未示出的其他部件也可以彼此相连接,例如通过总线。应当理解,图8所示的计算设备结构框图仅仅是出于示例的目的,而不是对本申请范围的限制。本领域技术人员可以根据需要,增添或替换其他部件。
计算设备800可以是任何类型的静止或移动计算设备,包括移动计算机或移动计算设备(例如,平板计算机、个人数字助理、膝上型计算机、笔记本计算机、上网本等)、移动电话(例如,智能手机)、可佩戴的计算设备(例如,智能手表、智能眼镜等)或其他类型的移动设备,或者诸如台式计算机或PC的静止计算设备。计算设备800还可以是移动式或静止式的服务器。
其中,处理器820执行所述指令时实现所述的弹幕展示方法的步骤。
上述为本实施例的一种计算设备的示意性方案。需要说明的是,该计算设备的技术方案与上述的弹幕展示方法的技术方案属于同一构思,计算设备的技术方案未详细描述的细节内容,均可以参见上述弹幕展示方法的技术方案的描述。
本申请一实施例还提供一种计算机可读存储介质,其存储有计算机指令,该指令被处理器执行时实现如前所述弹幕展示方法的步骤。
上述为本实施例的一种计算机可读存储介质的示意性方案。需要说明的是,该存储介质的技术方案与上述的弹幕展示方法的技术方案属于同一构思,存储介质的技术方案未详细描述的细节内容,均可以参见上述弹幕展示方法的技术方案的描述。
上述对本申请特定实施例进行了描述。其它实施例在所附权利要求书的范围内。在一些情况下,在权利要求书中记载的动作或步骤可以按照不同于实施例中的顺序来执行并且仍然可以实现期望的结果。另外,在附图中描绘的过程不一定要求示出的特定顺序或者连续顺序才能实现期望的结果。在某些实施方式中,多任务处理和并行处理也是可以的或者可能是有利的。
所述计算机指令包括计算机程序代码,所述计算机程序代码可以为源代码形式、对象代码形式、可执行文件或某些中间形式等。所述计算机可读介质可以包括:能够携带所述计算机程序代码的任何实体或装置、记录介质、U盘、移动硬盘、磁碟、光盘、计算机存储器、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、电载波信号、电信信号以及软件分发介质等。需要说明的是,所述计算机可读介质包含的内容可以根据司法管辖区内立法和专利实践的要求进行适当的增减,例如在某些司法管辖区,根据立法和专利实践,计算机可读介质不包括电载波信号和电信信号。
需要说明的是,对于前述的各方法实施例,为了简便描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本申请并不受所描述的动作顺序的限制,因为依据本申请,某些步骤可以采用其它顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定都是本申请所必须的。
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其它实施例的相关描述。
以上公开的本申请优选实施例只是用于帮助阐述本申请。可选实施例并没有详尽叙述所有的细节,也不限制该发明仅为所述的具体实施方式。显然,根据本申请的内容,可作很多的修改和变化。本申请选取并具体描述这些实施例,是为了更好地解释本申请的原理和实际应用,从而使所属技术领域技术人员能很好地理解和利用本申请。本申请仅受权利要求书及其全部范围和等效物的限制。
Claims (14)
1.一种弹幕展示方法,其特征在于,应用于客户端,包括:
接收服务端下发的协议类型信息,基于所述协议类型信息更新弹幕模板;
在接收到所述服务端下发的弹幕数据包的情况下,对所述弹幕数据包进行解析获得弹幕类型信息以及所述弹幕类型信息对应的弹幕数据;
根据所述弹幕类型信息在更新后的弹幕模板中选择目标弹幕模板;
基于所述弹幕类型信息和所述弹幕数据对所述目标弹幕模板进行更新,根据更新结果生成目标弹幕并展示。
2.根据权利要求1所述的弹幕展示方法,其特征在于,所述对所述弹幕数据包进行解析获得弹幕类型信息以及所述弹幕类型信息对应的弹幕数据,包括:
确定与所述弹幕数据包对应的弹幕类型;
选择所述弹幕类型对应的解析策略对所述弹幕数据包进行解析,获得与所述弹幕类型对应的所述弹幕类型信息以及与所述弹幕类型关联的所述弹幕数据。
3.根据权利要求2所述的弹幕展示方法,其特征在于,所述根据所述弹幕类型信息在更新后的弹幕模板中选择目标弹幕模板,包括:
基于所述弹幕类型信息确定所述弹幕数据包对应的弹幕协议;
在更新后的弹幕模板中选择与所述弹幕协议关联的初始弹幕模板,作为所述目标弹幕模板。
4.根据权利要求3所述的弹幕展示方法,其特征在于,所述弹幕模板采用如下方式确定:
接收所述服务端的模板广播请求,通过对所述模板广播请求进行解析获得至少一个弹幕模板;
将所述至少一个弹幕模板写入本地存储空间;其中,所述服务端确定初始弹幕类型对应的初始弹幕协议,并按照所述初始弹幕协议创建所述弹幕模板。
5.根据权利要求1所述的弹幕展示方法,其特征在于,所述基于所述弹幕类型信息和所述弹幕数据对所述目标弹幕模板进行更新,根据更新结果生成目标弹幕,包括:
在所述目标弹幕模板中确定所述弹幕类型信息对应的添加位置;
按照所述添加位置将所述弹幕数据添加至所述目标弹幕模板,根据添加结果生成所述目标弹幕。
6.根据权利要求1-5任一项所述的弹幕展示方法,其特征在于,所述根据更新结果生成目标弹幕并展示,包括:
将所述目标弹幕添加至弹幕队列;
按照添加时间依次对所述弹幕队列中包含的目标弹幕进行展示。
7.根据权利要求5所述的弹幕展示方法,其特征在于,所述弹幕类型信息包括下述至少一项:
文字数据类型、图片数据类型、动画数据类型、地址数据类型;
相应的,所添加位置包括下述至少一项:
文字添加位置、图片添加位置、动画添加位置、地址添加位置;
相应的,所述目标弹幕包括下述至少一项:
图片展示区域、文字展示区域、用户交互区域、弹幕背景区域。
8.根据权利要求1-5任一项所述的弹幕展示方法,其特征在于,所述根据更新结果生成目标弹幕并展示步骤执行之后,还包括:
接收针对所述目标弹幕中包含的弹幕控件提交的选择指令;
根据所述选择指令确定所述弹幕控件对应的跳转信息,并基于所述跳转信息创建目标界面进行展示。
9.一种弹幕展示装置,其特征在于,应用于客户端,包括:
接收模块,被配置为接收服务端下发的协议类型信息,基于所述协议类型信息更新弹幕模板;
解析模块,被配置为在接收到所述服务端下发的弹幕数据包的情况下,对所述弹幕数据包进行解析获得弹幕类型信息以及所述弹幕类型信息对应的弹幕数据;
选择模块,被配置为根据所述弹幕类型信息在更新后的弹幕模板中选择目标弹幕模板;
展示模块,被配置为基于所述弹幕类型信息和所述弹幕数据对所述目标弹幕模板进行更新,根据更新结果生成目标弹幕并展示。
10.一种弹幕展示系统,其特征在于,包括客户端和服务端;
所述服务端,被配置为向所述客户端下发协议类型信息;
所述客户端,被配置为基于所述协议类型信息更新弹幕模板;
所述服务端,进一步被配置为确定业务用户在目标业务中触发的业务事件;根据所述业务事件确定弹幕协议,并按照所述弹幕协议创建与所述业务事件关联的弹幕数据包,下发至所述客户端;
所述客户端,被配置为接收所述服务端下发的所述弹幕数据包,对所述弹幕数据包进行解析获得弹幕类型信息以及所述弹幕类型信息对应的弹幕数据;根据所述弹幕类型信息在更新后的弹幕模板中选择目标弹幕模板;基于所述弹幕类型信息和所述弹幕数据对所述目标弹幕模板进行更新,根据更新结果生成目标弹幕并展示。
11.根据权利要求10所述的弹幕展示系统,其特征在于,所述服务端,还被配置为确定初始弹幕类型对应的初始弹幕协议,并按照所述初始弹幕协议创建初始弹幕模板;建立所述初始弹幕类型与所述初始弹幕模板的对应关系,并将所述初始弹幕模板发送至所述客户端。
12.根据权利要求10所述的弹幕展示系统,其特征在于,所述服务端,进一步被配置为读取所述业务用户对应的用户数据以及所述业务事件对应的业务数据;根据所述用户数据和所述业务数据生成所述业务事件关联的所述弹幕数据,并按照所述弹幕协议对所述弹幕数据进行封装,获得所述业务事件关联的所述弹幕数据包。
13.一种计算设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机指令,其特征在于,所述处理器执行所述指令时实现权利要求1-8任意一项所述方法的步骤。
14.一种计算机可读存储介质,其存储有计算机指令,其特征在于,该指令被处理器执行时实现权利要求1-8任意一项所述方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111033625.4A CN113766298B (zh) | 2021-09-03 | 2021-09-03 | 弹幕展示方法、装置及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111033625.4A CN113766298B (zh) | 2021-09-03 | 2021-09-03 | 弹幕展示方法、装置及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113766298A true CN113766298A (zh) | 2021-12-07 |
CN113766298B CN113766298B (zh) | 2023-01-03 |
Family
ID=78793034
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111033625.4A Active CN113766298B (zh) | 2021-09-03 | 2021-09-03 | 弹幕展示方法、装置及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113766298B (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113923505A (zh) * | 2021-12-14 | 2022-01-11 | 飞狐信息技术(天津)有限公司 | 弹幕处理方法、装置及电子设备和存储介质 |
CN114339373A (zh) * | 2022-03-17 | 2022-04-12 | 飞狐信息技术(天津)有限公司 | 一种队列弹幕生成方法、装置、存储介质和设备 |
CN115665463A (zh) * | 2022-10-20 | 2023-01-31 | 广州方硅信息技术有限公司 | 直播礼物交互方法及其装置、设备、介质 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111796825A (zh) * | 2020-06-30 | 2020-10-20 | 北京字节跳动网络技术有限公司 | 一种弹幕的绘制方法、装置、设备和存储介质 |
CN112188275A (zh) * | 2020-09-21 | 2021-01-05 | 北京字节跳动网络技术有限公司 | 一种弹幕的生成方法、装置、设备和存储介质 |
CN112866787A (zh) * | 2021-04-12 | 2021-05-28 | 上海哔哩哔哩科技有限公司 | 弹幕设置方法、装置及系统 |
-
2021
- 2021-09-03 CN CN202111033625.4A patent/CN113766298B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111796825A (zh) * | 2020-06-30 | 2020-10-20 | 北京字节跳动网络技术有限公司 | 一种弹幕的绘制方法、装置、设备和存储介质 |
CN112188275A (zh) * | 2020-09-21 | 2021-01-05 | 北京字节跳动网络技术有限公司 | 一种弹幕的生成方法、装置、设备和存储介质 |
CN112866787A (zh) * | 2021-04-12 | 2021-05-28 | 上海哔哩哔哩科技有限公司 | 弹幕设置方法、装置及系统 |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113923505A (zh) * | 2021-12-14 | 2022-01-11 | 飞狐信息技术(天津)有限公司 | 弹幕处理方法、装置及电子设备和存储介质 |
CN113923505B (zh) * | 2021-12-14 | 2022-03-01 | 飞狐信息技术(天津)有限公司 | 弹幕处理方法、装置及电子设备和存储介质 |
CN114339373A (zh) * | 2022-03-17 | 2022-04-12 | 飞狐信息技术(天津)有限公司 | 一种队列弹幕生成方法、装置、存储介质和设备 |
CN115665463A (zh) * | 2022-10-20 | 2023-01-31 | 广州方硅信息技术有限公司 | 直播礼物交互方法及其装置、设备、介质 |
Also Published As
Publication number | Publication date |
---|---|
CN113766298B (zh) | 2023-01-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN113766298B (zh) | 弹幕展示方法、装置及系统 | |
US7774412B1 (en) | Methods and apparatus facilitating distribution of content | |
US11474779B2 (en) | Method and apparatus for processing information | |
CN107066273B (zh) | 一种页面样式更新方法及装置 | |
US7561899B2 (en) | Method and apparatus for controlling and applying resource of idle screen on mobile | |
US9686329B2 (en) | Method and apparatus for displaying webcast rooms | |
EP2940940B1 (en) | Methods for sending and receiving video short message, apparatus and handheld electronic device thereof | |
EP2442594A1 (en) | Method, system and mobile terminal for processing short message | |
CN106844705B (zh) | 用于显示多媒体内容的方法和装置 | |
CN103440574A (zh) | 游戏支付处理方法、客户端及系统 | |
CN113938699B (zh) | 基于网页快速建立直播的方法 | |
CN112073307A (zh) | 邮件处理方法、装置、电子设备及计算机可读介质 | |
CN111090533A (zh) | 公告信息发送方法、装置、电子设备及存储介质 | |
US20120233262A1 (en) | Message signature method and device | |
CN114401493A (zh) | 一种消息推送方法及其服务系统 | |
WO2016078454A1 (zh) | 一种动态头像的实现方法及装置 | |
CN112817671A (zh) | 图像处理方法、装置、设备以及计算机可读存储介质 | |
CN112347401A (zh) | 房屋同屏带看方法、系统、装置及计算机可读存储介质 | |
CN109815407B (zh) | 一种信息资源推送方法、装置、设备及存储介质 | |
CN112751681A (zh) | 图像处理方法、装置、设备以及计算机可读存储介质 | |
CN112383812A (zh) | 电视端截屏分享方法、电视端、移动终端及系统 | |
CN106162234A (zh) | 一种分享电视节目的方法及装置 | |
CN114007221B (zh) | 面向企业的5g消息的创建平台 | |
CN115793936A (zh) | 信息处理方法、装置和电子设备 | |
CN115174509A (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 |