流媒体数据传输的方法、电子设备、装置及存储介质制造方法及图纸

技术编号:19638785 阅读:38 留言:0更新日期:2018-12-01 19:00
本申请公开了流媒体数据传输的方法、电子设备、装置及存储介质,所述方法包括步骤:观众客户端与其他观众客户端建立P2P网络后,根据本端播放流媒体数据的分辨率参数和/或与P2P网络中的其他观众客户端之间的网络状态,确定从其他观众客户端及服务器获取的数据包,其中,所述数据包由流媒体数据拆分得到,并且所述数据包按照自定义的格式封装,自定义的格式中包括第一标识,第一标识用于描述每个数据包唯一性;所述观众客户端从所述其他观众客户端及服务器分别获取指定的数据包。旨在解决现有的P2P传输方式不适用于直播模式的实时流媒体数据传输的技术问题。

【技术实现步骤摘要】
流媒体数据传输的方法、电子设备、装置及存储介质
本申请涉及通信领域,尤其涉及数据传输

技术介绍
直播可快速准确的传递现场信息,强烈的临场感让越来越多的人通过网站或手机来观看直播。实时的流媒体数据通常以推流的方式由直播服务器主动推送给各个观众客户端。“推流”是将流媒体数据主动推送到网络中的观众客户端,以供观众客户端观看所述流媒体数据的过程。“推流”对网络要求比较高,如果网络不稳定,直播效果就会很差,观众观看直播时就会发生卡顿等现象。并且,对于一些热门的流媒体数据,观看的观众客户端数量可能达到上万,此时服务器的“推流”的压力非常大。Peer-to-peer(P2P)是一种分布式网络,P2P网络的参与者共享他们所拥有的一部分硬件资源(处理能力、存储能力、网络连接能力、打印机等),这些共享资源需要由网络提供服务和内容,能被其它对等节点(peer)直接访问而无需经过中间实体。在此网络中的参与者既是资源(服务和内容)提供者(服务器server),又是资源(服务和内容)获取者(客户端client)。基于上述P2P的特点,P2P网络中的对等节点获取资源的数据非常快。但是,传统的P2P技术是基于文件共享需求产生的,P2P模式常常被用在共享视频或音频资料的场景(例如视频点播等网站的视频资源下载)。各网络节点流媒体数据时,通常将资源以文件的形式存储在各网络节点上,并将文件拆分成若干个子文件传输给对端节点。由于传统的P2P技术通常是基于文件的方式传输数据,需要事先将文件制作好,而文件传输的方式使得P2P技术的适用场景存在局限定,并不适用于直播模式的实时视频流的传输。专利
技术实现思路
有鉴于此,本申请提供流媒体数据传输的方法、电子设备、装置及存储介质。根据本申请实施例的第一方面,提供一种流媒体数据传输方法,所述方法包括步骤:观众客户端与其他观众客户端建立P2P网络后,根据本端播放流媒体数据的分辨率参数和/或与P2P网络中的其他观众客户端之间的网络状态,确定从其他观众客户端及服务器获取的数据包,其中,所述数据包由流媒体数据拆分得到,并且所述数据包按照自定义的格式封装,自定义的格式中包括第一标识,第一标识用于描述每个数据包唯一性;所述观众客户端从所述其他观众客户端及服务器分别获取指定的数据包。在一些例子中,所述P2P网络中的各观众客户端属于同一直播间;或所述P2P网络中的各观众客户端属于同一直播间,且播放的流媒体数据的分辨率参数相同。在一些例子中,所述方法还包括:当所述观众客户端转换直播间或更新播放流媒体数据的分辨率参数时,所述观众客户端重新与其他观众客户端建立P2P网络。在一些例子中,所述其他观众客户端从所述服务器获取所述数据包;其中,所述数据包被分为若干组,所述分组根据各数据包的第一标识求余后的余数确定,所述第一标识为预定位数的编号。在一些例子中,所述观众客户端从所述其他观众客户端及服务器分别获取指定的数据包,包括:所述观众客户端从其他观众客户端获取第一类数据包,从服务器获取第二类数据包,所述第一类数据包与所述第二类数据包属于不同的分组。在一些例子中,所述数据包的大小为1KB。在一些例子中,所述观众客户端与其他观众客户端建立P2P网络,所述方法还包括步骤:所述观众客户端从所述服务器获取数据包;所述观众客户端待获取数据包达到的时间或数据包长度达到预设条件时,所述观众客户端与其他观众客户端建立P2P网络。本申请的第二方面,提供一种流媒体数据传输装置,包括:确定模块,用于与其他观众客户端建立P2P网络后,根据本端播放流媒体数据的分辨率参数和/或与P2P网络中的其他观众客户端之间的网络状态,确定从其他观众客户端及服务器获取的数据包,其中,所述数据包由流媒体数据拆分得到,并且所述数据包按照自定义的格式封装,自定义的格式中包括第一标识,第一标识用于描述每个数据包唯一性;获取模块,用于从所述其他观众客户端及服务器分别获取指定的数据包。本申请的第三方面,提供一种终端设备,所述终端设备包括:存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其中,所述处理器执行所述程序时实现如上述第一方面所述任一一项方法所述的操作。本申请的第三方面,提供一种计算机存储介质,所述程序被处理器执行时实现上述第一方面所述的任意一项所述方法的步骤。本申请将成功的P2P模式运用到流媒体数据传输领域。不同于传统的P2P模式,首先将流媒体数据切割成数据包而不是文件块,文件块的大小可能在上百KB,而相对于文件块来说,数据包的可拆分粒度更小,可以作为更小的传输单元在网络中传输,例如在考虑切割后的数据包的大小时,可以结合互联网链路层的传输特性来设计,使得数据包的大小与P2P网络中各连接通道的传输带宽匹配。由于拆分后的数据包可以在P2P网络的各个客户端之间传递,有效的缓解了服务器的压力。更重要的是,本申请根据P2P网络中对等节点(观众客户端)获取流媒体数据的分辨率参数和/或与P2P网络中的其他观众客户端之间的网络状态,以确定从所述P2P网络中的其他观众客户端及服务器获取的数据包,例如,当观众客户端要获取(观看)的流媒体数据的分辨率参数较高,可以更多的从服务器获取数据包,以缓解P2P网络中其他对等的节点的网络上行压力,使得数据传输的灵活性较大,且效率更高。附图说明图1是本申请实施例提出的一种直播系统的网络架构;图2是本申请实施例提出的一种流媒体数据传输方法的流程图;图3是本申请实施例提出的一种构建P2P网络的流程图;图4a-图4c为本申请实施例中三种不同的服务器架构下搭建的网络;图4d为本申请实施例提出的一种自定义的格式的示意图;图5为本申请一应用场景中的网络架构图;图6为本申请另一应用场景中的网络架构图;图7为图6应用场景下网络设备的信令交互图;图8为本申请实施例中的一流媒体数据传输装置的示意图;图9为本申请实施例示意性示出的一种终端设备的的逻辑框图。具体实施方式这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本申请相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本申请的一些方面相一致的装置和方法的例子。在本申请使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本申请。在本申请和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。还应当理解,本文中使用的术语“和/或”是指并包含一个或多个相关联的列出项目的任何或所有可能组合。应当理解,尽管在本申请可能采用术语第一、第二、第三等来描述各种信息,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。例如,在不脱离本申请范围的情况下,第一信息也可以被称为第二信息,类似地,第二信息也可以被称为第一信息。取决于语境,如在此所使用的词语“如果”可以被解释成为“在……时”或“当……时”或“响应于确定”。图1是本申请实施例提出的一种直播系统的网络架构,网络架构中包括主播客户端100、服务器120、观众客户端130,不同于传统的直播系统,观众客户端130借助服务器设备相互搭建成P2P网络。由于不同的应本文档来自技高网
...

【技术保护点】
1.一种流媒体数据传输方法,其特征在于,所述方法包括步骤:观众客户端与其他观众客户端建立P2P网络后,根据本端播放流媒体数据的分辨率参数和/或与P2P网络中的其他观众客户端之间的网络状态,确定从其他观众客户端及服务器获取的数据包,其中,所述数据包由流媒体数据拆分得到,并且所述数据包按照自定义的格式封装,自定义的格式中包括第一标识,第一标识用于描述每个数据包唯一性;所述观众客户端从所述其他观众客户端及服务器分别获取指定的数据包。

【技术特征摘要】
1.一种流媒体数据传输方法,其特征在于,所述方法包括步骤:观众客户端与其他观众客户端建立P2P网络后,根据本端播放流媒体数据的分辨率参数和/或与P2P网络中的其他观众客户端之间的网络状态,确定从其他观众客户端及服务器获取的数据包,其中,所述数据包由流媒体数据拆分得到,并且所述数据包按照自定义的格式封装,自定义的格式中包括第一标识,第一标识用于描述每个数据包唯一性;所述观众客户端从所述其他观众客户端及服务器分别获取指定的数据包。2.根据权利要求1所述的方法,其特征在于,所述P2P网络中的各观众客户端属于同一直播间;或所述P2P网络中的各观众客户端属于同一直播间,且播放的流媒体数据的分辨率参数相同。3.根据权利要求2所述的方法,其特征在于,所述方法还包括:当所述观众客户端转换直播间或更新播放流媒体数据的分辨率参数时,所述观众客户端重新与其他观众客户端建立P2P网络。4.根据权利要求1所述的方法,其特征在于,所述其他观众客户端从所述服务器获取所述数据包;其中,所述数据包被分为若干组,所述分组根据各数据包的第一标识求余后的余数确定,所述第一标识为预定位数的编号。5.根据权利要求4所述的方法,其特征在于,所述观众客户端从所述其他观众客户端及服务器分别获取指定的数据包,包括:所述观众客户端从其他观众客户端获取第一类数...

【专利技术属性】
技术研发人员:邓建勋赵爽胡文送陈冰肖志宏
申请(专利权)人:广州虎牙信息科技有限公司
类型:发明
国别省市:广东,44

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

1