一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

流媒体播放方法、传输设备和系统与流程

2021-11-05 21:49:00 来源:中国专利 TAG:


1.本发明涉及流媒体技术领域,尤其涉及一种流媒体播放方法、传输设备和系统。


背景技术:

2.随着互联网技术的不断发展,目前,很多应用场景中都需要进行音视频等多媒体数据流的实时传输,比如直播、视频会议等应用场景。
3.以直播场景为例,实际应用中,可能会有很多用户(观众)订阅某个主播a的直播视频,为了增强互动性,该主播a在直播过程中,可能与另一主播b进行视频连麦互动,此时,对于这些用户来说,其观看的音视频流将会发生切换,由原来的主播a的音视频流切换为连麦后的音视频流。
4.因此,如何让播放端无感知地、高效完成多媒体数据流在播放端的切换处理,是亟待解决的问题。


技术实现要素:

5.本发明实施例提供一种流媒体播放方法、传输设备和系统,能够实现高效地、播放端无感知地多媒体数据流的切换播放。
6.第一方面,本发明实施例提供一种流媒体播放系统,包括:信令服务器和多个传输设备;
7.所述信令服务器,用于接收切换指令,将所述切换指令传输至第一传输设备,所述切换指令指示将第一多媒体数据流切换为第二多媒体数据流,所述第一传输设备是所述第一多媒体数据流的源传输设备;
8.所述第一传输设备,用于将所述切换指令传输至第二传输设备,所述第二传输设备是订阅所述第一多媒体数据流的播放端接入的传输设备;
9.所述第二传输设备,用于根据所述切换指令从第三传输设备获取所述第二多媒体数据流,发送所述第二多媒体数据流至所述播放端,停止向所述播放端发送所述第一多媒体数据流,所述第三传输设备是所述第二多媒体数据流的源传输设备。
10.第二方面,本发明实施例提供一种流媒体播放方法,应用于信令服务器和多个传输设备,所述多个传输设备中包括第一传输设备、第二传输设备和第三传输设备,其中,所述第一传输设备是第一多媒体数据流的源传输设备,所述第二传输设备接入有订阅所述第一多媒体数据流的播放端,所述第三传输设备是第二多媒体数据流的源传输设备;
11.所述方法包括:
12.所述第一传输设备接收所述信令服务器发送的切换指令,所述切换指令指示将第一多媒体数据流切换为第二多媒体数据流;
13.所述第一传输设备将所述切换指令传输至所述第二传输设备,以使所述第二传输设备根据所述切换指令从所述第三传输设备获取所述第二多媒体数据流,发送所述第二多媒体数据流至所述播放端,停止向所述播放端发送所述第一多媒体数据流。
14.第三方面,本发明实施例提供一种流媒体播放装置,应用于分布式传输网络,所述分布式传输网络中包括信令服务器和多个传输设备,所述多个传输设备中包括第一传输设备、第二传输设备和第三传输设备,其中,所述第一传输设备是第一多媒体数据流的源传输设备,所述第二传输设备接入有订阅所述第一多媒体数据流的播放端,所述第三传输设备是第二多媒体数据流的源传输设备;
15.所述装置位于所述第一传输设备,包括:
16.接收模块,用于接收所述信令服务器发送的切换指令,所述切换指令指示将第一多媒体数据流切换为第二多媒体数据流;
17.发送模块,用于将所述切换指令传输至所述第二传输设备,以使所述第二传输设备根据所述切换指令从所述第三传输设备获取所述第二多媒体数据流,发送所述第二多媒体数据流至所述播放端,停止向所述播放端发送所述第一多媒体数据流。
18.第四方面,本发明实施例提供一种第一传输设备,包括:存储器、处理器、通信接口;其中,所述存储器上存储有可执行代码,当所述可执行代码被所述处理器执行时,使所述处理器至少可以实现如第二方面所述的流媒体播放方法。
19.第五方面,本发明实施例提供了一种非暂时性机器可读存储介质,所述非暂时性机器可读存储介质上存储有可执行代码,当所述可执行代码被传输设备的处理器执行时,使所述处理器至少可以实现如第二方面所述的流媒体播放方法。
20.第六方面,本发明实施例提供一种流媒体播放方法,应用信令服务器和多个传输设备,所述多个传输设备中包括第一传输设备、第二传输设备和第三传输设备,其中,所述第一传输设备是第一多媒体数据流的源传输设备,所述第二传输设备接入有订阅所述第一多媒体数据流的播放端,所述第三传输设备是第二多媒体数据流的源传输设备;
21.所述方法包括:
22.所述第二传输设备获取所述第一传输设备发出的切换指令,所述切换指令指示将第一多媒体数据流切换为第二多媒体数据流,所述第一传输设备接收所述信令服务器发送的所述切换指令;
23.所述第二传输设备根据所述切换指令从所述第三传输设备获取所述第二多媒体数据流,发送所述第二多媒体数据流至所述播放端,停止向所述播放端发送所述第一多媒体数据流。
24.第七方面,本发明实施例提供一种流媒体播放装置,应用于分布式传输网络,所述分布式传输网络中包括信令服务器和多个传输设备,所述多个传输设备中包括第一传输设备、第二传输设备和第三传输设备,其中,所述第一传输设备是第一多媒体数据流的源传输设备,所述第二传输设备接入有订阅所述第一多媒体数据流的播放端,所述第三传输设备是第二多媒体数据流的源传输设备;
25.所述装置位于所述第二传输设备中,包括:
26.获取模块,用于获取所述第一传输设备发出的切换指令,所述切换指令指示将第一多媒体数据流切换为第二多媒体数据流,所述第一传输设备接收所述信令服务器发送的所述切换指令;
27.切换模块,用于根据所述切换指令从所述第三传输设备获取所述第二多媒体数据流,发送所述第二多媒体数据流至所述播放端,停止向所述播放端发送所述第一多媒体数
据流。
28.第八方面,本发明实施例提供一种第二传输设备,包括:存储器、处理器;其中,所述存储器上存储有可执行代码,当所述可执行代码被所述处理器执行时,使所述处理器至少可以实现如第六方面所述的流媒体播放方法。
29.第九方面,本发明实施例提供了一种非暂时性机器可读存储介质,所述非暂时性机器可读存储介质上存储有可执行代码,当所述可执行代码被传输设备的处理器执行时,使所述处理器至少可以实现如第六方面所述的流媒体播放方法。
30.本发明实施例采用某种分布式传输网络来实现多媒体数据流的传输以及切换处理。该分布式传输网络中包括信令服务器和多个传输设备。在多媒体数据流切换的过程中,首先,信令服务器接收到指示将第一多媒体数据流切换为第二多媒体数据流的切换指令后,将切换指令传输至第一传输设备,其中,第一传输设备是第一多媒体数据流的源传输设备,也就是说第一多媒体数据流最初被上传到第一传输设备中。假设订阅了第一多媒体数据流的某个播放端接入到第二传输设备,那么在第二传输设备回源拉取第一多媒体数据流的时候,会获取到自第一传输设备逐跳转发的上述切换指令,基于该切换指令,第二传输设备回源到存储有第二多媒体数据流的第三传输设备以拉取到第二多媒体数据流,发送第二多媒体数据流至播放端,并停止向播放端发送第一多媒体数据流,从而实现播放端侧观看的多媒体数据流的切换。
31.在上述方案中,在用于传输多媒体数据流的分布式传输网络中,与多媒体数据流同步传输对应的切换指令,以由播放端接入的传输设备完成向播放端输出的多媒体数据流的切换操作,从而实现多媒体数据流的高效切换播放,且在切换过程中播放端是无感的,不需要做任何处理。
附图说明
32.为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
33.图1为本发明实施例提供的一种流媒体播放方案的应用示意图;
34.图2为本发明实施例提供的另一种流媒体播放方案的应用示意图;
35.图3为本发明实施例提供的一种流媒体播放系统的示意图;
36.图4为本发明实施例提供的另一种流媒体播放系统的示意图;
37.图5为本发明实施例提供的一种流媒体播放方法的流程图;
38.图6为本发明实施例提供的一种流媒体播放方法的流程图;
39.图7为本发明实施例提供的一种流媒体播放装置的结构示意图;
40.图8为与图7所示实施例提供的流媒体播放装置对应的第一传输设备的结构示意图;
41.图9为本发明实施例提供的一种流媒体播放装置的结构示意图;
42.图10为与图9所示实施例提供的流媒体播放装置对应的第二传输设备的结构示意图。
具体实施方式
43.为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
44.另外,下述各方法实施例中的步骤时序仅为一种举例,而非严格限定。
45.在播放端原本订阅了多媒体数据流a,但是在某种情况下,需要改为订阅多媒体数据流b的情形下,为实现多媒体数据流向播放端的切换,本发明实施例提供了几种解决方案。其中,播放端对应于观看多媒体数据流的终端用户,可以是用户设备中运行的播放器。多媒体数据流可以是音频、视频流。
46.第一种解决方案如图1所示。
47.图1为本发明实施例提供的一种流媒体播放方案的应用示意图,该流媒体播放方案需要使用到合流服务器和分布式传输网络。
48.其中,合流服务器,用于以某些手段生产出某路多媒体数据流的替代流。比如,上述多媒体数据流b可以是合流服务器对多媒体数据流a和多媒体数据流a’合并处理得到的一路多媒体数据流。也就是说,合流服务器可以通过合并至少两路多媒体数据流的方式得到一路合并后的多媒体数据流。实际应用中,可以部署包括多个合流服务器的合流服务器集群。由于每个合流服务器的处理过程都是相似的,因此为便于描述,本文中仅以一个合流服务器为例来说明。
49.分布式传输网络,用于传输多媒体数据流。实际应用中,该分布式传输网络可以采用全球实时传输网络(global realtime transport network,简称grtn),以实现对多媒体数据流的实时传输,满足直播、视频会议等应用场景对多媒体数据流的实时传输需求。分布式传输网络中包括若干传输设备(或者称为传输节点),通过不同传输设备之间的无线通信能力,实现向位于不同位置的播放端的多媒体数据流的传输。
50.以直播场景为例,假设由n个主播先后产出了n路多媒体数据流(如视频流),那么在第一种解决方案中,如图1中所示,这n路多媒体数据流会先上传到合流服务器中,之后,合流服务器再将n路多媒体数据流传输到分布式传输网络中,其中,不同的多媒体数据流可能被初始传输到不同的传输设备中。以分布式传输网络的角度来说,假设某个传输设备接收到合流服务器传输的某路多媒体数据流,那么该传输设备可以认为是这路多媒体数据流的源传输设备,或者称为生产(producer)传输设备。
51.另外,假设上述n路多媒体数据流中的某路多媒体数据流a存在切换需求,即需要生产出与这路多媒体数据流a对应的替代多媒体数据流,表示为多媒体数据流b,并假设多媒体数据流b是对多媒体数据流a和n路视频流中包含的多媒体数据流a’合并得到的,那么合流服务器需要执行上述合并处理得到多媒体数据流b,并基于上述切换需求将输出到分布式传输网络的多媒体数据流a替换为多媒体数据流b,这样,接入分布式传输网络的订阅多媒体数据流a的播放端便不会收到多媒体数据流a而是接收到多媒体数据流b。
52.实际应用中,合流服务器的部署成本很高,当有海量的多媒体数据流产生时,需要部署的合流服务器的数量将会很大,成本问题尤其明显。而且,当存在切流需求的多媒体数据流的数量比较大时,合流服务器的负载压力也会很大。另外,针对没有切流需求的多媒体
数据流来说,这些多媒体数据流也需要传输到合流服务器,合流服务器存在大量不必要的多媒体数据流的处理开销。
53.第二种解决方案如图2所示。
54.图2为本发明实施例提供的另一种流媒体播放方案的应用示意图,该流媒体播放方案也需要使用到合流服务器和分布式传输网络。
55.在该解决方案中,合流服务器可以仅用于接收各路多媒体数据流并发送到分布式传输网络上,以及在某路多媒体数据流存在切流需求时,生产对应的多媒体数据流(比如上文中的多媒体数据流b)并发送到分布式传输网络中。
56.如图2中所示,分布式传输网络中除了包括若干传输设备外,还包括信令服务器。指示将多媒体数据流a切换为多媒体数据流b的切换指令被发送到信令服务器,信令服务器通过分布式传输网络中包含的若干传输设备的配合将该切换指令发送到播放端接入的传输设备,进而由该传输设备将切换指令发送至播放端。播放端基于该切换指令完成多媒体视频流的切换操作:比如,从分布式传输网络中拉取多媒体数据流b,将本地播放的多媒体数据流由多媒体数据流a替换为多媒体数据流b。其中,切换指令在分布式传输网络中的传输过程可以参考下文中介绍的过程实现。
57.在该解决方案中,传输设备向播放端进行切换指令的传输,该传输往往不可靠,可能会有较大的延迟,不能实现实时切换,甚至可能会丢失,无法实现切换。
58.基于上述两种解放方案存在的问题,本发明实施例提供了另一种解放方案。在该解决方案中,多媒体数据流的切换指令在分布式传输网络中与多媒体数据流同步被传输,且切换操作由分布式传输网络中的传输设备来执行,播放端无需做任何处理。另外,在该解决方案中,合流服务器的功能被简化。
59.下面结合以下一些实施例对这种解决方案的实施过程进行详细说明。
60.图3为本发明实施例提供的一种流媒体播放系统的示意图,如图3中所示,该系统包括:分布式传输网络,该分布式传输网络中包括:信令服务器和多个传输设备。该多个传输设备中包括下文所说的第一传输设备、第二传输设备、第三传输设备。
61.在本实施例中,假设管控方向信令服务器触发了一条切换指令,该切换指令指示将第一多媒体数据流切换为第二多媒体数据流。假设第一多媒体数据流的源传输设备为第一传输设备,订阅第一多媒体数据流的某个播放端接入了第二传输设备,第三传输设备是第二多媒体数据流的源传输设备。
62.其中,实际应用中,管控方可以是管控多媒体数据流的服务平台,比如某直播平台。管控方可以调用信令服务器对应的api接口,通过该接口输入上述切换指令。
63.在分布式传输网络中,针对一路多媒体数据流的推送和拉取过程来说,分布式传输网络中包含的若干传输设备按照功能来划分可以划分为:生产者(producer)、消费者(consumer)、中继者。其中,一路多媒体数据流被推送到分布式传输网络中时,接收该多媒体数据流的传输设备便为生产者角色;当某终端用户的播放端想要拉取这路多媒体数据流来观看时,该播放端会接入分布式传输网络中的某个传输设备,该播放端接入的传输设备便为消费者角色;作为消费者角色的传输设备需要从作为生产者角色的传输设备中拉取上述这路多媒体数据流,此时,作为消费者角色的传输设备需要建立与作为生产者角色的传输设备之间的多跳(hop)回源路径,该多跳回源路径中包含多个作为中继者角色的传输设
备,以通过多个作为中继者角色的传输设备逐跳请求上述这路多媒体数据流。实际上,相比于中继者角色的传输设备来说,生产者角色的传输设备和消费者角色的传输设备都位于分布式传输网络的边缘,分别用于与对媒体数据流的推送端和播放端连接。实际应用中,推送端可能是主播的终端设备,也可能是上文中的合流服务器,等等。
64.本发明实施例中,源传输设备,即是指对应于生产者角色的传输设备。
65.基于此可知,在上述假设情形下,第一传输设备和第三传输设备分别对应于生产者角色,第二传输设备对应于消费者角色。
66.基于上述假设,如图3中所示,信令服务器在接收到切换指令后,将切换指令传输至第一传输设备。其中,信令服务器中存储有各路多媒体数据流分别对应的源传输设备的标识信息,基于此,信令服务器得知第一多媒体数据流对应的源传输设备为第一传输设备。
67.第一传输设备接收到信令服务器发送的切换指令后,将切换指令传输至第二传输设备。
68.具体地,由于某终端用户订阅了第一多媒体数据流,那么在该终端用户启动终端设备中的播放器(即播放端)后,可以触发针对该第一多媒体数据流的播放操作,基于此,播放端接入第二传输设备,并向第二传输设备触发针对第一多媒体数据流的拉流请求。第二传输设备在得知第一多媒体数据流位于第一传输设备中之后,建立与第一传输设备之间的多跳回源路径,并通过该多跳回源路径获取第一多媒体数据流和切换指令,这里假设切换指令已经发送到了第一传输设备中。
69.第二传输设备基于上述多跳回源路径中包含的各中继传输设备逐跳去请求第一多媒体数据流。当第一传输设备接收到该拉流请求时,通过该多跳回源路径逐跳将切换指令和第一多媒体数据流传输至第二传输设备。
70.需要说明的是,切换指令和第一多媒体数据流在多跳回源路径中的上一跳传输设备和下一跳传输设备之间的发送顺序为:先发送切换指令,再发送第一多媒体数据流。这样可以保证切换指令优先被传输到第二传输设备。
71.第二传输设备继而根据接收到的切换指令从第三传输设备获取第二多媒体数据流,发送第二多媒体数据流至播放端,并停止向播放端发送第一多媒体数据流。其中,第二传输设备从第三传输设备拉取第二多媒体数据流的过程与从第一传输设备拉取第一多媒体数据流的过程相似,不再赘述。
72.本实施例中,之所以保证切换指令优先于第一多媒体数据流到达第二传输设备,可以结合如下的实际情形来理解:假设播放端对应的终端用户此前订阅了第一多媒体数据流,在播放端被启动请求第一多媒体数据流之前,若管控方就向信令服务器触发了上述切换指令,那么该切换指令就会先在第一传输设备中缓存,若随后该播放端被启动以请求第一多媒体数据流,那么,按照上述切换指令的传输方式,切换指令会沿着第二传输设备建立的与第一多媒体数据流对应的多跳回源路径传递到第二传输设备,且会先于第一多媒体数据流达到。这样,第二传输设备基于收到的该切换指令便得知不需要向播放端发送之后达到的第一多媒体数据流,而是会拉取第二多媒体数据流,将第二多媒体数据流发送至播放端进行播放。这样,对于播放端,其并不会感知到“切换”的动作效果,即不会存在先播放了会第一多媒体数据流再切换为播放第二多媒体数据流的感官效果。
73.当然,可以理解的是,如果是在播放端已经在播放第一多媒体数据流的过程中,管
控方触发了上述切换指令,那么播放端是会存在多媒体数据流的画面切换效果的。
74.由此可见,在上述方案中,在用于传输多媒体数据流的分布式传输网络中,与多媒体数据流同步传输对应的切换指令,以由播放端接入的传输设备完成向播放端输出的多媒体数据流的切换操作,从而实现多媒体数据流的高效切换播放,且在切换过程中播放端是无感的,不需要做任何处理。
75.另外,信令服务器通过将切换指令发送到多媒体数据流对应的源传输设备,可以让播放端接入的传输设备在拉取相应多媒体数据流的过程中感知到切换指令的存在,完成相应切换动作。为实现上述过程,对于信令服务器来说,仅需要维护一路多媒体数据流对应的那个源传输设备在哪里即可,维护开销小。
76.上述对图3所示的系统组成和工作原理的介绍过程中,主要强调的是切换指令和多媒体数据流在分布式传输网络中的传输过程。实际上,分布式传输网络中还包括调度服务器,用于调度分布式传输网络中包含的传输设备,以服务于多媒体数据流的推流和拉流过程。
77.以上述第一多媒体数据流的推流和拉流过程为例来说,调度服务器的调度作用体现为:响应于与第一多媒体数据流对应的推流请求,确定与该推流请求中包含的推流用户位置匹配的第一传输设备,将第一多媒体数据流存入第一传输设备;以及,响应于播放端对第一多媒体数据流触发的拉流请求,确定与该拉流请求中包含的拉流用户位置匹配的第二传输设备,以供播放端接入第二传输设备。
78.具体来说,在第一多媒体数据流的推流过程中,推流端(可能是一个主播的终端设备、也可能是合流服务器,等等)向调度服务器发送对应的推流请求,该推流请求中包含推流端对应的推流用户位置,该位置可以是ip地址或其他定位手段得到的位置。调度服务器存储有各个传输设备的部署位置,可以基于距离就近原则,从中选定一个与推流用户位置匹配的传输设备,即为第一传输设备,通知推流端将第一多媒体数据流发送到第一传输设备,第一传输设备便接收并存储推流端发送的第一多媒体数据流。
79.类似地,在第一多媒体数据流的拉流过程中,拉流端即播放端会向调度服务器发送对应的拉流请求,该拉流请求中包含拉流用户位置,该位置可以是ip地址或其他定位手段得到的位置。调度服务器存储有各个传输设备的部署位置,可以基于距离就近原则,从中选定一个与拉流用户位置匹配的传输设备,即为第二传输设备,通知播放端接入第二传输设备,以通过第二传输设备拉取第一多媒体数据流。
80.另外,调度服务器中也可以存储有各路多媒体数据流对应的源传输设备的标识信息,这样,在上述第二传输设备需要拉取第一多媒体数据流的时候,可以查询调度服务器以得知第一多媒体数据流位于第一传输设备中,以建立与第一传输设备的多跳回源路径。
81.上述实施例中假设切换指令指示将第一多媒体数据流切换为第二多媒体数据流,实际应用中,第二多媒体数据流可以是与第一多媒体数据流不相关的一路多媒体数据流,也可以是对第一多媒体数据流和其他一路或几路多媒体数据流进行合并处理得到的。
82.比如,在直播连麦场景中,一个主播与另一个主播连麦,那么会对这两个主播的视频流进行合并处理得到一路视频流。再比如,在视频会议场景中,原本有5个人参会,之后又加入一人,那么会对原来5人的视频流和这一人的视频流进行合并处理。
83.为便于描述,下面假设第二多媒体数据流是对第一多媒体数据流和第三多媒体数
据流进行合并处理得到的,实际应用中,由合流服务器来完成该合并处理过程。因此,本发明实施例提供的流媒体播放系统中除了包含上文介绍的分布式传输网络外,还包括合流服务器,如图4所示。
84.合流服务器在对第一多媒体数据流和第三多媒体数据流进行合并处理以得到第二多媒体数据流的过程中,首先,需要分别拉取到第一多媒体数据流和第三多媒体数据流。与上文中的播放端的拉流过程相似地,合流服务器需要先接入分布式传输网络中的某个传输设备,进而通过该传输设备拉取到第一多媒体数据流和第三多媒体数据流。
85.在图4中,假设调度服务器基于合流服务器的部署位置确定出与其位置匹配的传输设备为第四传输设备,则合流服务器会接入第四传输设备。
86.合流服务器向第四传输设备发送与第一多媒体数据流对应的第一拉流请求以及与第三多媒体数据流对应的第二拉流请求。第四传输设备基于第一拉流请求和第二拉流请求分别拉取第一多媒体数据流和第三多媒体数据流。第四传输设备拉取第一多媒体数据流和第三多媒体数据流的过程不再赘述。
87.第四传输设备将拉取到的第一多媒体数据流和第三多媒体数据流发送至合流服务器,合流服务器便可以对第一多媒体数据流和第三多媒体数据流进行合并处理得到第二多媒体数据流。之后,合流服务器将合并得到的第二多媒体数据流推送到分布式传输网络中,具体如上文所述,假设推送到了第三传输设备。
88.需要说明的是,由于合流服务器也接入分布式传输网络,并存在通过分布式传输网络拉取第一多媒体数据流的需求,因此,合流服务器实际上也可以视为是一种订阅了第一多媒体数据流的特殊的播放端。那么后续管控发触发的指示将第一多媒体数据流切换为第二多媒体数据流的切换指令,也会被传输到合流服务器所接入的第四传输设备。第四传输设备与上文中的第二传输设备一样,在接收到该切换指令后,会执行该切换指令,即拉取第二多媒体数据流并发送至合流服务器进行播放,并停止向合流服务器输出第一多媒体数据流。这显然是不对的,因为第二多媒体数据流原本就是合流服务器生成的,而且,该切换指令的执行结果是将第一多媒体数据流切换成了第二多媒体数据流,会影响合流服务器后续的合并处理。
89.为此,在上述第一拉流请求中可以包括合流服务器的角色标识,比如在第一多媒体数据流对应的拉流url中携带合流服务器的角色标识,以告知第四传输设备此时接入的设备是合流服务器,而非普通的播放端。其中,上述角色标识可以是预设的一串字符串。
90.其中,之所以在第一拉流请求中携带该角色标识,而不用在第二拉流请求中携带该角色标识,是因为合流服务器执行对第一多媒体数据流和第三多媒体数据流的合并处理,是基于管控方触发的第一多媒体数据流需要切换为第二多媒体数据流的需求,而第三多媒体数据流并没有存在切换为第二多媒体数据流的需求,因此,仅在第一拉流请求中携带即可。由此可知,实际应用中,当管控方产生上述切流需求时,先控制合流服务器执行上述多媒体数据流的合并处理,之后再向信令服务器触发切换指令。
91.上述角色标识的作用是:第四传输设备在接收到上述切换指令时,基于接入的合流服务器在上述第一拉流请求中携带的该角色标识,得知接入的设备为合流服务器,从而不对合流服务器执行该切换指令,也就是说不会将第二多媒体数据流发送至合流服务器,且不会停止向合流服务器传输第一多媒体数据流。其中,由于合流服务器需要通过接入的
第四传输设备不断拉取第一多媒体数据流,那么在切换指令产生后,第四传输设备拉取第一多媒体数据流的过程中,便会获取到切换指令。
92.在采用图4所示的流媒体播放系统完成多媒体数据流的切流的情况下,假设一共有n路多媒体数据流,那么可以直接将这n路多媒体数据流推送到分布式传输网络中,不必经过合流服务器,降低对合流服务器的依赖。另外,假设其中有m路多媒体数据流会涉及到切流操作,那么,合流服务器仅需要获取与切流操作有关的这m路多媒体数据流并进行相关处理(如合流处理)后发送到分布式传输网络,降低了合流服务器的处理开销。
93.图5为本发明实施例提供的一种流媒体播放方法的流程图,该方法应用于上文中的分布式传输网络,分布式传输网络中包括信令服务器和多个传输设备,多个传输设备中包括第一传输设备、第二传输设备和第三传输设备,其中,第一传输设备是第一多媒体数据流的源传输设备,第二传输设备接入有订阅第一多媒体数据流的播放端,第三传输设备是第二多媒体数据流的源传输设备。基于此情形,本实施例提供的流媒体播放方法可以包括如下步骤:
94.501、第一传输设备接收信令服务器发送的切换指令,切换指令指示将第一多媒体数据流切换为第二多媒体数据流。
95.502、第一传输设备将切换指令传输至第二传输设备,以使第二传输设备根据切换指令从第三传输设备获取第二多媒体数据流,发送第二多媒体数据流至播放端,停止向播放端发送第一多媒体数据流。
96.其中,第一传输设备将切换指令传输至所述第二传输设备,具体包括:第一传输设备基于与第二传输设备之间的多跳回源路径,逐跳将切换指令和第一多媒体数据流传输至第二传输设备。其中,切换指令和第一多媒体数据流在多跳回源路径中的上一跳传输设备和下一跳传输设备之间的发送顺序为:先发送切换指令,再发送第一多媒体数据流。
97.本实施例中,第一传输设备的详细执行过程可以参考前述其他实施例中的相关说明,在此不赘述。
98.图6为本发明实施例提供的一种流媒体播放方法的流程图,该方法应用于上文中的分布式传输网络,分布式传输网络中包括信令服务器和多个传输设备,多个传输设备中包括第一传输设备、第二传输设备和第三传输设备,其中,第一传输设备是第一多媒体数据流的源传输设备,第二传输设备接入有订阅第一多媒体数据流的播放端,第三传输设备是第二多媒体数据流的源传输设备。基于此情形,本实施例提供的流媒体播放方法可以包括如下步骤:
99.601、第二传输设备获取第一传输设备发出的切换指令,切换指令指示将第一多媒体数据流切换为第二多媒体数据流,第一传输设备接收信令服务器发送的切换指令。
100.602、第二传输设备根据切换指令从第三传输设备获取第二多媒体数据流,发送第二多媒体数据流至播放端,停止向播放端发送第一多媒体数据流。
101.其中,第二传输设备获取第一传输设备发出的切换指令,具体包括:第二传输设备建立与第一传输设备之间的多跳回源路径,并通过该多跳回源路径获取第一多媒体数据流和切换指令。其中,切换指令和第一多媒体数据流在多跳回源路径中的上一跳传输设备和下一跳传输设备之间的发送顺序为:先发送切换指令,再发送第一多媒体数据流。
102.另外,在一可选实施例中,假设第二传输设备接入有合流服务器,此时,上述方法
还包括:
103.第二传输设备接收合流服务器发送的与第一多媒体数据流对应的第一拉流请求以及与第三多媒体数据流对应的第二拉流请求,第一拉流请求中包括合流服务器的角色标识;
104.第二传输设备根据第一拉流请求和第二拉流请求分别拉取第一多媒体数据流和第三多媒体数据流,将拉取到的第一多媒体数据流和第三多媒体数据流发送至合流服务器,以使合流服务器对第一多媒体数据流和第三多媒体数据流进行合并处理得到第二多媒体数据流,以将第二多媒体数据流推送至第三传输设备;
105.第二传输设备在获取到所述切换指令时,根据所述角色标识,不对合流服务器执行切换指令。
106.本实施例中,第二传输设备的详细执行过程可以参考前述其他实施例中的相关说明,在此不赘述。
107.以上本发明实施例提供的多媒体数据流的切流方案,可以适用于多种应用场景中,比如直播、视频会议、在线教育,等等。
108.在直播场景中,上述第一多媒体数据流可以是某个主播a的视频流,第二多媒体数据流可以是对两个或多个主播的视频流进行合并得到的视频流。其中,比如主播a与主播b触发了连麦互动行为从而触发相应视频流的合并。当管控方(比如直播平台)发出由第一多媒体数据流切换为第二多媒体数据流的切换指令后,通过上述切流方案的实施,会使得订阅了主播a的观众的播放端由原本播放的主播a的视频流切换至播放连麦视频流。
109.在视频会议场景中,上述第一多媒体数据流可以是对应于k1个参会人员的视频流,第二多媒体数据流可以是对应于k1 k2个参会人员的视频流,比如原本k1个参会人员在进行视频会议,之后又加入了k2个参会人员。当管控方(比如视频会议软件)发出由第一多媒体数据流切换为第二多媒体数据流的切换指令后,通过上述切流方案的实施,会使得k1 k2个参与人员的播放端切换至播放k1 k2个参会人员对应的视频流。
110.在在线教育场景中,上述第一多媒体数据流可以是对应于教师x与n1个同学的视频流,第二多媒体数据流可以是对应于教师x、教师y与n1个同学的视频流,比如教师x在教学过程中触发了与教师y的连麦。当管控方(比如直播平台)发出由第一多媒体数据流切换为第二多媒体数据流的切换指令后,通过上述切流方案的实施,会使得n1个同学的播放端切换至播放连麦后的视频流。
111.以下将详细描述本发明的一个或多个实施例的流媒体播放装置。本领域技术人员可以理解,这些装置均可使用市售的硬件组件通过本方案所教导的步骤进行配置来构成。
112.图7为本发明实施例提供的一种流媒体播放装置的结构示意图,该装置位于前述分布式传输网络中的第一传输设备,如图7所示,该装置包括:接收模块11、发送模块12。
113.接收模块11,用于接收信令服务器发送的切换指令,所述切换指令指示将第一多媒体数据流切换为第二多媒体数据流。
114.发送模块12,用于将所述切换指令传输至第二传输设备,以使所述第二传输设备根据所述切换指令从第三传输设备获取所述第二多媒体数据流,发送所述第二多媒体数据流至播放端,停止向所述播放端发送所述第一多媒体数据流,其中,所述第一传输设备是第一多媒体数据流的源传输设备,所述第二传输设备接入有订阅所述第一多媒体数据流的播
放端,所述第三传输设备是第二多媒体数据流的源传输设备。
115.可选地,发送模块12具体用于:所述第一传输设备基于与所述第二传输设备之间的多跳回源路径,逐跳将所述切换指令和所述第一多媒体数据流传输至所述第二传输设备;其中,所述切换指令和所述第一多媒体数据流在所述多跳回源路径中的上一跳传输设备和下一跳传输设备之间的发送顺序为:先发送所述切换指令,再发送所述第一多媒体数据流。
116.图7所示装置可以执行前述实施例中第一传输设备执行的步骤,详细的执行过程和技术效果参见前述实施例中的描述,在此不再赘述。
117.在一个可能的设计中,上述图7所示流媒体播放装置的结构可实现为第一传输设备,位于前述分布式传输网络中,如图8所示,该第一传输设备可以包括:第一处理器21、第一存储器22、第一通信接口23。其中,第一存储器22上存储有可执行代码,当所述可执行代码被第一处理器21执行时,使第一处理器21至少可以实现如前述实施例中第一传输设备执行的步骤。
118.图9为本发明实施例提供的一种流媒体播放装置的结构示意图,该装置位于前述分布式传输网络中的第二传输设备,如图9所示,该装置包括:获取模块31、切换模块32。
119.获取模块31,用于获取第一传输设备发出的切换指令,所述切换指令指示将第一多媒体数据流切换为第二多媒体数据流,所述第一传输设备接收信令服务器发送的所述切换指令,所述第一传输设备是第一多媒体数据流的源传输设备,所述第二传输设备接入有订阅所述第一多媒体数据流的播放端。
120.切换模块32,用于根据所述切换指令从第三传输设备获取所述第二多媒体数据流,发送所述第二多媒体数据流至播放端,停止向所述播放端发送所述第一多媒体数据流,所述第三传输设备是第二多媒体数据流的源传输设备。
121.可选地,获取模块31具体用于:所述第二传输设备建立与所述第一传输设备之间的多跳回源路径,并通过所述多跳回源路径获取所述第一多媒体数据流和所述切换指令;其中,所述切换指令和所述第一多媒体数据流在所述多跳回源路径中的上一跳传输设备和下一跳传输设备之间的发送顺序为:先发送所述切换指令,再发送所述第一多媒体数据流。
122.可选地,所述第二传输设备接入有合流服务器,获取模块31还可以用于:接收所述合流服务器发送的与所述第一多媒体数据流对应的第一拉流请求以及与第三多媒体数据流对应的第二拉流请求,所述第一拉流请求中包括所述合流服务器的角色标识;根据所述第一拉流请求和所述第二拉流请求分别拉取所述第一多媒体数据流和所述第三多媒体数据流,将拉取到的所述第一多媒体数据流和所述第三多媒体数据流发送至所述合流服务器,以使所述合流服务器对所述第一多媒体数据流和所述第三多媒体数据流进行合并处理得到所述第二多媒体数据流,以将所述第二多媒体数据流推送至所述第三传输设备;以及在获取到所述切换指令时,根据所述角色标识,不对所述合流服务器执行所述切换指令。
123.图9所示装置可以执行前述实施例中第二传输设备执行的步骤,详细的执行过程和技术效果参见前述实施例中的描述,在此不再赘述。
124.在一个可能的设计中,上述图9所示流媒体播放装置的结构可实现为第二传输设备,位于前述分布式传输网络中,如图10所示,该第二传输设备可以包括:第二处理器41、第二存储器42、第二通信接口43。其中,第二存储器42上存储有可执行代码,当所述可执行代
码被第二处理器41执行时,使第二处理器41至少可以实现如前述实施例中第二传输设备执行的步骤。
125.另外,本发明实施例提供了一种非暂时性机器可读存储介质,所述非暂时性机器可读存储介质上存储有可执行代码,当所述可执行代码被传输设备的处理器执行时,使所述处理器至少可以实现如前述实施例中提供的流媒体播放方法。
126.以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。
127.通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助加必需的通用硬件平台的方式来实现,当然也可以通过硬件和软件结合的方式来实现。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以计算机产品的形式体现出来,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、cd

rom、光学存储器等)上实施的计算机程序产品的形式。
128.最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献