混流方法、装置、电子设备及存储介质制造方法及图纸

技术编号:21146337 阅读:26 留言:0更新日期:2019-05-18 06:47
本申请公开了一种混流方法、装置、电子设备及存储介质,涉及音视频处理技术领域。其中,该方法包括:接收多路媒体流;分别将所述多路媒体流的采集时间映射到同一目标时间轴,获得对应不同媒体流的映射时间;根据所述多路媒体流映射到所述目标时间轴得到的映射时间,对所述多路媒体流进行混流。本方案中映射后的各路媒体流具有统一的时间标准,使混流的各路媒体流有效同步对齐。

【技术实现步骤摘要】
混流方法、装置、电子设备及存储介质
本申请涉及音视频处理
,更具体地,涉及一种混流方法、装置、电子设备及存储介质。
技术介绍
随着科学技术的发展,多人视频直播变得越来越普遍。但是,目前的多人视频直播的过程中,通常存在各连线端的音视频无法有效同步对齐的问题。
技术实现思路
鉴于上述问题,本申请提出了一种混流方法、装置、电子设备及存储介质,以改善上述问题。第一方面,本申请实施例提供了一种混流方法,应用于媒体流的混流端,所述方法包括:接收多路媒体流;分别将所述多路媒体流的采集时间映射到同一目标时间轴,获得对应不同媒体流的映射时间;根据所述多路媒体流映射到所述目标时间轴得到的映射时间,对所述多路媒体流进行混流。第二方面,本申请实施例提供了一种混流装置,所述装置包括:接收模块,用于接收多路媒体流;映射模块,用于分别将所述多路媒体流的采集时间映射到同一目标时间轴,获得对应不同媒体流的映射时间;混流模块,用于根据所述多路媒体流映射到所述目标时间轴得到的映射时间,对所述多路媒体流进行混流。第三方面,本申请实施例提供了一种电子设备,包括:一个或多个处理器;存储器;一个或多个程序。其中所述一个或多个程序被存储在所述存储器中并被配置为由所述一个或多个处理器执行,所述一个或多个程序配置用于执行上述的方法。第四方面,本申请实施例提供了一种计算机可读存储介质,所述计算机可读存储介质中存储有程序代码,所述程序代码可被处理器调用执行上述的方法。本申请实施例提供的混流方法、装置、电子设备及存储介质,将多路媒体流的采集时间映射到同一目标时间轴,再根据各路媒体流的采集时间映射到目标时间轴得到的映射时间进行各路媒体流的混流。本方案中各路媒体流的采集时间映射后具有统一的时间标准,使混流的各路媒体流有效同步对齐。附图说明为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。图1示出了本申请实施例提供的视频播放系统的示意图。图2示出了本申请一实施例提供的混流方法的流程图。图3示出了本申请另一实施例提供的混流方法的流程图。图4示出了本申请另一实施例提供的混流方法中一部分步骤的流程图。图5示出了本申请实施例中媒体流的数据包发送示意图;图6示出了本申请另一实施例提供的混流方法中另一部分步骤的流程图。图7示出了本申请另一实施例提供的混流方法中又一部分步骤的流程图。图8示出了本申请实施例提供的一种显示示意图;图9示出了本申请实施例提供的另一种显示示意图;图10示出了本申请实施例提供的混流装置的功能模块图。图11示出了本申请实施例提供的电子设备的结构框图。图12是本申请实施例的用于保存或者携带实现根据本申请实施例的混流方法的程序代码的存储单元。具体实施方式为了使本
的人员更好地理解本申请方案,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述。本申请实施例提供的混流方法、装置、电子设备及存储介质可以应用于视频播放系统,该视频播放系统包括服务器以及多个终端,不同终端与服务器网络连接。其中,服务器可以是服务器集群,终端可以是手机、电脑、平板或者其他可以从服务器获取实时视频并播放的智能设备。在该视频播放系统中,终端的数量并不限制,可以是两个或者两个以上。在本申请实施例中,该视频播放系统可以是直播系统,如图1所示,包括主播端以及观众端,用于网络直播。其中,主播端即主播对应的终端,观众端即观众对应的终端。当该视频播放系统为直播系统时,还可以包括内容分发网络(ContentDeliveryNetwork,CDN),用于向观众端推送媒体流。在本申请实施例中,该视频播放系统可以用于直播场景下的多人视频直播,如连麦互动直播。在用于多人视频直播时,混流可以在任意一个主播端进行,可以在服务器进行,也可以在观众端进行。作为一种实施方式,混流可以在一个主播端进行,该主播端从服务器拉取其他主播端发送到服务器的媒体流,将拉取到的媒体流与本地采集到的媒体数据混流,将混流获得的单流发送到CDN网络,以便观众端从CDN网络拉取播放。其中,混流获得的单流,为多路媒体流混流后得到一路媒体流。例如,以图1中第一主播端作为混流的主播端,第一主播端可以从服务器拉取第二主播端以及第三主播端的媒体流,将拉取到的两路媒体流与本地采集的媒体数据混流,将混流后的单流发送到CDN网络。观众端可以从CDN网络拉取该单流进行播放。另外,在该实施方式中,进行混流的主播端也可以将本地采集的媒体数据作为一路媒体流推送到服务器。作为一种实施方式,混流可以在服务器进行。各个主播端向服务器推送媒体流,服务器将接收到的多路媒体流混流后,将混流获得的单流推送到CDN网络,以便观众端从CDN网络拉取播放。例如,图1中第一主播端、第二主播端以及第三主播端向服务器推送媒体流,服务器对接收到的三路媒体流进行混流后发送到CDN网络。观众端可以从CDN网络拉取混流后的单流进行播放。作为一种实施方式,混流也可以在观众端进行。各个主播端向服务器推送媒体流,服务器将接收到的多路媒体流发送到CDN网络。每个观众端可以从CDN网络拉取该多路媒体流,将该多路媒体流进行混流后播放。在本申请实施例中,视频播放系统并不限定于上述的网络直播场景,还可以应用于其他任何需要进行媒体流混流的使用场景,本申请实施例不再一一列举。定义对媒体流进行混流的终端或者服务器为混流端。可以理解的,混流端在进行混流之前,对接收到的媒体流进行解码。若将混流后的单流发送出去,在发送前进行编码。具体解码过程及编码过程本申请实施例并不进行赘述。其中,在对媒体流混流时,如何将多个媒体流同步地混合在一起是混流的关键技术。混流要求多条媒体流之间的交互是连贯同步的,音视频是对齐的。然而由于媒体流之间的时间轴通常是不一致的,加上生成该媒体流的终端的编码延时、发送策略和传输抖动等因素的影响,给多路媒体流进行同步对齐带来很大的挑战。其中,物体的运动都是在时间和空间中进行的,通常用时间轴上一点表示时刻,用时间轴上一段距离表示时间。不同的时间轴表示不同的时间标准,不同时间标准下的时间轴不同。在同一时间标准下的某一时刻,如世界标准时间中的某一时刻,在不同的时间轴上时刻不同。例如,在进行混流时,若以各媒体流的采集时间作为媒体流之间对齐的依据,则由于生成并发送媒体流的终端时间轴可能不一致,如多人视频直播时,各个主播端的时间轴存在不同,各路媒体流中携带的采集时间彼此的时间轴可能不同,从而在混流时依据的时间并不准确。例如,对于两路媒体流,发送第一路媒体流的终端的时间轴比UTC(世界标准时间)快1分钟,发送第二路媒体流的时间轴比UTC慢1分钟,对于这两路媒体流中同时在UTC为2点15分采集的数据的数据包,则第一路媒体流中该数据包携带的采集时间为2点16分,第二路媒体流中该数据包携带的采集时间为2点14分。则在混流时,将第一路媒体流中2点14分的数据混合第二媒体流中2点14分的数据,实际为将第一路媒体流中UTC为2点15分的数据混合第二路媒体流中UTC为2点17分的数据。若以混流端接收到媒体流的时间作为本文档来自技高网
...

【技术保护点】
1.一种混流方法,其特征在于,应用于媒体流的混流端,所述方法包括:接收多路媒体流;分别将所述多路媒体流的采集时间映射到同一目标时间轴,获得对应不同媒体流的映射时间;根据所述多路媒体流映射到所述目标时间轴得到的映射时间,对所述多路媒体流进行混流。

【技术特征摘要】
1.一种混流方法,其特征在于,应用于媒体流的混流端,所述方法包括:接收多路媒体流;分别将所述多路媒体流的采集时间映射到同一目标时间轴,获得对应不同媒体流的映射时间;根据所述多路媒体流映射到所述目标时间轴得到的映射时间,对所述多路媒体流进行混流。2.根据权利要求1所述的方法,其特征在于,每路媒体流包括多个数据包,所述分别将所述多路媒体流的采集时间映射到同一目标时间轴,获得对应不同媒体流的映射时间,根据所述多路媒体流映射到所述目标时间轴得到的映射时间,对所述多路媒体流进行混流,包括:分别将各个数据包中媒体数据的采集时间映射到所述目标时间轴,获得每个数据包对应的映射时间,所述采集时间为在对应的终端时间轴上的时间,所述映射时间为每个数据包中媒体数据的采集时间映射到所述目标时间轴的时间;根据各个数据包的映射时间的先后顺序,对所述多路媒体流进行混流。3.根据权利要求2所述的方法,其特征在于,接收的多路媒体流由不同终端发送,所述分别将各个数据包中媒体数据的采集时间映射到同一目标时间轴,获得每个数据包对应的映射时间,包括:获取每个数据包中媒体数据的采集时间;对于每个数据包,获取所述目标时间轴与对应的终端时间轴之间的映射值;根据每个数据包对应的映射值,将每个数据包中媒体数据的采集时间映射到所述目标时间轴,获得每个数据包对应的映射时间。4.根据权利要求3所述的方法,其特征在于,所述对于每个数据包,获取所述目标时间轴与对应的终端时间轴之间的映射值,包括:对于每个数据包,获取包括该数据包的媒体流中,该数据包之前的多个数据包分别对应的时间差,获得多个时间差,其中,每个时间差为相应的数据包在混流端时间轴上的接收时间与在终端时间轴上的目标时间之间的差值;获取所述多个时间差中的最小值;将所述最小值作为所述映射值。5.根据权利要求4所述的方法,其特征在于,所述将所述最小值作为所述映射值之前,还...

【专利技术属性】
技术研发人员:陈宇辉
申请(专利权)人:广州华多网络科技有限公司
类型:发明
国别省市:广东,44

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1