CN111147887A - 直播业务控制方法、装置、计算机可读介质及电子设备 - Google Patents
直播业务控制方法、装置、计算机可读介质及电子设备 Download PDFInfo
- Publication number
- CN111147887A CN111147887A CN202010011351.8A CN202010011351A CN111147887A CN 111147887 A CN111147887 A CN 111147887A CN 202010011351 A CN202010011351 A CN 202010011351A CN 111147887 A CN111147887 A CN 111147887A
- Authority
- CN
- China
- Prior art keywords
- event
- video stream
- content
- message
- event message
- 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.)
- Pending
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/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/21—Server components or server architectures
- H04N21/218—Source of audio or video content, e.g. local disk arrays
- H04N21/2187—Live feed
-
- 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/4302—Content synchronisation processes, e.g. decoder synchronisation
- H04N21/4307—Synchronising the rendering of multiple content streams or additional data on devices, e.g. synchronisation of audio on a mobile phone with the video output on the TV screen
-
- 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)
- Databases & Information Systems (AREA)
- Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
Abstract
本公开的实施例提供了一种直播业务控制方法、直播业务控制装置、计算机可读介质及电子设备,涉及计算机技术领域。该方法包括:当检测到事件消息时,将事件消息封装至事件对应的视频流中,并将封装后的视频流发送至服务器;若监测到从服务器中获取的视频流包括事件消息,提取事件消息中的事件内容;播放视频流并执行事件内容对应的业务指令。可见,实施本公开实施例的技术方案能够在一定程度上克服音视频与特定信息的输出进度不对应的问题,改善音视频与特定信息在客户端输出时的同步性,提升用户的视听体验以及提升用户的使用黏度。
Description
技术领域
本公开涉及计算机技术领域,具体而言,涉及一种直播业务控制方法、直播业务控制装置、计算机可读介质及电子设备。
背景技术
随着无线通信技术的不断发展,数据传输的即时性通常是影响数据输出效果的重要因素。对于音视频的传输而言,通常需要将与音频或视频相对应的特定信息一同进行传输,使得接收端的使用者能够更为清楚的了解到音频或视频中的内容。例如,对于传输的歌曲而言,需要根据歌曲的播放进度对用户显示相对应的歌词;对于传输的电影而言,需要根据电影的播放进度对用户显示相对应的台词。但是,由于数据传输存在延时性,因此,在音视频与特定信息的传输过程中可能会存在异步的问题,进而会导致客户端特定信息与音视频当前播放进度不对应的情况。
需要说明的是,在上述背景技术部分公开的信息仅用于加强对本公开的背景的理解,因此可以包括不构成对本领域普通技术人员已知的现有技术的信息。
发明内容
本公开实施例的目的在于提供一种直播业务控制方法、直播业务控制装置、计算机可读介质及电子设备,能够至少在一定程度上克服音视频与特定信息的输出进度不对应的问题,改善音视频与特定信息在客户端输出时的同步性,提升用户的视听体验以及提升用户的使用黏度。
本公开实施例的第一方面提供了一种直播业务控制方法,包括:
当检测到事件消息时,将事件消息封装至事件对应的视频流中,并将封装后的视频流发送至服务器;
若监测到从服务器中获取的视频流包括事件消息,提取事件消息中的事件内容;
播放视频流并执行事件内容对应的业务指令。
在本公开的一种示例性实施例中,将事件消息封装至事件对应的视频流中,包括:
将事件消息对应的消息内容转换为预设格式,并将预设格式的消息内容转换为字符串;
对字符串进行编码,并将编码结果确定为事件消息对应的数据包;
将数据包封装至事件对应的视频流中。
在本公开的一种示例性实施例中,将数据包封装至事件对应的视频流中,包括:
对数据包标识特定协议类型,并将标识后的数据包封装至事件对应的视频流中。
在本公开的一种示例性实施例中,将封装后的视频流发送至服务器之后,上述方法还可以包括以下步骤:
从服务器中获取视频流,并对视频流中封装的数据包进行监测;
若监测到属于特定协议类型的数据包时,则判定从服务器中获取的视频流包括事件消息。
在本公开的一种示例性实施例中,提取事件消息中的事件内容之后,上述方法还可以包括以下步骤:
对事件内容进行解码,并根据解码后的事件内容确定事件内容对应的待执行的业务指令。
在本公开的一种示例性实施例中,提取事件消息中的事件内容之后,上述方法还可以包括以下步骤:
当监测到视频流对应的数据内容中包括目标信息时,判定视频流当前对应的数据内容与事件内容相对应。
在本公开的一种示例性实施例中,事件消息包括展示视频流中的音乐对应的歌词,事件消息还包括播放虚拟礼物对应的特效。
在本公开的一种示例性实施例中,若事件消息为展示视频流中的音乐对应的歌词,执行事件内容对应的业务指令,包括:
当检测到音乐播放且前奏播放完毕时,执行用于指示同步播放音乐及展示音乐对应的歌词的业务指令。
在本公开的一种示例性实施例中,若事件消息为播放虚拟礼物对应的特效,执行事件内容对应的业务指令,包括:
当检测到视频流对应的数据内容中包括虚拟礼物信息时,执行用于表示播放虚拟礼物对应的特效的业务指令。
根据本公开实施例的第二方面,提供一种直播业务控制装置,包括消息封装单元、内容提取单元以及指令执行单元,其中:
消息封装单元,用于当检测到事件消息时,将事件消息封装至事件对应的视频流中,并将封装后的视频流发送至服务器;
内容提取单元,用于在监测到从服务器中获取的视频流包括事件消息时,提取事件消息中的事件内容;
指令执行单元,用于播放视频流并执行事件内容对应的业务指令。
在本公开的一种示例性实施例中,消息封装单元将事件消息封装至事件对应的视频流中的方式具体可以为:
消息封装单元将事件消息对应的消息内容转换为预设格式,并将预设格式的消息内容转换为字符串;
消息封装单元对字符串进行编码,并将编码结果确定为事件消息对应的数据包;
消息封装单元将数据包封装至事件对应的视频流中。
在本公开的一种示例性实施例中,消息封装单元将数据包封装至事件对应的视频流中的方式具体可以为:
消息封装单元对数据包标识特定协议类型,并将标识后的数据包封装至事件对应的视频流中。
在本公开的一种示例性实施例中,上述装置还可以包括数据监测单元,其中:
数据监测单元,用于在消息封装单元将封装后的视频流发送至服务器之后,从服务器中获取视频流,并对视频流中封装的数据包进行监测;若监测到属于特定协议类型的数据包时,则判定从服务器中获取的视频流包括事件消息。
在本公开的一种示例性实施例中,上述装置还可以包括内容解码单元,其中:
内容解码单元,用于在内容提取单元提取事件消息中的事件内容之后,对事件内容进行解码,并根据解码后的事件内容确定事件内容对应的待执行的业务指令。
在本公开的一种示例性实施例中,上述装置还可以包括目标信息监测单元,其中:
目标信息监测单元,用于在内容提取单元提取事件消息中的事件内容之后,且当监测到视频流对应的数据内容中包括目标信息时,判定视频流当前对应的数据内容与事件内容相对应。
在本公开的一种示例性实施例中,事件消息包括展示视频流中的音乐对应的歌词,事件消息还包括播放虚拟礼物对应的特效。
在本公开的一种示例性实施例中,若事件消息为展示视频流中的音乐对应的歌词,指令执行单元执行事件内容对应的业务指令的方式具体可以为:
指令执行单元当检测到音乐播放且前奏播放完毕时,执行用于指示同步播放音乐及展示音乐对应的歌词的业务指令。
在本公开的一种示例性实施例中,若事件消息为播放虚拟礼物对应的特效,指令执行单元执行事件内容对应的业务指令的方式具体可以为:
指令执行单元当检测到视频流对应的数据内容中包括虚拟礼物信息时,执行用于表示播放虚拟礼物对应的特效的业务指令。
根据本公开实施例的第三方面,提供了一种业务执行系统,其特征在于,该系统包括服务器、第一客户端和第二客户端:
第一客户端,用于检测事件消息,并在检测到事件消息时将事件消息封装至事件对应的视频流中,将封装后的视频流发送至服务器;
服务器,用于接收第一客户端发送的视频流;
第二客户端,用于从服务器中获取视频流,并在监测到从服务器中获取的视频流包括事件消息时,提取事件消息中的事件内容;以及,播放视频流并执行事件内容对应的业务指令。
根据本公开实施例的第四方面,提供了一种计算机可读介质,其上存储有计算机程序,程序被处理器执行时实现如上述实施例中第一方面所述的直播业务控制方法。
根据本公开实施例的第五方面,提供了一种电子设备,包括:一个或多个处理器;存储装置,用于存储一个或多个程序,当一个或多个程序被一个或多个处理器执行时,使得一个或多个处理器实现如上述实施例中第一方面所述的直播业务控制方法。
本公开实施例提供的技术方案可以包括以下有益效果:
在本公开的一些实施例所提供的技术方案中,可以当检测到事件消息(如,同步播放背景音乐歌词)时,将事件消息封装至事件(如,直播视频)对应的视频流中,并将封装后的视频流发送至服务器;若监测到从服务器中获取的视频流包括事件消息,提取事件消息中的事件内容(如,背景音乐歌词);当监测到视频流对应的数据内容与事件内容相对应时(如,直播视频中的背景音乐开始播放时),执行事件内容对应的业务指令(如,执行同步播放背景音乐歌词的业务指令)。依据上述方案描述,本公开一方面能够在一定程度上克服事件与事件消息的输出进度不对应的问题,改善事件与事件消息在客户端输出时的同步性,提升用户的使用体验以及提升用户的使用黏度;另一方面,通过事件与事件消息在时序上的统一,使得事件与事件消息的整体性更强,降低数据延迟性对客户端使用者造成的影响。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本公开。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施例,并与说明书一起用于解释本公开的原理。显而易见地,下面描述中的附图仅仅是本公开的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。在附图中:
图1示意性示出了根据本公开实施例的直播业务控制方法的流程示意图;
图2示意性示出了根据本公开实施例的将事件消息封装至事件对应的视频流中的流程示意图;
图3示意性示出了根据本公开实施例的对数据包进行监测的流程示意图;
图4示意性示出了根据本公开实施例的另一种直播业务控制方法的流程示意图;
图5示意性示出了根据本公开实施例的直播业务控制装置的结构框图;
图6示意性示出了根据本公开实施例的业务执行系统的结构框图;
图7示出了适于用来实现本公开实施例的电子设备的计算机系统的结构示意图。
具体实施方式
现在将参考附图更全面地描述示例实施方式。然而,示例实施方式能够以多种形式实施,且不应被为限于在此阐述的范例;相反,提供这些实施方式使得本公开将更加全面和完整,并将示例实施方式的构思全面地传达给本领域的技术人员。
此外,所描述的特征、结构或特性可以以任何合适的方式结合在一个或更多实施例中。在下面的描述中,提供许多具体细节从而给出对本公开的实施例的充分理解。然而,本领域技术人员将意识到,可以实践本公开的技术方案而没有特定细节中的一个或更多,或者可以采用其它的方法、组元、装置、步骤等。在其它情况下,不详细示出或描述公知方法、装置、实现或者操作以避免模糊本公开的各方面。
附图中所示的方框图仅仅是功能实体,不一定必须与物理上独立的实体相对应。即,可以采用软件形式来实现这些功能实体,或在一个或多个硬件模块或集成电路中实现这些功能实体,或在不同网络和/或处理器装置和/或微控制器装置中实现这些功能实体。
附图中所示的流程图仅是示例性说明,不是必须包括所有的内容和操作/步骤,也不是必须按所描述的顺序执行。例如,有的操作/步骤还可以分解,而有的操作/步骤可以合并或部分合并,因此实际执行的顺序有可能根据实际情况改变。
以下对本公开实施例进行详细说明:
在直播场景中,直播间通常包括业务内容(如,聊天信息、礼物特效、音乐歌词等)和音视频内容(如,直播视频),其中,业务内容是由业务服务器的业务模块向用户的客户端进行发送,而音视频内容是由客户端从视频服务器进行拉流。因此,客户端获取音视频内容和获取业务内容之间会由于传输延时性的问题存在一定程度的时间差,这就会导致客户端输出的音视频内容和业务内容容易存在输出不同步的问题。
另外,在播放技术中,为了保证播放器的流畅,避免抖动,通常会缓存一段时间的音视频数据,这也是一个导致业务内容与音视频内容在客户端输出异步的问题。
根据上述的一个或多个问题,本公开提出了一种直播业务控制方法。请参阅图1,图1示意性示出了根据本公开实施例的直播业务控制方法的流程示意图。如图1所示,根据本公开的一个实施例的直播业务控制方法,包括如下步骤S110、步骤S120以及步骤S130,其中:
步骤S110:当检测到事件消息时,将事件消息封装至事件对应的视频流中,并将封装后的视频流发送至服务器。
步骤S120:若监测到从服务器中获取的视频流包括事件消息,提取事件消息中的事件内容。
步骤S130:播放视频流并执行事件内容对应的业务指令。
以下对各步骤进行详细说明:
在步骤S110中,当检测到事件消息时,将事件消息封装至事件对应的视频流中,并将封装后的视频流发送至服务器。
其中,事件可以为直播、转播或录播等,本公开实施例不作限定。事件消息与事件存在对应关系,对于事件消息的检测存在于事件的发生过程中,事件消息可以为直播对应的礼物消息、直播对应的歌词信息、转播的视频(如,影视剧)对应的字幕、录播的足球比赛对应的解说字幕等,本公开实施例不作限定。当本公开应用于直播场景时,事件对应的视频流可以理解为直播对应的视频流。另外,封装后的视频流可以作为多媒体数据包的形式发送至服务器。
本公开实施例中,可选的,当检测到事件消息时,将事件消息封装至事件对应的视频流中,并将封装后的视频流发送至服务器的方式可以为:
当业务服务器检测到事件消息时,将事件消息封装至事件对应的视频流中,并将封装后的视频流发送至视频服务器。
另外,可选的,本公开可以应用于直播场景中,在步骤S110之前,上述方法还可以包括以下步骤:通过主播客户端向服务器实时推送视频流。在实时推流的过程中,可以实现对于事件消息的检测。
本公开实施例中,可选的,请参阅图2,图2示意性示出了根据本公开实施例的将事件消息封装至事件对应的视频流中的流程示意图。如图2所示,将事件消息封装至事件对应的视频流中,包括步骤S210~步骤S230,其中:
步骤S210:将事件消息对应的消息内容转换为预设格式,并将预设格式的消息内容转换为字符串;
步骤S220:对字符串进行编码,并将编码结果确定为事件消息对应的数据包;
步骤S230:将数据包封装至事件对应的视频流中。
以下对各步骤进行详细说明:
在步骤S210中,将事件消息对应的消息内容转换为预设格式,并将预设格式的消息内容转换为字符串;
其中,预设格式为一种通用且支持扩展的消息格式。预设格式可以为JSON格式。时间消息中包括用于表示业务类型的code字段以及用于表示具体消息内容的data字段,code字段的值为int类型,data字段的值为JSON格式。消息内容中可以包括文本信息,文本信息中可以包括至少一种语言,本公开实施例不限定。需要说明的是,JSON(JavaScript ObjectNotation,JS)是一种轻量级的数据交换格式。它采用完全独立于编程语言的文本格式来存储和表示数据。JSON格式的层次结构简洁、清晰,易于阅读和编写,同时也易于机器解析和生成,可以有效地提升网络传输效率。int是一种数据类型,在编程语言(C、C++、C#、Java等)中,是用于定义整数类型变量的标识符。
另外,可选的,将预设格式的消息内容转换为字符串的方式可以为:按照字符串与消息内容的映射关系将预设格式的消息内容转换为字符串,以将消息内容转换为计算机能够理解为语言,便于计算的读、写。
在步骤S220中,对字符串进行编码,并将编码结果确定为事件消息对应的数据包;
其中,对字符串进行编码的方式可以为:依照Unicode对字符串进行编码。Unicode(统一码、万国码、单一码)是计算机科学领域里的一项业界标准,包括字符集、编码方案等。Unicode是为了解决传统的字符编码方案的局限而产生的,它为每种语言中的每个字符设定了统一并且唯一的二进制编码,以满足跨语言、跨平台进行文本转换、处理的要求。
在步骤S230中,将数据包封装至事件对应的视频流中。
其中,将数据包封装至事件对应的视频流之后,上述方法还可以包括以下步骤:加盖视频流对应的当前时间戳,并通过视频流(如,视频流)传输协议将加盖时间戳后的数据包推流至服务器,以使得服务器将视频流分流至客户端。
具体地,将数据包封装至事件对应的视频流中的方式可以为:对数据包标识特定协议类型,并将标识后的数据包封装至事件对应的视频流中。其中,上述的特定协议类型与视频流对应的音视频包协议不同。
可见,实施该可选的实施例,能够对数据包标识特定的协议类型并将其封装在视频流中推流至服务器,在客户端的数据监测中,可以根据对上述特定协议类型的识别,快速确定出事件消息,从而提升对于事件消息解码的及时性,有助于改善事件与事件消息之间的同步性。
另外,可选的,请参阅图3,图3示意性示出了根据本公开实施例的对数据包进行监测的流程示意图。如图3所示,将封装后的视频流发送至服务器之后,上述方法还可以包括步骤S310和步骤S320,其中:
步骤S310:从服务器中获取视频流,并对视频流中封装的数据包进行监测;
步骤S320:若监测到属于特定协议类型的数据包时,则判定从服务器中获取的视频流包括事件消息。
其中,对视频流中封装的数据包进行监测可以理解为,监测视频流中封装的特定协议类型数据包。
可见,实施该可选的实施例,能够通过对特定协议类型数据包的监测,及时获取到相应的事件内容,从而有利于事件与事件消息之间的同步。
在步骤S120中,若监测到从服务器中获取的视频流包括事件消息,提取事件消息中的事件内容。
其中,事件内容可以为直播歌曲对应的歌词,也可以为观众为主播刷礼物对应的礼物特效,也可以为其他,本公开实施例不作限定。
另外,可选的,在提取到事件消息中的事件内容之后,上述方法还可以包括以下步骤:
检测视频流的数据内容对应的第一目标语言以及事件内容对应的第二目标语言,若第一目标语言与第二目标语言相同,则执行步骤S130;若第一目标语言与第二目标语言不相同,则根据语料库将第二目标语言的事件内容翻译为第一目标语言,即,得到第一目标语言的时间内容。
进而,若下述的业务指令为同步视频流输出事件内容,执行事件内容对应的业务指令的方式可以为:同步视频流输出第一目标语言的事件内容和第二目标语言的事件内容。当应用于直播场景且主播准备唱某一首外文歌曲时,在用户客户端,可以同步视频流输出该外文歌曲对应的外文歌词以及相应的母语对照歌词,使得观看直播的用户不仅能够看到主播所唱的这首歌的外文歌词也能够看到母语歌词,这样能够扩大直播内容的受众,并且改善观者的视听体验;其中,该母语可以为汉语也可以为其他语言,本公开实施例不作限定。
本公开实施例中,可选的,提取事件消息中的事件内容之后,上述方法还可以包括以下步骤:
对事件内容进行解码,并根据解码后的事件内容确定事件内容对应的待执行的业务指令。
其中,待执行的业务指令用于表示事件内容的处理方式,如,在检测到歌曲开始播放时同步输出与歌曲的播放进度相同的歌词。
另外,可选的,在提取事件消息中的事件内容之后,对事件内容进行解码的方式可以为:将事件内容发送至服务器,以使得服务器通过业务模块对事件内容进行解码。
可见,实施该可选的实施例,能够通过对业务指令的确定,提升对于事件与事件消息之间同步性的控制。
此外,可选的,提取事件消息中的事件内容之后,上述方法还可以包括以下步骤:
当监测到视频流对应的数据内容中包括目标信息时,判定视频流当前对应的数据内容与事件内容相对应,并执行步骤S130。
其中,目标信息可以为音频信息也可以为文本信息也可以为识别到的面部信息等,本公开实施例不作限定。其中,目标信息用于指示业务指令的执行时刻,以触发客户端在检测到目标信息时执行业务指令。
可见,实施该可选的实施例,能够通过对目标信息的监测,确定出业务指令的执行时刻,以使得事件消息与事件同步。
在步骤S130中,播放视频流并执行事件内容对应的业务指令。
本公开实施例中,可选的,事件消息包括展示视频流中的音乐对应的歌词,事件消息还包括播放虚拟礼物对应的特效。
一方面,若事件消息为播放虚拟礼物对应的特效,执行事件内容对应的业务指令,包括:当检测到视频流对应的数据内容中包括虚拟礼物信息时,执行用于表示播放虚拟礼物对应的特效的业务指令。
由于本申请可以应用与直播场景,因此,当观众为主播刷了一份礼物之后,主播客户端(即,下述的第一客户端)可以收到礼物消息,主播客户端可以将该礼物消息以预设格式数据包{“code”:101,“data”:{“gift_id”:5}}的形式封装至视频流中。另外,由于观众客户端(即,下述的第二客户端)可以监测特定协议类型的数据包,因此,观众客户端可以监测到事件消息{“code”:101,“data”:{“gift_id”:5}},并提取到code字段对应的值为101,故,播放礼物gift_id=5所对应的特效。此时,直播视频播放相对应的主播收到礼物时的感谢语,以使得刷礼物的观众,在看到礼物特效的同时接受到来自主播的感谢,能够提升观众的视听体验。
另一方面,若事件消息为展示视频流中的音乐对应的歌词,执行事件内容对应的业务指令,包括:当检测到音乐播放且前奏播放完毕时,执行用于指示同步播放音乐及展示音乐对应的歌词的业务指令。
当主播播放背景音乐时通常是音乐对应的音频混音至视频流中进行传输,而音乐对应的歌词则在视频窗口之外的区域进行显示。因此,在主播客户端播放音乐时,可以将音乐的下一句歌词以预设格式数据包{“code:”102,“data”:{“lrc_ts”:”00:00”,“duration_ms”:3000}}的形式封装至视频流中。另外,由于观众客户端(即,下述的第二客户端)可以监测特定协议类型的数据包,因此,观众客户端可以监测到事件消息{“code:”102,“data”:{“lrc_ts”:”00:00”,“duration_ms”:3000}},并提取到code字段对应的值为102,故,在已经下载好的歌词文件中,找到时间戳为00:00的歌词进行展示,展示时长为duration_ms对应的3000毫秒。另外,同一首歌曲的歌词,客户端只需下载一次,相比在视频流中夹带歌词的方案,能够减小视频流数据量,避免重复发送的同时可以实现音乐与歌词的同步。
可见,实施图1所示的直播业务控制方法,能够在一定程度上克服事件与事件消息的输出进度不对应的问题,改善事件与事件消息在客户端输出时的同步性,提升用户的使用体验以及提升用户的使用黏度;以及,通过事件与事件消息在时序上的统一,使得事件与事件消息的整体性更强,降低数据延迟性对客户端使用者造成的影响。
请参阅图4,图4示意性示出了根据本公开实施例的另一种直播业务控制方法的流程示意图,如图4所示,另一种直播业务控制方法包括步骤S410~步骤S470,其中:
步骤S410:当检测到事件消息时,将事件消息对应的消息内容转换为预设格式,并将预设格式的消息内容转换为字符串。
步骤S420:对字符串进行编码,并将编码结果确定为事件消息对应的数据包。
步骤S430:对数据包标识特定协议类型,并将标识后的数据包封装至事件对应的视频流中,并将封装后的视频流发送至服务器。
步骤S440:从服务器中获取视频流,并对视频流中封装的数据包进行监测。
步骤S450:若监测到属于特定协议类型的数据包时,则判定从服务器中获取的视频流包括事件消息。
步骤S460:提取事件消息中的事件内容,对事件内容进行解码,并根据解码后的事件内容确定事件内容对应的待执行的业务指令。
步骤S470:当监测到视频流对应的数据内容中包括目标信息时,判定视频流当前对应的数据内容与事件内容相对应,并执行事件内容对应的业务指令。
其中,步骤S410~步骤S470在图1所示的直播业务控制方法中已进行详细描述及展开,请参阅图1对应的实施例,此处不再赘述。
可见,实施图4所示的直播业务控制方法,能够在一定程度上克服事件与事件消息的输出进度不对应的问题,改善事件与事件消息在客户端输出时的同步性,提升用户的使用体验以及提升用户的使用黏度;以及,通过事件与事件消息在时序上的统一,使得事件与事件消息的整体性更强,降低数据延迟性对客户端使用者造成的影响。
请参阅图5,图5示意性示出了根据本公开实施例的直播业务控制装置的结构框图。该直播业务控制装置包括消息封装单元501、内容提取单元502以及指令执行单元503,其中:
消息封装单元501,用于当检测到事件消息时,将事件消息封装至事件对应的视频流中,并将封装后的视频流发送至服务器;
内容提取单元502,用于在监测到从服务器中获取的视频流包括事件消息时,提取事件消息中的事件内容;
指令执行单元503,用播放视频流并执行事件内容对应的业务指令。
可见,实施图5所示的直播业务控制装置,能够在一定程度上克服事件与事件消息的输出进度不对应的问题,改善事件与事件消息在客户端输出时的同步性,提升用户的使用体验以及提升用户的使用黏度;以及,通过事件与事件消息在时序上的统一,使得事件与事件消息的整体性更强,降低数据延迟性对客户端使用者造成的影响。
作为一种可选的实施方式,消息封装单元501将事件消息封装至事件对应的视频流中的方式具体可以为:
消息封装单元501将事件消息对应的消息内容转换为预设格式,并将预设格式的消息内容转换为字符串;
消息封装单元501对字符串进行编码,并将编码结果确定为事件消息对应的数据包;
消息封装单元501将数据包封装至事件对应的视频流中。
其中,消息封装单元501将数据包封装至事件对应的视频流中的方式具体可以为:
消息封装单元501对数据包标识特定协议类型,并将标识后的数据包封装至事件对应的视频流中。
可见,实施本公开实施例,能够对数据包标识特定的协议类型并将其封装在视频流中推流至服务器,在客户端的数据监测中,可以根据对上述特定协议类型的识别,快速确定出事件消息,从而提升对于事件消息解码的及时性,有助于改善事件与事件消息之间的同步性。
作为另一种可选的实施方式,上述装置还可以包括数据监测单元(未图示),其中:
数据监测单元,用于在消息封装单元将封装后的视频流发送至服务器之后,从服务器中获取视频流,并对视频流中封装的数据包进行监测;若监测到属于特定协议类型的数据包时,则判定从服务器中获取的视频流包括事件消息。
可见,实施本公开实施例,能够通过对特定协议类型数据包的监测,及时获取到相应的事件内容,从而有利于事件与事件消息之间的同步。
作为又一种可选的实施方式,上述装置还可以包括内容解码单元(未图示),其中:
内容解码单元,用于在内容提取单元提取事件消息中的事件内容之后,对事件内容进行解码,并根据解码后的事件内容确定事件内容对应的待执行的业务指令。
可见,实施本公开实施例,能够通过对业务指令的确定,提升对于事件与事件消息之间同步性的控制。
作为又一种可选的实施方式,上述装置还可以包括目标信息监测单元(未图示),其中:
目标信息监测单元,用于在内容提取单元提取事件消息中的事件内容之后,且当监测到视频流对应的数据内容中包括目标信息时,判定视频流当前对应的数据内容与事件内容相对应。
可见,实施本公开实施例,能够通过对目标信息的监测,确定出业务指令的执行时刻,以使得事件消息与事件同步。
在本公开的一种示例性实施例中,事件消息包括展示视频流中的音乐对应的歌词,事件消息还包括播放虚拟礼物对应的特效。
在本公开的一种示例性实施例中,若事件消息为展示视频流中的音乐对应的歌词,指令执行单元执行事件内容对应的业务指令的方式具体可以为:指令执行单元当检测到音乐播放且前奏播放完毕时,执行用于指示同步播放音乐及展示音乐对应的歌词的业务指令。
在本公开的一种示例性实施例中,若事件消息为播放虚拟礼物对应的特效,指令执行单元执行事件内容对应的业务指令的方式具体可以为:指令执行单元当检测到视频流对应的数据内容中包括虚拟礼物信息时,执行用于表示播放虚拟礼物对应的特效的业务指令。
由于本公开的示例实施例的直播业务控制装置的各个功能模块与上述直播业务控制方法的示例实施例的步骤对应,因此对于本公开装置实施例中未披露的细节,请参照本公开上述的直播业务控制方法的实施例。
请参阅图6,图6示意性示出了根据本公开实施例的业务执行系统的结构框图。该业务执行系统服务器602、第一客户端601和第二客户端603:
第一客户端601,用于检测事件消息,并在检测到事件消息时将事件消息封装至事件对应的视频流中,将封装后的视频流发送至服务器;
服务器602,用于接收第一客户端发送的视频流;
第二客户端603,用于从服务器中获取视频流,并在监测到从服务器中获取的视频流包括事件消息时,提取事件消息中的事件内容;以及,播放视频流并执行事件内容对应的业务指令。
可见,实施图6所示的业务执行系统,能够在一定程度上克服事件与事件消息的输出进度不对应的问题,改善事件与事件消息在客户端输出时的同步性,提升用户的使用体验以及提升用户的使用黏度;以及,通过事件与事件消息在时序上的统一,使得事件与事件消息的整体性更强,降低数据延迟性对客户端使用者造成的影响。
由于本公开的示例实施例的业务执行系统的各个功能模块与上述直播业务控制方法的示例实施例的步骤对应,因此对于本公开装置实施例中未披露的细节,请参照本公开上述的直播业务控制方法的实施例。
请参阅图7,其示出了适于用来实现本公开实施例的电子设备的计算机系统700的结构示意图。图7示出的电子设备的计算机系统700仅是一个示例,不应对本公开实施例的功能和使用范围带来任何限制。
如图7所示,计算机系统700包括中央处理单元(CPU)701,其可以根据存储在只读存储器(ROM)702中的程序或者从存储部分708加载到随机访问存储器(RAM)703中的程序而执行各种适当的动作和处理。在RAM 703中,还存储有系统操作所需的各种程序和数据。CPU701、ROM 702以及RAM 703通过总线704彼此相连。输入/输出(I/O)接口705也连接至总线704。
以下部件连接至I/O接口705:包括键盘、鼠标等的输入部分706;包括诸如阴极射线管(CRT)、液晶显示器(LCD)等以及扬声器等的输出部分707;包括硬盘等的存储部分708;以及包括诸如LAN卡、调制解调器等的网络接口卡的通信部分709。通信部分709经由诸如因特网的网络执行通信处理。驱动器710也根据需要连接至I/O接口705。可拆卸介质711,诸如磁盘、光盘、磁光盘、半导体存储器等等,根据需要安装在驱动器710上,以便于从其上读出的计算机程序根据需要被安装入存储部分708。
特别地,根据本公开的实施例,上文参考流程图描述的过程可以被实现为计算机软件程序。例如,本公开的实施例包括一种计算机程序产品,其包括承载在计算机可读介质上的计算机程序,该计算机程序包含用于执行流程图所示的方法的程序代码。在这样的实施例中,该计算机程序可以通过通信部分709从网络上被下载和安装,和/或从可拆卸介质711被安装。在该计算机程序被中央处理单元(CPU)701执行时,执行本申请的系统中限定的上述功能。
需要说明的是,本公开所示的计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质或者是上述两者的任意组合。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本公开中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。而在本公开中,计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于:无线、电线、光缆、RF等等,或者上述的任意合适的组合。
附图中的流程图和框图,图示了按照本公开各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,上述模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图或流程图中的每个方框、以及框图或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
描述于本公开实施例中所涉及到的单元可以通过软件的方式实现,也可以通过硬件的方式来实现,所描述的单元也可以设置在处理器中。其中,这些单元的名称在某种情况下并不构成对该单元本身的限定。
作为另一方面,本申请还提供了一种计算机可读介质,该计算机可读介质可以是上述实施例中描述的电子设备中所包含的;也可以是单独存在,而未装配入该电子设备中。上述计算机可读介质承载有一个或者多个程序,当上述一个或者多个程序被一个该电子设备执行时,使得该电子设备实现如上述实施例中所述的直播业务控制方法。
例如,所述的电子设备可以实现如图1中所示的:步骤S110,当检测到事件消息时,将事件消息封装至事件对应的视频流中,并将封装后的视频流发送至服务器;步骤S120,若监测到从服务器中获取的视频流包括事件消息,提取事件消息中的事件内容;步骤S130,播放视频流并执行事件内容对应的业务指令。
应当注意,尽管在上文详细描述中提及了用于动作执行的设备的若干模块或者单元,但是这种划分并非强制性的。实际上,根据本公开的实施方式,上文描述的两个或更多模块或者单元的特征和功能可以在一个模块或者单元中具体化。反之,上文描述的一个模块或者单元的特征和功能可以进一步划分为由多个模块或者单元来具体化。
通过以上的实施方式的描述,本领域的技术人员易于理解,这里描述的示例实施方式可以通过软件实现,也可以通过软件结合必要的硬件的方式来实现。因此,根据本公开实施方式的技术方案可以以软件产品的形式体现出来,该软件产品可以存储在一个非易失性存储介质(可以是CD-ROM,U盘,移动硬盘等)中或网络上,包括若干指令以使得一台计算设备(可以是个人计算机、服务器、触控终端、或者网络设备等)执行根据本公开实施方式的方法。
本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本公开的其它实施方案。本申请旨在涵盖本公开的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本公开的一般性原理并包括本公开未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本公开的真正范围和精神由权利要求指出。
应当理解的是,本公开并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本公开的范围仅由所附的权利要求来限制。
Claims (13)
1.一种直播业务控制方法,其特征在于,所述方法包括:
当检测到事件消息时,将所述事件消息封装至事件对应的视频流中,并将封装后的所述视频流发送至服务器;
若监测到从所述服务器中获取的所述视频流包括所述事件消息,提取所述事件消息中的事件内容;
播放所述视频流并执行所述事件内容对应的业务指令。
2.根据权利要求1所述的方法,其特征在于,将所述事件消息封装至事件对应的视频流中,包括:
将所述事件消息对应的消息内容转换为预设格式,并将所述预设格式的消息内容转换为字符串;
对所述字符串进行编码,并将编码结果确定为所述事件消息对应的数据包;
将所述数据包封装至所述事件对应的视频流中。
3.根据权利要求2所述的方法,其特征在于,将所述数据包封装至所述事件对应的视频流中,包括:
对所述数据包标识特定协议类型,并将标识后的所述数据包封装至所述事件对应的视频流中。
4.根据权利要求3所述的方法,其特征在于,将封装后的所述视频流发送至服务器之后,所述方法还包括:
从所述服务器中获取所述视频流,并对所述视频流中封装的数据包进行监测;
若监测到属于所述特定协议类型的数据包时,则判定从所述服务器中获取的所述视频流包括所述事件消息。
5.根据权利要求1所述的方法,其特征在于,提取所述事件消息中的事件内容之后,所述方法还包括:
对所述事件内容进行解码,并根据解码后的所述事件内容确定所述事件内容对应的待执行的业务指令。
6.根据权利要求1所述的方法,其特征在于,提取所述事件消息中的事件内容之后,所述方法还包括:
当监测到所述视频流对应的数据内容中包括目标信息时,判定所述视频流当前对应的数据内容与所述事件内容相对应。
7.根据权利要求1所述的方法,其特征在于,所述事件消息包括展示所述视频流中的音乐对应的歌词,和/或,所述事件消息包括播放虚拟礼物对应的特效。
8.根据权利要求7所述的方法,其特征在于,若所述事件消息为展示所述视频流中的音乐对应的歌词,执行所述事件内容对应的业务指令,包括:
当检测到音乐播放且前奏播放完毕时,执行用于指示同步播放所述音乐及展示所述音乐对应的歌词的业务指令。
9.根据权利要求7所述的方法,其特征在于,若所述事件消息为播放虚拟礼物对应的特效,执行所述事件内容对应的业务指令,包括:
当检测到所述视频流对应的数据内容中包括虚拟礼物信息时,执行用于表示播放虚拟礼物对应的特效的业务指令。
10.一种直播业务控制装置,其特征在于,所述装置包括:
消息封装单元,用于当检测到事件消息时,将所述事件消息封装至事件对应的视频流中,并将封装后的所述视频流发送至服务器;
内容提取单元,用于在监测到从所述服务器中获取的所述视频流包括所述事件消息时,提取所述事件消息中的事件内容;
指令执行单元,用于当监测到视频流对应的数据内容与所述事件内容相对应时,执行所述事件内容对应的业务指令。
11.一种业务执行系统,其特征在于,所述系统包括服务器、第一客户端和第二客户端:
所述第一客户端,用于检测事件消息,并在检测到事件消息时将所述事件消息封装至事件对应的视频流中,将封装后的所述视频流发送至所述服务器;
所述服务器,用于接收所述第一客户端发送的所述视频流;
所述第二客户端,用于从所述服务器中获取所述视频流,并在监测到从所述服务器中获取的所述视频流包括所述事件消息时,提取所述事件消息中的事件内容;以及,播放所述视频流并执行所述事件内容对应的业务指令。
12.一种计算机可读介质,其上存储有计算机程序,其特征在于,所述程序被处理器执行时实现如权利要求1~9中任一项所述的直播业务控制方法。
13.一种电子设备,其特征在于,包括:
一个或多个处理器;
存储装置,用于存储一个或多个程序,当所述一个或多个程序被所述一个或多个处理器执行时,使得所述一个或多个处理器实现如权利要求1~9中任一项所述的直播业务控制方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010011351.8A CN111147887A (zh) | 2020-01-06 | 2020-01-06 | 直播业务控制方法、装置、计算机可读介质及电子设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010011351.8A CN111147887A (zh) | 2020-01-06 | 2020-01-06 | 直播业务控制方法、装置、计算机可读介质及电子设备 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN111147887A true CN111147887A (zh) | 2020-05-12 |
Family
ID=70523727
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010011351.8A Pending CN111147887A (zh) | 2020-01-06 | 2020-01-06 | 直播业务控制方法、装置、计算机可读介质及电子设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111147887A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111957039A (zh) * | 2020-09-04 | 2020-11-20 | Oppo(重庆)智能科技有限公司 | 一种游戏特效实现方法、装置及计算机可读存储介质 |
US20220303635A1 (en) * | 2021-03-22 | 2022-09-22 | Beijing Dajia Internet Information Technology Co., Ltd. | Method and device for processing message in live broadcast room |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7945926B2 (en) * | 2001-08-08 | 2011-05-17 | Accenture Global Services Limited | Enhanced custom content television |
US20130219444A1 (en) * | 2012-02-17 | 2013-08-22 | Sony Corporation | Receiving apparatus and subtitle processing method |
CN108073672A (zh) * | 2017-04-12 | 2018-05-25 | 北京市商汤科技开发有限公司 | 业务对象推荐方法、装置和电子设备 |
CN108495152A (zh) * | 2018-03-30 | 2018-09-04 | 武汉斗鱼网络科技有限公司 | 一种视频直播方法、装置、电子设备及介质 |
CN108829688A (zh) * | 2018-06-21 | 2018-11-16 | 北京密境和风科技有限公司 | 跨语种交互的实现方法和装置 |
CN108924600A (zh) * | 2018-06-28 | 2018-11-30 | 乐蜜有限公司 | 直播数据的发送接收方法、装置及电子设备 |
-
2020
- 2020-01-06 CN CN202010011351.8A patent/CN111147887A/zh active Pending
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7945926B2 (en) * | 2001-08-08 | 2011-05-17 | Accenture Global Services Limited | Enhanced custom content television |
US20130219444A1 (en) * | 2012-02-17 | 2013-08-22 | Sony Corporation | Receiving apparatus and subtitle processing method |
CN108073672A (zh) * | 2017-04-12 | 2018-05-25 | 北京市商汤科技开发有限公司 | 业务对象推荐方法、装置和电子设备 |
CN108495152A (zh) * | 2018-03-30 | 2018-09-04 | 武汉斗鱼网络科技有限公司 | 一种视频直播方法、装置、电子设备及介质 |
CN108829688A (zh) * | 2018-06-21 | 2018-11-16 | 北京密境和风科技有限公司 | 跨语种交互的实现方法和装置 |
CN108924600A (zh) * | 2018-06-28 | 2018-11-30 | 乐蜜有限公司 | 直播数据的发送接收方法、装置及电子设备 |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111957039A (zh) * | 2020-09-04 | 2020-11-20 | Oppo(重庆)智能科技有限公司 | 一种游戏特效实现方法、装置及计算机可读存储介质 |
US20220303635A1 (en) * | 2021-03-22 | 2022-09-22 | Beijing Dajia Internet Information Technology Co., Ltd. | Method and device for processing message in live broadcast room |
US11553256B2 (en) * | 2021-03-22 | 2023-01-10 | Beijing Dajia Internet Information Technology Co., Ltd. | Method and device for processing message in live broadcast room |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106993239B (zh) | 直播过程中的信息显示方法 | |
CN112653700B (zh) | 一种基于webrtc网页视频通信的方法 | |
US20040179554A1 (en) | Method and system of implementing real-time video-audio interaction by data synchronization | |
WO2021114845A1 (zh) | 互动业务处理方法、系统、设备及存储介质 | |
US10667001B2 (en) | Method and system for display of mixed media content on devices without standard video | |
CN112272327B (zh) | 数据处理方法、装置、存储介质及设备 | |
KR100439338B1 (ko) | 디지털 지상파 데이터 방송을 위한 데이터 부호화 장치 및그 방법 | |
CN106331853B (zh) | 多媒体解封装方法及装置 | |
CN111147887A (zh) | 直播业务控制方法、装置、计算机可读介质及电子设备 | |
CN112165653B (zh) | 一种视频播放方法、装置及设备 | |
CN114040255A (zh) | 直播字幕生成方法、系统、设备及存储介质 | |
CN110139128B (zh) | 一种信息处理方法、拦截器、电子设备及存储介质 | |
CN113490047A (zh) | 一种Android音视频播放方法 | |
EP1049984A1 (en) | Method and system for client-server interaction in interactive communications | |
CN114173157B (zh) | 视频流传输方法及装置、电子设备、存储介质 | |
CN113784094B (zh) | 视频数据处理方法、网关、终端设备及存储介质 | |
CN115706762A (zh) | 一种移动直播实时语音识别生成字幕的方法及装置 | |
CN115150631A (zh) | 字幕处理方法、装置、电子设备和存储介质 | |
CN114339284A (zh) | 直播延迟的监控方法、设备、存储介质及程序产品 | |
CN115811621A (zh) | 一种直播流播放方法、装置、计算机设备及存储介质 | |
CN114257843B (zh) | 一种多媒体数据处理方法、装置、设备及可读存储介质 | |
CN115086753A (zh) | 直播视频流的处理方法、装置、电子设备和存储介质 | |
CN113573100B (zh) | 广告展示方法、设备及系统 | |
WO2024160068A1 (zh) | 一种触觉媒体的数据处理方法及相关设备 | |
CN115134644B (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 | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20200512 |