CN114363281B - 消息传输方法、系统、设备、存储介质及程序产品 - Google Patents
消息传输方法、系统、设备、存储介质及程序产品 Download PDFInfo
- Publication number
- CN114363281B CN114363281B CN202111663068.4A CN202111663068A CN114363281B CN 114363281 B CN114363281 B CN 114363281B CN 202111663068 A CN202111663068 A CN 202111663068A CN 114363281 B CN114363281 B CN 114363281B
- Authority
- CN
- China
- Prior art keywords
- message
- channel
- transmission
- function
- streaming media
- 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
- 230000005540 biological transmission Effects 0.000 title claims abstract description 381
- 238000000034 method Methods 0.000 title claims abstract description 71
- 230000001960 triggered effect Effects 0.000 claims abstract description 7
- 230000006870 function Effects 0.000 claims description 154
- 238000012545 processing Methods 0.000 claims description 21
- 238000011217 control strategy Methods 0.000 claims description 20
- 238000004590 computer program Methods 0.000 claims description 6
- 230000000694 effects Effects 0.000 description 18
- 238000010586 diagram Methods 0.000 description 11
- 230000008569 process Effects 0.000 description 8
- 238000004891 communication Methods 0.000 description 4
- 230000000670 limiting effect Effects 0.000 description 3
- 230000007246 mechanism Effects 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 3
- 238000003672 processing method Methods 0.000 description 3
- 230000004044 response Effects 0.000 description 3
- 238000013461 design Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 230000036961 partial effect Effects 0.000 description 2
- 208000033748 Device issues Diseases 0.000 description 1
- 230000009471 action Effects 0.000 description 1
- 230000002452 interceptive effect Effects 0.000 description 1
- 238000012423 maintenance Methods 0.000 description 1
- 230000002829 reductive effect Effects 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
- 239000002699 waste material Substances 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L51/00—User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
- H04L51/07—User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail characterised by the inclusion of specific contents
- H04L51/10—Multimedia information
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L51/00—User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
- H04L51/04—Real-time or near real-time messaging, e.g. instant messaging [IM]
- H04L51/043—Real-time or near real-time messaging, e.g. instant messaging [IM] using or handling presence information
-
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Signal Processing (AREA)
- Multimedia (AREA)
- Computer Networks & Wireless Communication (AREA)
- General Engineering & Computer Science (AREA)
- Information Transfer Between Computers (AREA)
Abstract
本申请提供一种消息传输方法、系统、设备、存储介质及程序产品,其中方法包括:获取第一传输设备根据启动指令发送的通道建立请求;其中,所述启动指令为用户触发的用于启动业务对象对应的流媒体传输的指令,所述流媒体用于在所述第一传输设备与第二传输设备之间进行传输;所述通道建立请求包括所述业务对象的标识,和/或,所述业务对象的至少一个功能;根据所述通道建立请求,建立所述业务对象对应的通道,和/或,所述至少一个功能对应的通道,以使所述第二传输设备订阅建立的任意一个或多个通道,并在流媒体传输过程中获取发布到订阅的通道的消息。本申请可以提升消息传输的效率、稳定性和灵活性。
Description
技术领域
本申请涉及通信技术领域,尤其涉及一种消息传输方法、系统、设备、存储介质及程序产品。
背景技术
流媒体传输技术能够实现音视频流、动画流等的传输,在直播间和云游戏等场景的应用越来越广泛。
在流媒体传输过程中,往往还有其它消息类数据需要进行实时传输,例如,直播间的评论、云游戏中的控制指令等。目前,这些消息类数据通常基于SEI(SupplementalEnhancement Information,补充增强信息)和流媒体绑定传输,只适用于视频传输,灵活性较差,并且一旦出现网络抖动,可能会导致收不到消息,影响消息传输效果。
发明内容
本申请实施例的主要目的在于提供一种消息传输方法、系统、设备、存储介质及程序产品,以提升流媒体相关的消息的传输效果。
第一方面,本申请实施例提供一种消息传输方法,包括:
获取第一传输设备根据启动指令发送的通道建立请求;其中,所述启动指令为用户触发的用于启动业务对象对应的流媒体传输的指令,所述流媒体用于在所述第一传输设备与第二传输设备之间进行传输;所述通道建立请求包括所述业务对象的标识,和/或,所述业务对象的至少一个功能;
根据所述通道建立请求,建立所述业务对象对应的通道,和/或,所述至少一个功能对应的通道,以使所述第二传输设备订阅建立的任意一个或多个通道,并在流媒体传输过程中获取发布到订阅的通道的消息。
第二方面,本申请实施例提供一种消息传输系统,包括第一传输设备和第二传输设备,所述第一传输设备与所述第二传输设备之间用于传输业务对象对应的流媒体;
所述第一传输设备用于:将流媒体传输过程中生成或获取到的所述业务对象对应的消息发布到所述业务对象对应的通道;
所述第二传输设备用于:订阅所述业务对象对应的通道,并在流媒体传输过程中获取发布到订阅的通道的消息。
第三方面,本申请实施例提供一种消息传输方法,应用于第一传输设备,所述第一传输设备与第二传输设备之间用于传输业务对象对应的流媒体;所述方法包括:
在流媒体传输过程中,生成或获取所述业务对象对应的消息;
将所述消息发布到所述业务对象对应的通道,以使所述第二传输设备在订阅所述业务对象对应的通道后,在流媒体传输过程中获取发布到订阅的通道的消息。
第四方面,本申请实施例提供一种消息传输方法,应用于第二传输设备,所述第二传输设备与第一传输设备之间用于传输业务对象对应的流媒体;所述方法包括:
订阅所述业务对象对应的通道;其中,所述通道用于供所述第一传输设备发布流媒体传输过程中生成或获取到的所述业务对象对应的消息;
在流媒体传输过程中,获取发布到订阅的通道的消息。
第五方面,本申请实施例提供一种电子设备,包括:
至少一个处理器;以及
与所述至少一个处理器通信连接的存储器;
其中,所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述电子设备执行上述任一方面所述的方法。
第六方面,本申请实施例提供一种计算机可读存储介质,所述计算机可读存储介质中存储有计算机执行指令,当处理器执行所述计算机执行指令时,实现上述任一方面所述的方法。
第七方面,本申请实施例提供一种计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现上述任一方面所述的方法。
本申请提供的消息传输方法、系统、设备、存储介质及程序产品,可以获取第一传输设备根据启动指令发送的通道建立请求,其中,所述启动指令为用户触发的用于启动业务对象对应的流媒体传输的指令,所述流媒体用于在所述第一传输设备与第二传输设备之间进行传输,所述通道建立请求包括所述业务对象的标识,和/或,所述业务对象的至少一个功能,根据所述通道建立请求,建立所述业务对象对应的通道,和/或,所述至少一个功能对应的通道,以使所述第二传输设备订阅建立的任意一个或多个通道,并在流媒体传输过程中获取发布到订阅的通道的消息,从而可以根据传输的流媒体对应的业务对象及功能,建立对应的通道,快速、稳定地获取流媒体传输过程中产生的消息,消息的传输不受流媒体传输的影响,减少因流媒体传输问题导致的消息丢失,并且可以根据各种场景定制消息的传输模式,不必与流媒体的传输绑定,提升消息传输的效率、稳定性和灵活性。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本申请的实施例,并与说明书一起用于解释本申请的原理。
图1为本申请实施例提供的一种应用场景示意图;
图2为本申请实施例提供的另一种应用场景示意图;
图3为本申请实施例提供的一种消息传输方法的流程示意图;
图4为本申请实施例提供的一种消息传输系统的结构示意图;
图5为本申请实施例提供的一种消息传输原理示意图;
图6为本申请实施例提供的另一种消息传输系统的结构示意图;
图7为本申请实施例提供的另一种消息传输方法的流程示意图;
图8为本申请实施例提供的又一种消息传输方法的流程示意图;
图9为本申请实施例提供的一种电子设备的结构示意图。
通过上述附图,已示出本申请明确的实施例,后文中将有更详细的描述。这些附图和文字描述并不是为了通过任何方式限制本申请构思的范围,而是通过参考特定实施例为本领域技术人员说明本申请的概念。
具体实施方式
这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本申请相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本申请的一些方面相一致的装置和方法的例子。
首先对本申请所涉及的名词进行解释:
流媒体:将媒体数据以流的方式在网络上进行传输,常见的有视频流、动画流、声音流、图像流等。
消息系统:传输文字、图片、评论、活动信息等消息的系统。
CDN:Content Delivery Network,内容分发网络。
下面对本申请的应用场景及发明构思进行解释说明。
图1为本申请实施例提供的一种应用场景示意图。如图1所示,在直播领域,主播可以通过终端设备采集并上传音视频流,服务器可以将音视频流分发到观众的终端设备,在视频流传输过程中,主播、观众以及服务器可能还有发送消息的需求,例如观众通过终端设备发送的私信经过服务器分发后可以显示在主播的终端设备上。
图2为本申请实施例提供的另一种应用场景示意图。如图2所示,在云游戏领域,玩家可以通过操控终端设备来控制游戏进程,终端设备向服务器发送云游戏中的控制指令后,服务器根据控制指令确定对应的游戏画面,返回给终端设备显示。除了控制指令之外,终端设备和服务器之间还可以传输其它消息例如系统通知等。
在上述场景中,音视频流和游戏画面可以作为流媒体在设备之间进行传输,同时,为了实现消息的传输,往往需要将流媒体与消息绑定,以SEI的方式进行传输,这种方式比较依赖于流媒体,一旦出现网络抖动,或者直播流中断,可能会收不到消息,传输的稳定性较差。并且,和视频流绑定后,纯音频和纯消息都无法支持,有些不必要的消息会进录制,灵活性比较差。
有鉴于此,本申请实施例提供一种消息传输系统,可以为业务对象例如直播间、云游戏等设置对应的通道(Channel),系统中第一传输设备与第二传输设备之间可以传输业务对象对应的流媒体,在流媒体传输过程中,第一传输设备还可以将消息发布(pub)到所述业务对象对应的通道,第二传输设备订阅(sub)所述业务对象对应的通道后,可以获取对应通道的消息,使得消息的传输不受流媒体传输的影响,从而快速、稳定地获取流媒体传输过程中产生的消息,减少因流媒体传输问题导致的消息丢失,并且可以根据各种场景定制消息的传输模式,不必与流媒体的传输绑定,提升消息传输的效率、稳定性和灵活性。
下面结合附图,对本申请的一些实施方式作详细说明。在各实施例之间不冲突的情况下,下述的实施例及实施例中的特征可以相互组合。另外,下述各方法实施例中的步骤时序仅为一种举例,而非严格限定。
图3为本申请实施例提供的一种消息传输方法的流程示意图。所述方法的执行主体可以为服务器。如图3所示,所述方法包括:
步骤301、获取第一传输设备根据启动指令发送的通道建立请求;其中,所述启动指令为用户触发的用于启动业务对象对应的流媒体传输的指令,所述流媒体用于在所述第一传输设备与第二传输设备之间进行传输;所述通道建立请求包括所述业务对象的标识,和/或,所述业务对象的至少一个功能。
可选的,所述第一传输设备和所述第二传输设备之间可以进行流媒体的传输,流媒体的传输方向和传输路径不作限制,可以由第一传输设备将流媒体发送给第二传输设备,也可以由第二传输设备发送给第二传输设备,两设备之间可以直接传输流媒体,也可以通过中间设备传输流媒体。
示例性地,所述第一传输设备和第二传输设备均可以为终端设备,两者直接或者通过服务器传输流媒体,服务器可以执行本实施例提供的方法以建立通道实现消息的传输。或者,所述第一传输设备可以为终端设备,所述第二传输设备可以为服务器,所述服务器执行本实施例提供的方法。
所述第一传输设备可以与用户进行交互,获取用户触发的启动指令,所述启动指令可以用于启动业务对象对应的流媒体的传输,还可以用于启动所述业务对象对应的消息通道的建立以进行消息的传输。所述第一传输设备可以在用户触发启动指令后,生成并发送通道建立请求。
步骤302、根据所述通道建立请求,建立所述业务对象对应的通道,和/或,所述至少一个功能对应的通道,以使所述第二传输设备订阅建立的任意一个或多个通道,并在流媒体传输过程中获取发布到订阅的通道的消息。
其中,可以针对所述业务对象建立一个通道,或者,针对业务对象的各个功能建立对应的通道,或者,针对业务对象建立一个通道实现业务对象的控制,再分别针对各个功能建立对应的通道。
在一示例中,所述通道建立请求可以包括业务对象的标识,可以根据所述通道建立请求建立业务对象的通道。例如,所述业务对象可以为直播间,所述标识可以为直播间对应的URL,在获取到通道建立请求后,可以建立所述直播间对应的通道,所述直播间对应的消息都可以在所述通道中进行发布和接收。
另一示例中,所述通道建立请求可以包括业务对象的功能。例如,用户可以选择启动直播间的至少一个功能如评论、点赞等,服务器可以根据所述通道建立请求为用户选择的各个功能建立对应的通道。
又一示例中,所述通道建立请求可以包括业务对象的标识,以及业务对象的至少一个功能。服务器可以根据通道建立请求,针对业务对象建立一个通道实现业务对象的控制,例如可以在所述通道发布控制指令,以控制业务对象的流媒体虚拟场景,例如直播间视频流对应的虚拟场景;除了业务对象本身对应的一个通道以外,还可以分别针对各个功能建立对应的通道,实现相关功能。
在建立通道后,所述第二传输设备可以订阅建立的任意一个或多个通道,在流媒体传输过程中获取发布到所订阅的通道的消息。
可选的,所述第一传输设备也可以订阅建立的任意一个或多个通道。所述第一传输设备和所述第二传输设备均可以发布消息到通道,也可以从通道获取消息。
在实际应用中,可以在用户触发启动指令后,开始传输流媒体并创建通道进行消息传输,例如,用户在直播间点击开始直播,此时,可以建立评论等功能对应的消息通道,并开始音视频流的上传,且消息的传输和音视频流的传输互不干扰。
综上,本实施例提供的消息传输方法,可以获取第一传输设备根据启动指令发送的通道建立请求,其中,所述启动指令为用户触发的用于启动业务对象对应的流媒体传输的指令,所述流媒体用于在所述第一传输设备与第二传输设备之间进行传输,所述通道建立请求包括所述业务对象的标识,和/或,所述业务对象的至少一个功能,根据所述通道建立请求,建立所述业务对象对应的通道,和/或,所述至少一个功能对应的通道,以使所述第二传输设备订阅建立的任意一个或多个通道,并在流媒体传输过程中获取发布到订阅的通道的消息,从而可以根据传输的流媒体对应的业务对象及功能,建立对应的通道,快速、稳定地获取流媒体传输过程中产生的消息,消息的传输不受流媒体传输的影响,减少因流媒体传输问题导致的消息丢失,并且可以根据各种场景定制消息的传输模式,不必与流媒体的传输绑定,提升消息传输的效率、稳定性和灵活性。
在本申请的一个或多个实施例中,可选的,获取第一传输设备根据启动指令发送的通道建立请求,可以包括:获取第一传输设备根据启动指令发送的业务对象的标识;根据所述业务对象的标识,确定所述业务对象支持的功能列表;将所述功能列表发送给所述第一传输设备,以使所述第一传输设备在所述业务对象对应的展示页面中展示所述功能列表并获取用户从所述功能列表中选择的至少一个功能;获取所述第一传输设备发送的通道建立请求,所述通道建立请求具体包括所述用户选择的至少一个功能。
可选的,每一业务对象可以有支持的功能列表,例如,直播间可以支持评论、点赞、优惠券、3D特效等功能,云游戏可支持游戏动作控制指令、评论、队内消息等功能,可以根据业务对象确定对应的功能列表。
可选的,对于同一类型的业务对象,不同的业务对象标识可以对应不同的功能列表,例如,用户A的直播间支持评论功能,用户B的直播间不支持评论功能,标识与功能列表的对应关系可以由用户预先设置,也可以由系统确定,例如,对于有过违规记录的用户,可以暂停其直播间的部分功能。
在确定功能列表后,第一传输设备可以在业务对象对应的展示页面中展示所述功能列表,其中,所述业务对象对应的展示页面,可以是指,用于展示所述业务对象的流媒体的页面,例如直播画面,或者,可以是业务对象对应的功能界面。
用户可以从功能列表中通过点击或其它交互操作选择本次流媒体传输过程中启用的至少一个功能,第一传输设备发送的通道建立请求中包括所述至少一个功能,以便建立所述至少一个功能中各个功能对应的通道。
示例性地,终端设备可以先将直播间或云游戏的标识上传给服务器,由服务器确定支持的功能列表,直播间和云游戏可以对应的不同的功能列表,可选的,不同的直播间或云游戏也可以对应不同的功能列表,允许用户从列表中选择功能并创建对应的通道。
通过上述方案,能够将业务对象支持的功能列表展示给用户,方便用户选择本次流媒体传输过程中需要启动的功能,满足每次流媒体传输过程中的消息传输需求,且不同流媒体传输过程中可以定制不同的功能通道,具有较强的灵活性。
在本申请的一个或多个实施例中,可选的,所述方法还包括:在流媒体传输过程中,获取所述第一传输设备发送的限时通道建立请求;所述限时通道建立请求包括用户启用的限时功能以及所述限时功能的开始时间和结束时间;根据所述限时通道建立请求,在所述开始时间建立所述限时功能对应的通道,在所述结束时间关闭所述限时功能对应的通道。
其中,所述限时功能可以为具有时间限制的功能,例如限制抢优惠券的功能,其对应的时间限制可以由开始时间和结束时间确定。所述开始时间和结束时间可以由用户确定,或者,由第一传输设备确定。
示例性地,在直播间对应的音视频流的传输过程中,主播可以通过终端设备启动限时抢优惠券的功能,同时设定开始时间和结束时间,第一传输设备将限时通道建立请求发送给服务器后,服务器可以在所述开始时间创建优惠券的通道,方便主播在所述通道中发布优惠券的消息,或者观众在所述通道中发布抢优惠券的消息,在到达结束时间后,关闭对应的通道,取消抢优惠券的功能。
在其它可选的实现方式中,用户可以不必输入开始时间和结束时间,由第一传输设备根据当前时刻确定开始时间,由默认的优惠券持续时长确定结束时间。
在其它可选的实现方式中,所述限时通道建立请求中也可以不包含开始时间和结束时间,所述开始时间和结束时间可以由服务器确定,例如,服务器可以根据接收到所述限时通道建立请求的时间确定开始时间,根据默认的持续时长确定结束时间。
通过上述方案,可以在流媒体传输过程中实现通道的实时建立和关闭,满足流媒体传输过程中不同功能的启用和停用需求,避免资源浪费。
在其它可选的实现方案中,业务对象的功能列表、限时功能等也可以由业务方设置。示例性地,运营人员可以设置各业务对象对应的功能列表,以及限时功能的开始时间、结束时间等,在流媒体传输过程中,服务器可以直接根据运营人员的设置实现通道的建立或关闭。
在建立通道后,可以通过下述各实施例提供的方案实现消息的传输。各实施例中的特征可以相互组合或者相互进行解释、补充说明。
图4为本申请实施例提供的一种消息传输系统的结构示意图。如图4所示,所述系统包括第一传输设备和第二传输设备,所述第一传输设备与所述第二传输设备之间用于传输业务对象对应的流媒体。
其中,所述第一传输设备用于:将流媒体传输过程中生成或获取到的所述业务对象对应的消息发布到所述业务对象对应的通道;所述第二传输设备用于:订阅所述业务对象对应的通道,并在流媒体传输过程中获取发布到订阅的通道的消息。
在实际应用中,第一传输设备可以获取或者生成消息,例如获取用户输入的评论,或者,生成系统通知等。流媒体的传输方向与消息的传输方向可以一致,也可以不一致,例如,流媒体是第一传输设备发送给第二传输设备的,也可以是第二传输设备发送给第一传输设备的。
第一传输设备和第二传输设备可以是直连的,直接传输流媒体和消息,也可以是通过其它设备实现通信连接的,例如,中间可以经过内容分发网络等。
可选的,可以为不同的业务对象设置不同的通道。举例来说,为多个业务对象分配通道,分别记为通道0、通道1、……、通道n,其中某业务对象对应通道1,则可以将该业务对象的消息发布到通道1,订阅通道1的设备可以获取该消息并进行展示或进行其它处理。
在一示例中,所述业务对象可以为直播间,例如,不同的直播间可以对应不同的通道。所述第一传输设备和第二传输设备可以为主播的终端设备和观众的终端设备,不同主播的直播间可以对应不同的通道,观众的终端设备可以订阅任意主播的直播间,并通过直播间对应的通道发布或者获取消息。
可选的,主播的终端设备与观众的终端设备之间可以通过服务器或分布式系统实现通信连接,服务器或分布式系统中可以保存有通道及订阅了通道的终端设备的对应关系,在有消息发布到任一通道后,服务器或分布式系统可以查找订阅了所述通道的终端设备,并将消息发送给对应的终端设备。
又一示例中,所述业务对象可以为云游戏,所述第一传输设备和第二传输设备可以分别为玩家的终端设备和服务器,不同玩家正在体验的云游戏可以对应不同的通道,服务器既可以根据玩家的控制指令返回对应的游戏画面,又可以通过通道发布或获取消息,例如,服务器内部可以有多个模块,分别用于控制游戏以及实现消息处理,在某些模块或玩家的终端设备将消息发布到通道后,实现消息处理的模块可以查找订阅所述通道的终端设备或者模块,并将消息发送到对应的终端设备或者模块。
在实际应用中,对应于不同的场景,第一传输设备和第二传输设备的身份可以灵活设置,例如,在直播场景中,主播的终端设备可以作为第一传输设备,观众的终端设备可以作为第二传输设备,或者,观众的终端设备可以作为第一传输设备,主播的终端设备可以作为第二传输设备。
可选的,第二传输设备也可以发布消息到通道,第一传输设备也可以订阅通道并获取通道对应的消息,这样,传输流媒体的两端可以双向发送接收消息,满足各种场景下的传输需求,不仅可以支持流媒体,还支持任意类型的消息数据在大规模网络中的实时传输,并且消息和媒体解耦,基于订阅机制,方便灵活使用。
综上,本实施例提供的消息传输系统,可以包括第一传输设备和第二传输设备,所述第一传输设备与所述第二传输设备之间可以传输业务对象对应的流媒体,所述第一传输设备还可以将流媒体传输过程中生成或获取到的所述业务对象对应的消息发布到所述业务对象对应的通道,所述第二传输设备可以订阅所述业务对象对应的通道,并在流媒体传输过程中获取发布到订阅的通道的消息,从而可以通过为业务对象设置相应的通道来实现消息传输,使得消息的传输不受流媒体传输的影响,从而快速、稳定地获取流媒体传输过程中产生的消息,减少因流媒体传输问题导致的消息丢失,并且消息不必与流媒体的传输绑定,提升消息传输的效率、稳定性和灵活性。
在本申请的一个或多个实施例中,可选的,所述业务对象包含至少一个功能,针对各功能设置有对应的通道。其中,业务对象包含至少一个功能,可以是指为业务对象设置有至少一个功能,例如,直播间可以包括评论、私信等功能。
可选的,所述第一传输设备具体可以用于:在流媒体传输过程中,生成或获取所述业务对象对应的消息,根据所述消息对应的功能,将所述消息发布到所述功能对应的通道;所述第二传输设备具体可以用于:订阅所述业务对象的任意一个或多个功能对应的通道,在流媒体传输过程中获取发布到订阅的通道的消息;根据获取到的消息对应的功能,处理所述消息。
具体来说,一个业务对象可以对应至少一个通道,具体可以以该业务对象包含的功能进行区分,例如,每一功能对应一个通道,当设备生成或者获取到一个消息后,可以根据消息对应的功能,将消息发布到相关的通道,使得订阅该通道的设备能够获取到消息。
在本申请的一个或多个实施例中,消息与流媒体可以同等层级,有独立的通道名称(Channel Name)和通道ID(Channel ID)。示例性地,协议设计可以参见表1。
表1TLV-Data Channel Params(数据通道参数)
其中,TLV是一种消息格式,Type表示类型,Length表示长度,Value表示值。消息名称和消息ID可以相当于流媒体的MSID(Media Stream ID,媒体流ID)和SSRC(Synchronization source,同步源标识)。
其中,MSID可以用于表示流媒体的名称,SSRC可以用于表示传输该流媒体的流的ID,流媒体可以发布到SSRC对应的流上,基于MSID和SSRC可以实现业务对象对应的流媒体的传输。基于表1的方案,可以实现业务对象对应的消息的传输。
可选的,通道ID可以用于标识一个通道,方便查找哪些设备订阅了这个通道,并且发送消息和反馈响应时都可以携带所述通道ID,方便实现重传等策略。通道的名称可以与通道ID存在对应关系,当某一通道出现问题时,可以向维护人员显示该通道对应的通道名称,方便业务人员对通道进行维护。
表2消息体示例
Tag | Type | 是否必须 | Length | Value | 备注 |
1 | Channel ID | 是 | 4Byte | uint32 | 通道ID |
2 | Message | 否 | var(byte) | Byte | 消息内容 |
示例性地,消息体可以参考表2。可选的,Message(消息)可以不是必须的,设备之间可以仅传输通道ID,用作心跳。可以在消息体单独加控制策略,保证控制策略实时可达。
通过为每一功能设置对应的通道,可以支持设备单独订阅业务对象的一个或多个通道,减少不必要的订阅,使得订阅更加精准,并且,设备可以直接根据通道和消息的对应关系对消息进行处理,不同通道的消息可以支持不同的处理方式,方便实现不同消息的个性化处理,提高了消息传输的整体效率和准确性。
图5为本申请实施例提供的一种消息传输原理示意图。如图5所示,可以为业务对象分配对应的URL(Uniform Resource Locator,统一资源定位符),通过URL加通道的方式实现消息的传输。
可选的,所述第一传输设备在根据所述消息对应的功能,将所述消息发布到所述功能对应的通道时,具体可以用于:确定所述业务对象对应的URL;根据所述消息对应的功能,从所述URL对应的通道中查找所述功能对应的通道;将所述消息发布到所述功能对应的通道;所述第二传输设备具体可以用于:订阅所述业务对象对应的URL下的任意一个或多个通道;在流媒体传输过程中,获取发布到订阅的通道的消息;根据获取到的消息对应的通道及URL,处理所述消息。
其中,一个连接下可以有至少一个URL,一个URL下可以有至少一个通道,支持单独订阅,内部可以传输任意数据。
可选的,一个连接可以是指任意两个设备之间的连接,每个业务对象可以对应一个URL,相当于业务对象的地址,任意两设备间可以传输至少一个URL对应的消息。需要说明的是,在实际应用中,业务对象例如直播间可以有推流地址和拉流地址,这两个地址可以不完全一致,但是存在对应关系,系统可以根据对应关系实现推流和拉流,为了简化说明,这里简单记为一个业务对象对应一个URL。在某些场景中,一个业务对象也可以对应多个URL,本实施例不作限制。
在本申请的一个或多个实施例中,可选的,所述业务对象包括直播间,所述直播间的功能包括下述至少一项:评论、转发、留言、私信、点赞、虚拟物品、优惠券、商品链接、3D特效、系统通知、流媒体传输控制,所述第一传输设备和所述第二传输设备为均终端设备,或者,所述第一传输设备和所述第二传输设备为终端设备和服务器;和/或,所述业务对象包括云游戏,所述云游戏的功能包括下述至少一项:云游戏控制、评论、系统通知、流媒体传输控制;所述第一传输设备和所述第二传输设备为终端设备和服务器。
参见图5,在业务对象层面,不同业务对象可以对应不同的URL,例如,URL1对应直播间1,URL2对应云游戏2,直播间1中有评论、私信、礼物等功能,云游戏2中有评论、系统通知、控制指令等功能,分别设置有对应的通道。
订阅和发布消息的设备可以根据实际需要来设置,例如,主播的终端设备、观众的终端设备、玩家的终端设备、服务器等都可以发布消息,也都可以订阅通道并获取消息。
其中,订阅的时机可以为打开业务对象的时候,或者为打开业务对象后的任意时刻,例如,当观众的终端设备打开直播间的时候,可以订阅评论、系统通知等通道,在直播过程中,当主播发起某些活动例如抢优惠券时,观众的终端设备可以订阅优惠券的通道。
传输业务对象的消息时,第一传输设备可以先确定业务对象对应的URL,并根据消息所属的功能,从所述URL对应的通道中查找所述功能对应的通道并发布,例如直播间的消息为评论则发布到通道11,为私信则发布到通道12。第二传输设备在订阅通道11和通道12后,可以通过通道11和通道12获取评论和私信,并根据获取到的消息对应的通道及URL处理所述消息,例如,若从获取直播间1的通道11获取到消息,则展示在直播间1的评论区中,若从云游戏2的通道22获取到消息,则展示在云游戏2的评论区中。
通过为直播间和云游戏的各种功能设置对应的通道,能够实现直播间和云游戏场景下的消息精细化分类和传输,提高直播和云游戏的消息传输效果,提升用户体验。
在本申请的一个或多个实施例中,可选的,所述第二传输设备在根据获取到的消息对应的通道及URL,处理所述消息时,具体可以用于:根据获取到的消息对应的通道及URL,确定所述消息对应的业务对象及功能;在对应的业务对象的功能模块中推送所述消息,和/或,若所述消息对应的功能为预设类型的功能,则根据所述消息确定所述业务对象对应的流媒体,以在所述第一传输设备与所述第二传输设备之间传输与所述消息相匹配的流媒体。
其中,消息推送可以参见前述示例,除了消息推送以外,还可以对消息进行处理,例如,根据消息控制流媒体。所述预设类型的功能可以是能够影响流媒体的功能,例如,云游戏控制、流媒体传输控制等。
一个示例中,所述消息可以为云游戏的控制指令,对应的功能为云游戏控制。玩家可以通过终端设备的触摸屏、按键等输入控制指令,所述控制指令用于对云游戏进行控制,例如控制云游戏中的角色行走、攻击等,服务器可以根据所述控制指令,生成对应的游戏画面并传输给终端设备。
具体的,玩家的终端设备可以发布控制指令到云游戏控制功能对应的通道,服务器可以从对应的通道获取玩家的控制指令,并生成对应的游戏画面作为流媒体,以流媒体的传输方式发送给终端设备显示。
另一示例中,所述消息可以为直播间中的流媒体传输控制指令,具体可以为视频流控制指令,对应的功能为流媒体传输控制功能。例如,用户可以控制所述视频流的分辨率,或者,系统可以根据当前网络状态自动设置视频流的分辨率,该分辨率以消息的形式发布到通道,用于发送流媒体的设备获取到该分辨率后,控制视频流以该分辨率进行传输。
又一示例中,所述消息可以为3D直播间中的3D特效指令,对应的功能为3D特效功能,例如,主播的终端设备拍摄得到主播的视频流并传输给服务器,服务器可以对视频流进行3D化处理,例如将人像转换为卡通形象、增加虚拟物品、增加虚拟场景等,生成对应的3D化处理后的视频流,并传输给主播的终端设备和观众的终端设备。主播可以通过终端设备选择3D特效,也可以通过查看服务器返回的3D化处理后的视频流来调整3D特效。
通过上述设置,在通过URL和通道获取到消息后,不仅能够以通道消息的方式实现流媒体传输过程中的消息推送,还能够实现流媒体的灵活控制,提高流媒体传输的效果。
除了上述示例以外,本申请实施例还可以用于实现其它场景的流媒体和消息传输,例如,在线上会议、在线教学、云庭审等。
示例性地,在线上会议场景,音视频流可以作为流媒体进行传输,评论、通知等消息可以通过发布到通道进行传输;在在线教学场景,音视频流可以作为流媒体进行传输,教师、助教和学生可以将问题、答案、举手、请假等消息发布到通道进行传输;在云庭审场景,音视频流可以作为流媒体进行传输,当事人和法官可以将证据、回答、代理词等消息发布到通道进行传输。
在本申请的一个或多个实施例中,用于处理流媒体、处理消息的服务器可以是单独设置的服务器,也可以是分布式系统中的任意服务器,也可以是通过分布式系统与终端设备进行通信的其它服务器,例如业务服务器等,只要能够实现业务处理和消息分发即可,对服务器的数量和类型不作限制。
图6为本申请实施例提供的另一种消息传输系统的结构示意图。如图6所示,所述第一传输设备与所述第二传输设备之间可以设置有分布式系统,以通过所述分布式系统传输流媒体以及消息。
其中,所述分布式系统可以包括多个级联的服务器,例如CDN服务器。可选的,所述分布式系统可以为基于全球实时传输网络(Global Realtime Transport Network,GRTN)实现的分布式系统。
参见图6,第一传输设备可以为消息发送端,能够将消息发布到通道0和通道1,通过CDN服务器对消息进行分发,订阅了通道0和通道1的第二传输设备可以作为消息接收端,分别从对应的通道获取消息。
其中,第一传输设备可以是终端设备,也可以是服务器,类似的,第二传输设备可以是终端设备,也可以是服务器。
在本实施例中,多个CDN服务器之间通过GRTN实现消息传输,能够基于GRTN实现消息的发布和订阅,不需要建设单独的消息集群,不需要部署新的设备,有效节约成本,而且CDN按照峰值带宽收费,消息量与媒体带宽相比小的多,可以忽略不计,或者,也可以错峰使用CDN,进一步节约成本,并且,消息传输依托于GRTN的全球通信能力,支持超大规模网络传输和超大并发,有效提升消息传输性能。
在本申请的一个或多个实施例中,可选的,所述第一传输设备和所述第二传输设备可以基于用户数据包协议(User Datagram Protocol,UDP)和/或实时传输控制协议(Real-timeTransport Control Protocol,RTCP)传输消息。
其中,UDP提供一种无需建立连接就可以发送数据包的方法,第一传输设备和第二传输设备可以基于UDP来传输消息。可选的,在本申请各实施例中,任意两个设备之间传输数据,例如服务器与服务器之间、服务器与终端设备之间,都可以使用UDP进行消息传输。
RTCP可以基于UDP来实现,也可以基于其它的传输层协议来实现。RTCP可以基于UDP来实现。RTCP能够统计消息传输的情况,根据消息传输的情况来调整传输消息的控制策略,例如改变传输速度等等。在本申请实施例中,可以基于RTCP app私有协议来实现消息的传输。
基于UDP,无需建立连接即可传输数据。基于RTCP,可以根据消息的传输状态实时调整消息的传输控制策略,进一步提高消息传输的灵活性。
在本申请实施例的一个或多个实施例中,可选的,所述第一传输设备和/或所述第二传输设备还可以用于:根据消息对应的业务对象,确定传输所述消息的控制策略,以根据所述控制策略发布或接收消息;其中,所述控制策略可以是指QoS(Quality of Service,服务质量)策略,具体可以包括下述至少一项:重传策略、冗余策略、调度策略,可以根据场景灵活定制控制策略。
示例性地,重传策略可以是指,若消息接收端没有接收到消息,则消息发送端可以重新传输消息。具体的,消息接收端在接收到消息后可以返回响应,若没有接收到正确的响应,则消息发送端可以重新发送消息。
冗余策略可以是指,以冗余的方式传输消息,一个简单的示例是,在传输消息1、2、3、4时,可以通过传输1、1、2、2、3、3、4、4的方式实现冗余传输,当然,也可以有其它冗余传输方式,此处不作限制。
调度策略可以是指在分布式系统中的调度路径,例如,通过哪些CDN服务器实现消息的发送。可以根据当前的消息传输情况,计算一个最短或者最合适的路径去传输消息。
不同的业务对象可以对应不同的控制策略,进一步地,同一业务对象中不同的功能也可以对应不同的控制策略,能够实现根据业务对象或功能定制控制策略,满足不同场景下的应用需求,对抗弱网,提高系统的灵活性。
可选的,在传输消息时,云游戏对应的冗余程度大于直播间对应的冗余程度,和/或,云游戏对应的重传间隔小于直播间对应的重传间隔,和/或,云游戏对应的调度路径短于直播间对应的调度路径。
其中,直播间对实时性和准确性的要求可以低于云游戏,因此,在设计冗余策略、重传策略和调度策略时,直播间可以有一些超时机制,而云游戏可以设计更激进的控制策略。
可选的,在冗余策略上,云游戏可以采用冗余传输的机制,而直播间可以不采用冗余传输,或者,冗余传输的程度更小,例如部分冗余传输,部分不冗余传输。
在重传策略上,云游戏的重传间隔可以更小,例如将时延控制在50至60ms,而直播间的重传间隔可以更大一些,可以缓存300ms的消息,以对抗300ms的弱网。
在调度策略上,云游戏的消息可以采用服务器与终端设备直连的方式传输,直播间的消息可以经过CDN服务器传输,具体可以通过最短路径加质量优先的方式去计算一个合适的路径,并按照计算得到的路径传输消息。
上述策略可以择一使用,也可以选择至少两种策略一起使用,能够实现场景定制、策略可控。经过实际测试,全网时延可以控制在100至200ms,相比于目前传统消息系统传输秒级延迟,具有较好的实时性。
图7为本申请实施例提供的另一种消息传输方法的流程示意图。所述消息传输方法可以应用于第一传输设备,所述第一传输设备与第二传输设备之间用于传输业务对象对应的流媒体。如图7所示,所述方法可以包括:
步骤701、在流媒体传输过程中,生成或获取业务对象对应的消息。
步骤702、将所述消息发布到所述业务对象对应的通道,以使所述第二传输设备在订阅所述业务对象对应的通道后,在流媒体传输过程中获取发布到订阅的通道的消息。
在本申请的一个或多个实施例中,可选的,所述业务对象包含至少一个功能,针对各功能设置有对应的通道;将所述消息发布到所述业务对象对应的通道,包括:根据所述消息对应的功能,将所述消息发布到所述功能对应的通道,以使所述第二传输设备订阅所述业务对象的任意一个或多个功能对应的通道,并在流媒体传输过程中获取发布到订阅的通道的消息,根据获取到的消息对应的功能,处理所述消息。
在本申请的一个或多个实施例中,可选的,根据所述消息对应的功能,将所述消息发布到所述功能对应的通道,包括:确定所述业务对象对应的统一资源定位符URL;根据所述消息对应的功能,从所述URL对应的通道中查找所述功能对应的通道;将所述消息发布到所述功能对应的通道,以使所述第二传输设备订阅所述业务对象对应的URL下的任意一个或多个通道;在流媒体传输过程中,获取发布到订阅的通道的消息;根据获取到的消息对应的通道及URL,处理所述消息。
在本申请的一个或多个实施例中,可选的,所述业务对象包括直播间,所述直播间的功能包括下述至少一项:评论、转发、留言、私信、点赞、虚拟物品、优惠券、商品链接、3D特效、系统通知、流媒体传输控制,所述第一传输设备和所述第二传输设备为均终端设备,或者,所述第一传输设备和所述第二传输设备为终端设备和服务器;和/或,所述业务对象包括云游戏,所述云游戏的功能包括下述至少一项:云游戏控制、评论、系统通知、流媒体传输控制;所述第一传输设备和所述第二传输设备为终端设备和服务器。
在本申请的一个或多个实施例中,可选的,所述方法还包括:根据消息对应的业务对象,确定传输所述消息的控制策略;其中,所述控制策略包括下述至少一项:重传策略、冗余策略、调度策略。
在本申请的一个或多个实施例中,可选的,在传输消息时,云游戏对应的冗余程度大于直播间对应的冗余程度,和/或,云游戏对应的重传间隔小于直播间对应的重传间隔,和/或,云游戏对应的调度路径短于直播间对应的调度路径。
在本申请的一个或多个实施例中,可选的,所述第一传输设备与所述第二传输设备之间设置有分布式系统,以通过所述分布式系统传输流媒体以及消息;
其中,所述分布式系统为基于全球实时传输网络实现的分布式系统。
在本申请的一个或多个实施例中,可选的,所述第一传输设备和所述第二传输设备基于用户数据包协议和/或实时传输控制协议传输消息。
本实施例提供的消息处理方法的实现原理和技术效果可以参见前述实施例,此处不再赘述。
图8为本申请实施例提供的又一种消息传输方法的流程示意图。所述消息传输方法可以应用于第二传输设备,所述第二传输设备与第一传输设备之间用于传输业务对象对应的流媒体。如图8所示,所述方法可以包括:
步骤801、订阅业务对象对应的通道;其中,所述通道用于供所述第一传输设备发布流媒体传输过程中生成或获取到的所述业务对象对应的消息。
步骤802、在流媒体传输过程中,获取发布到订阅的通道的消息。
在本申请的一个或多个实施例中,可选的,所述业务对象包含至少一个功能,针对各功能设置有对应的通道;订阅业务对象对应的通道,包括:订阅所述业务对象的任意一个或多个功能对应的通道;在获取发布到订阅的通道的消息后,所述方法还包括:根据获取到的消息对应的功能,处理所述消息。
在本申请的一个或多个实施例中,可选的,订阅所述业务对象的任意一个或多个功能对应的通道,包括:订阅所述业务对象对应的URL下的任意一个或多个通道;所述根据获取到的消息对应的功能,处理所述消息,包括:根据获取到的消息对应的通道及URL,处理所述消息。
在本申请的一个或多个实施例中,可选的,根据获取到的消息对应的通道及URL,处理所述消息,包括:根据获取到的消息对应的通道及URL,确定所述消息对应的业务对象及功能;在对应的业务对象的功能模块中推送所述消息,和/或,若所述消息对应的功能为预设类型的功能,则根据所述消息确定所述业务对象对应的流媒体,以在所述第一传输设备与所述第二传输设备之间传输与所述消息相匹配的流媒体。
在本申请的一个或多个实施例中,可选的,所述业务对象包括直播间,所述直播间的功能包括下述至少一项:评论、转发、留言、私信、点赞、虚拟物品、优惠券、商品链接、3D特效、系统通知、流媒体传输控制,所述第一传输设备和所述第二传输设备为均终端设备,或者,所述第一传输设备和所述第二传输设备为终端设备和服务器;和/或,所述业务对象包括云游戏,所述云游戏的功能包括下述至少一项:云游戏控制、评论、系统通知、流媒体传输控制;所述第一传输设备和所述第二传输设备为终端设备和服务器。
在本申请的一个或多个实施例中,可选的,所述方法还包括:根据消息对应的业务对象,确定传输所述消息的控制策略;其中,所述控制策略包括下述至少一项:重传策略、冗余策略、调度策略。
在本申请的一个或多个实施例中,可选的,在传输消息时,云游戏对应的冗余程度大于直播间对应的冗余程度,和/或,云游戏对应的重传间隔小于直播间对应的重传间隔,和/或,云游戏对应的调度路径短于直播间对应的调度路径。
在本申请的一个或多个实施例中,可选的,所述第一传输设备与所述第二传输设备之间设置有分布式系统,以通过所述分布式系统传输流媒体以及消息;其中,所述分布式系统为基于全球实时传输网络实现的分布式系统。
在本申请的一个或多个实施例中,可选的,所述第一传输设备和所述第二传输设备基于用户数据包协议和/或实时传输控制协议传输消息。
本实施例提供的消息处理方法的实现原理和技术效果可以参见前述实施例,此处不再赘述。
对应于上述方法,本申请实施例还提供一种消息传输装置,应用于第一传输设备,所述第一传输设备与第二传输设备之间用于传输业务对象对应的流媒体;所述装置包括:
生成模块,用于在流媒体传输过程中,生成或获取所述业务对象对应的消息;
发布模块,用于将所述消息发布到所述业务对象对应的通道,以使所述第二传输设备在订阅所述业务对象对应的通道后,在流媒体传输过程中获取发布到订阅的通道的消息。
本申请实施例还提供一种消息传输装置,应用于第二传输设备,所述第二传输设备与第一传输设备之间用于传输业务对象对应的流媒体;所述装置包括:
订阅模块,用于订阅所述业务对象对应的通道;其中,所述通道用于供所述第一传输设备发布流媒体传输过程中生成或获取到的所述业务对象对应的消息;
获取模块,用于在流媒体传输过程中,获取发布到订阅的通道的消息。
本申请实施例提供的各装置的具体实现原理和技术效果可以参见前述实施例,此处不再赘述。
图9为本申请实施例提供的一种电子设备的结构示意图。如图9所示,本实施例的电子设备可以包括:
至少一个处理器901;以及
与所述至少一个处理器901通信连接的存储器902;
其中,所述存储器902存储有可被所述至少一个处理器901执行的指令,所述指令被所述至少一个处理器901执行,以使所述电子设备执行如上述任一实施例所述的方法。
可选地,存储器902既可以是独立的,也可以跟处理器901集成在一起。
本实施例提供的电子设备的实现原理和技术效果可以参见前述各实施例,此处不再赘述。
本申请实施例还提供一种计算机可读存储介质,所述计算机可读存储介质中存储有计算机执行指令,当处理器执行所述计算机执行指令时,实现前述任一实施例所述的方法。
本申请实施例还提供一种计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现前述任一实施例所述的方法。
在本申请所提供的几个实施例中,应该理解到,所揭露的设备和方法,可以通过其它的方式实现。例如,以上所描述的设备实施例仅仅是示意性的,例如,所述模块的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个模块可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。
上述以软件功能模块的形式实现的集成的模块,可以存储在一个计算机可读取存储介质中。上述软件功能模块存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)或处理器执行本申请各个实施例所述方法的部分步骤。
应理解,上述处理器可以是中央处理单元(Central Processing Unit,简称CPU),还可以是其它通用处理器、数字信号处理器(Digital Signal Processor,简称DSP)、专用集成电路(Application Specific Integrated Circuit,简称ASIC)等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。结合申请所公开的方法的步骤可以直接体现为硬件处理器执行完成,或者用处理器中的硬件及软件模块组合执行完成。存储器可能包含高速RAM存储器,也可能还包括非易失性存储NVM,例如至少一个磁盘存储器,还可以为U盘、移动硬盘、只读存储器、磁盘或光盘等。
上述存储介质可以是由任何类型的易失性或非易失性存储设备或者它们的组合实现,如静态随机存取存储器(SRAM),电可擦除可编程只读存储器(EEPROM),可擦除可编程只读存储器(EPROM),可编程只读存储器(PROM),只读存储器(ROM),磁存储器,快闪存储器,磁盘或光盘。存储介质可以是通用或专用计算机能够存取的任何可用介质。
一种示例性的存储介质耦合至处理器,从而使处理器能够从该存储介质读取信息,且可向该存储介质写入信息。当然,存储介质也可以是处理器的组成部分。处理器和存储介质可以位于专用集成电路(Application Specific Integrated Circuits,简称ASIC)中。当然,处理器和存储介质也可以作为分立组件存在于电子设备或主控设备中。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者装置不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者装置所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者装置中还存在另外的相同要素。
上述本申请实施例序号仅仅为了描述,不代表实施例的优劣。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,空调器,或者网络设备等)执行本申请各个实施例所述的方法。
以上仅为本申请的优选实施例,并非因此限制本申请的专利范围,凡是利用本申请说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本申请的专利保护范围内。
Claims (12)
1.一种消息传输方法,其特征在于,包括:
获取第一传输设备根据启动指令发送的通道建立请求;其中,所述启动指令为用户触发的用于启动业务对象对应的流媒体传输的指令,所述流媒体用于在所述第一传输设备与第二传输设备之间进行传输;所述通道建立请求包括所述业务对象的标识,和/或,所述业务对象的至少一个功能;
根据所述通道建立请求,建立所述业务对象对应的通道,和/或,所述至少一个功能对应的通道,以使所述第二传输设备订阅建立的任意一个或多个通道,并在流媒体传输过程中获取发布到订阅的通道的消息;
所述方法还包括:
在流媒体传输过程中,获取所述第一传输设备发送的限时通道建立请求;所述限时通道建立请求包括用户启用的限时功能以及所述限时功能的开始时间和结束时间;
根据所述限时通道建立请求,在所述开始时间建立所述限时功能对应的通道,在所述结束时间关闭所述限时功能对应的通道。
2.根据权利要求1所述的方法,其特征在于,获取第一传输设备根据启动指令发送的通道建立请求,包括:
获取第一传输设备根据启动指令发送的业务对象的标识;
根据所述业务对象的标识,确定所述业务对象支持的功能列表;
将所述功能列表发送给所述第一传输设备,以使所述第一传输设备在所述业务对象对应的展示页面中展示所述功能列表并获取用户从所述功能列表中选择的至少一个功能;
获取所述第一传输设备发送的通道建立请求,所述通道建立请求具体包括所述用户选择的至少一个功能。
3.一种消息传输系统,其特征在于,包括第一传输设备和第二传输设备,所述第一传输设备与所述第二传输设备之间用于传输业务对象对应的流媒体;
所述第一传输设备用于:将流媒体传输过程中生成或获取到的所述业务对象对应的消息发布到所述业务对象对应的通道;
所述第二传输设备用于:订阅所述业务对象对应的通道,并在流媒体传输过程中获取发布到订阅的通道的消息;
所述第一传输设备和/或所述第二传输设备还用于:根据消息对应的业务对象,确定传输所述消息的控制策略;其中,所述控制策略包括下述至少一项:重传策略、冗余策略、调度策略;在传输消息时,云游戏对应的冗余程度大于直播间对应的冗余程度,和/或,云游戏对应的重传间隔小于直播间对应的重传间隔,和/或,云游戏对应的调度路径短于直播间对应的调度路径。
4.根据权利要求3所述的系统,其特征在于,所述业务对象包含至少一个功能,针对各功能设置有对应的通道;
所述第一传输设备具体用于:在流媒体传输过程中,生成或获取所述业务对象对应的消息,根据所述消息对应的功能,将所述消息发布到所述功能对应的通道;
所述第二传输设备具体用于:订阅所述业务对象的任意一个或多个功能对应的通道;在流媒体传输过程中获取发布到订阅的通道的消息;根据获取到的消息对应的功能,处理所述消息。
5.根据权利要求4所述的系统,其特征在于,所述第一传输设备在根据所述消息对应的功能,将所述消息发布到所述功能对应的通道时,具体用于:确定所述业务对象对应的统一资源定位符URL;根据所述消息对应的功能,从所述URL对应的通道中查找所述功能对应的通道;将所述消息发布到所述功能对应的通道;
所述第二传输设备具体用于:订阅所述业务对象对应的URL下的任意一个或多个通道;在流媒体传输过程中,获取发布到订阅的通道的消息;根据获取到的消息对应的通道及URL,处理所述消息。
6.根据权利要求5所述的系统,其特征在于,所述第二传输设备在根据获取到的消息对应的通道及URL,处理所述消息时,具体用于:
根据获取到的消息对应的通道及URL,确定所述消息对应的业务对象及功能;
在对应的业务对象的功能模块中推送所述消息,和/或,若所述消息对应的功能为预设类型的功能,则根据所述消息确定所述业务对象对应的流媒体,以在所述第一传输设备与所述第二传输设备之间传输与所述消息相匹配的流媒体。
7.根据权利要求3-6任一项所述的系统,其特征在于,所述第一传输设备与所述第二传输设备之间设置有分布式系统,以通过所述分布式系统传输流媒体以及消息;
其中,所述分布式系统为基于全球实时传输网络实现的分布式系统;
所述第一传输设备和所述第二传输设备基于用户数据包协议和/或实时传输控制协议传输消息。
8.一种消息传输方法,其特征在于,应用于第一传输设备,所述第一传输设备与第二传输设备之间用于传输业务对象对应的流媒体;所述方法包括:
在流媒体传输过程中,生成或获取所述业务对象对应的消息;
将所述消息发布到所述业务对象对应的通道,以使所述第二传输设备在订阅所述业务对象对应的通道后,在流媒体传输过程中获取发布到订阅的通道的消息;
根据消息对应的业务对象,确定传输所述消息的控制策略;其中,所述控制策略包括下述至少一项:重传策略、冗余策略、调度策略;在传输消息时,云游戏对应的冗余程度大于直播间对应的冗余程度,和/或,云游戏对应的重传间隔小于直播间对应的重传间隔,和/或,云游戏对应的调度路径短于直播间对应的调度路径。
9.一种消息传输方法,其特征在于,应用于第二传输设备,所述第二传输设备与第一传输设备之间用于传输业务对象对应的流媒体;所述方法包括:
订阅所述业务对象对应的通道;其中,所述通道用于供所述第一传输设备发布流媒体传输过程中生成或获取到的所述业务对象对应的消息;
在流媒体传输过程中,获取发布到订阅的通道的消息;
根据消息对应的业务对象,确定传输所述消息的控制策略;其中,所述控制策略包括下述至少一项:重传策略、冗余策略、调度策略;在传输消息时,云游戏对应的冗余程度大于直播间对应的冗余程度,和/或,云游戏对应的重传间隔小于直播间对应的重传间隔,和/或,云游戏对应的调度路径短于直播间对应的调度路径。
10.一种电子设备,其特征在于,包括:
至少一个处理器;以及
与所述至少一个处理器通信连接的存储器;
其中,所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述电子设备执行权利要求1-2、8、9中任一项所述的方法。
11.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储有计算机执行指令,当处理器执行所述计算机执行指令时,实现如权利要求1-2、8、9中任一项所述的方法。
12.一种计算机程序产品,包括计算机程序,其特征在于,该计算机程序被处理器执行时实现如权利要求1-2、8、9中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111663068.4A CN114363281B (zh) | 2021-12-31 | 2021-12-31 | 消息传输方法、系统、设备、存储介质及程序产品 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111663068.4A CN114363281B (zh) | 2021-12-31 | 2021-12-31 | 消息传输方法、系统、设备、存储介质及程序产品 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN114363281A CN114363281A (zh) | 2022-04-15 |
CN114363281B true CN114363281B (zh) | 2024-06-04 |
Family
ID=81104697
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111663068.4A Active CN114363281B (zh) | 2021-12-31 | 2021-12-31 | 消息传输方法、系统、设备、存储介质及程序产品 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114363281B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114866553B (zh) * | 2022-04-27 | 2024-05-28 | 阿里云计算有限公司 | 一种数据分发方法、设备及存储介质 |
CN115174433B (zh) * | 2022-07-07 | 2024-06-11 | 东软睿驰汽车技术(大连)有限公司 | 多终端接入网关的模拟方法、模拟装置和模拟系统 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2015075850A1 (ja) * | 2013-11-19 | 2015-05-28 | 株式会社ソニー・コンピュータエンタテインメント | 情報処理装置 |
WO2019019370A1 (zh) * | 2017-07-24 | 2019-01-31 | 平安科技(深圳)有限公司 | 一种音视频的直播处理方法、存储介质和一种移动终端 |
CN111510780A (zh) * | 2020-04-10 | 2020-08-07 | 广州华多网络科技有限公司 | 视频直播控制、桥接、流控、播控方法及客户端 |
CN111654713A (zh) * | 2020-04-20 | 2020-09-11 | 视联动力信息技术股份有限公司 | 一种直播互动方法及装置 |
CN112738140A (zh) * | 2021-04-01 | 2021-04-30 | 浙江华创视讯科技有限公司 | 一种基于WebRTC的视频流传输方法、装置、存储介质和设备 |
WO2021159825A1 (zh) * | 2020-02-11 | 2021-08-19 | 上海哔哩哔哩科技有限公司 | 直播互动方法及系统 |
US11196577B1 (en) * | 2021-04-22 | 2021-12-07 | Whatnot Inc. | Publish/subscribe messaging pattern in communications among mobile computing devices |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20090006559A1 (en) * | 2007-06-27 | 2009-01-01 | Bhogal Kulvir S | Application Message Subscription Tracking In A High Speed, Low Latency Data Communications Environment |
US20130103814A1 (en) * | 2011-10-25 | 2013-04-25 | Cbs Interactive Inc. | System and Method for a Shared Media Experience |
WO2018027237A1 (en) * | 2016-08-05 | 2018-02-08 | Sportscastr.Live Llc | Systems, apparatus, and methods for scalable low-latency viewing of broadcast digital content streams of live events |
WO2018213481A1 (en) * | 2017-05-16 | 2018-11-22 | Sportscastr.Live Llc | Systems, apparatus, and methods for scalable low-latency viewing of integrated broadcast commentary and event video streams of live events, and synchronization of event information with viewed streams via multiple internet channels |
US20190297474A1 (en) * | 2018-03-23 | 2019-09-26 | Satori Worldwide, Llc | Connecting and managing vehicles using a publish-subscribe system |
US20190332522A1 (en) * | 2018-04-27 | 2019-10-31 | Satori Worldwide, Llc | Microservice platform with messaging system |
-
2021
- 2021-12-31 CN CN202111663068.4A patent/CN114363281B/zh active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2015075850A1 (ja) * | 2013-11-19 | 2015-05-28 | 株式会社ソニー・コンピュータエンタテインメント | 情報処理装置 |
WO2019019370A1 (zh) * | 2017-07-24 | 2019-01-31 | 平安科技(深圳)有限公司 | 一种音视频的直播处理方法、存储介质和一种移动终端 |
WO2021159825A1 (zh) * | 2020-02-11 | 2021-08-19 | 上海哔哩哔哩科技有限公司 | 直播互动方法及系统 |
CN111510780A (zh) * | 2020-04-10 | 2020-08-07 | 广州华多网络科技有限公司 | 视频直播控制、桥接、流控、播控方法及客户端 |
CN111654713A (zh) * | 2020-04-20 | 2020-09-11 | 视联动力信息技术股份有限公司 | 一种直播互动方法及装置 |
CN112738140A (zh) * | 2021-04-01 | 2021-04-30 | 浙江华创视讯科技有限公司 | 一种基于WebRTC的视频流传输方法、装置、存储介质和设备 |
US11196577B1 (en) * | 2021-04-22 | 2021-12-07 | Whatnot Inc. | Publish/subscribe messaging pattern in communications among mobile computing devices |
Also Published As
Publication number | Publication date |
---|---|
CN114363281A (zh) | 2022-04-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101485170B (zh) | 通过网络呈现用流传输的可重复的数据对象 | |
CN114363281B (zh) | 消息传输方法、系统、设备、存储介质及程序产品 | |
CN105656910B (zh) | 媒体传输服务器、媒体传输系统、用户终端和媒体传输方法 | |
US9615119B2 (en) | Method and apparatus for providing timeshift service in digital broadcasting system and system thereof | |
CN109151497B (zh) | 一种连麦直播方法、装置、电子设备及存储介质 | |
US9462018B2 (en) | Multiway peer-to-peer media streaming | |
US20090064245A1 (en) | Enhanced On-Line Collaboration System for Broadcast Presentations | |
CN110856011B (zh) | 一种分组进行直播互动的方法、电子设备及存储介质 | |
US8203989B2 (en) | Distributing content in a communication network | |
US9826283B2 (en) | Apparatus and method for inserting advertisement in a broadcasting system | |
KR20180099109A (ko) | 실시간 방송 요청 시스템 및 방법 | |
KR20060088438A (ko) | 멀티미디어 컨텐츠에 실시간 동영상 광고 삽입 방법 및시스템 | |
US20120188331A1 (en) | Content distribution system | |
US11089442B2 (en) | System and method for dynamically switching eMBMS services | |
KR100620630B1 (ko) | 멀티미디어 컨텐츠에 실시간 동영상 광고 삽입 방법 및시스템 | |
WO2014169634A1 (zh) | 媒体播放处理方法、装置、系统及媒体服务器 | |
JP2005043998A (ja) | サーバ、配信条件生成制御方法及び配信条件生成制御プログラム | |
KR100979873B1 (ko) | 무선망을 이용하여 사용자의 이동통신 단말기에 개인화된광고를 제공하는 방법 및 장치 | |
CN110650080B (zh) | 一种基于视联网的视频邮件的传输方法及装置 | |
KR20060088443A (ko) | 멀티미디어 컨텐츠에 실시간 고객관계관리 연동형 동영상광고 삽입 시스템 | |
TW567726B (en) | Method and system providing remote conference between at least two parties | |
KR20060088442A (ko) | 멀티미디어 컨텐츠에 실시간 고객관계관리 연동형 동영상광고 삽입 시스템 | |
KR20060088439A (ko) | 멀티미디어 컨텐츠에 실시간 동영상 광고 삽입 방법 및시스템 | |
KR20060088441A (ko) | 멀티미디어 컨텐츠에 실시간 고객관계관리 연동형 동영상광고 삽입 방법 | |
KR100625578B1 (ko) | 멀티미디어 컨텐츠에 실시간 동영상 광고 삽입 방법 및시스템 |
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 |