CN115802097A - 一种低延时直播流媒体方法和系统 - Google Patents

一种低延时直播流媒体方法和系统 Download PDF

Info

Publication number
CN115802097A
CN115802097A CN202310057130.8A CN202310057130A CN115802097A CN 115802097 A CN115802097 A CN 115802097A CN 202310057130 A CN202310057130 A CN 202310057130A CN 115802097 A CN115802097 A CN 115802097A
Authority
CN
China
Prior art keywords
terminal
media content
stream
media
segment
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.)
Granted
Application number
CN202310057130.8A
Other languages
English (en)
Other versions
CN115802097B (zh
Inventor
刘亚卓
谭谦
徐宁
周飞
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Zhongchuan Interactive Hubei Information Technology Co ltd
Original Assignee
Zhongchuan Interactive Hubei Information Technology Co ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Zhongchuan Interactive Hubei Information Technology Co ltd filed Critical Zhongchuan Interactive Hubei Information Technology Co ltd
Priority to CN202310057130.8A priority Critical patent/CN115802097B/zh
Publication of CN115802097A publication Critical patent/CN115802097A/zh
Application granted granted Critical
Publication of CN115802097B publication Critical patent/CN115802097B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Data Exchanges In Wide-Area Networks (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

本发明涉及互联网数据传输技术领域,提供了一种低延时直播流媒体方法和系统,其中所述方法包括:通过对应网络,将媒体内容中的第一流片段传输给第一终端,将媒体内容中的第二流片段传输给第二终端;所述第一终端和第二终端之间还建立局域网络关系,通过所述局域网络关系在所述第一终端和所述第二终端之间进行流片段的互传,第一终端和第二终端根据第一流片段和第二流片段组合得到媒体内容,从而在第一终端和第二终端进行媒体内容的播放。本发明使用不同终端接收同一媒体内容中不同的流片段,并进行流片段的交互互传,确保多终端媒体内容正常播放,减少网络中所需传输的数据量,从而降低直播对网络带宽的需求,确保多终端媒体内容播放的实时性。

Description

一种低延时直播流媒体方法和系统
技术领域
本发明涉及互联网数据传输技术领域,特别是涉及一种低延时直播流媒体方法和系统。
背景技术
随着移动终端业务的快速发展,以及高速移动网络的铺设,越来越多的用户通过移动终端来收看音视频的直播。
直播是一种实时性、互动性显著的以互联网传播内容的形式。直播场景下由于播放的是实时流,当前最常用的方法是通过传输流媒体实现,流媒体是指视频、音频数据以顺序流的方式在网络上从源节点向目标节点传输,以达到边下载边播放的目的。如在移动终端接收音视频直播数据方面,目前在web端的普遍做法为采用RTMP(RealTime MessagingProtocol,实时消息传输协议)协议、RTSP(RealTime Streaming Protocol,实时流传输协议)协议或HLS(HTTPLive Streaming,基于HTTP的自适应码率流媒体传输协议)协议作为音视频传输协议与流媒体服务器完成数据传输,利用移动终端的浏览器audio/video标签进行视频播放。
由于媒体内容的传输直接依赖于网络状况,当网络状况较恶劣时,极可能影响到媒体内容的正常传输,导致视频的实时性受到影响,最终导致视频卡顿或无法正常进行。
鉴于此,克服该现有技术所存在的缺陷是本技术领域亟待解决的问题。
发明内容
在本发明要解决的技术问题是在网络状况差时,网络状况会影响到媒体内容的正常传输,导致直播的实时性受到影响。
本发明采用如下技术方案:
第一方面,本发明提供了一种低延时直播流媒体方法,第一终端和第二终端处于空间相邻位置,两者之间允许建立局域网络关系;两者各自分别通过自身的射频模块与运营商侧建立有无线信号传输网络;当第一终端和第二终端的目标是浏览同一媒体内容时,且第一终端与运营商侧建立的无线信号传输网络,以及第二终端与运营商侧建立的无线信号传输网络,均无法单独满足所述媒体内容的传输速率需求时,方法包括:
第一终端或第二终端通过媒体应用搜索可建立局域网络关系的对方,在对应的媒体应用界面点击确认后,此时,第一终端和第二终端建立了两者之间的局域网络关系,并同时各自还拥有与运营商侧建立的无线信号传输网络;
第一终端和/或第二终端向媒体服务器发送媒体内容播放请求时,所述播放请求中携带捆绑标识、请求端ID、捆绑关系端ID和媒体内容相关信息;媒体服务器在收到互为捆绑关系的另一终端的媒体内容播放请求后,确定两者的捆绑关系,并通过各自的无线信号传输网络,将所述媒体内容中的第一流片段组传输给第一终端,将所述媒体内容中的第二流片段组传输给第二终端;其中,所述媒体内容由第一流片段组和第二流片段组共同组成;
所述第一终端和第二终端通过所述局域网络关系在所述第一终端和所述第二终端之间进行所述第一流片段和第二流片段的互传,以将第一终端从网络接收到的第一流片段传输给第二终端,和/或将第二终端从网络接收到的第二流片段传输给第一终端;以便于所述第一终端和/或所述第二终端根据所述第一流片段和第二流片段组合得到所述媒体内容,从而在第一终端和/或第二终端进行所述媒体内容的播放。
优选的,所述将所述媒体内容中的第一流片段组传输给第一终端,将所述媒体内容中的第二流片段组传输给第二终端,具体包括:
按照媒体内容的播放时间顺序,获取构成媒体内容的各流片段的编号;按照预设的分配规则,根据所述流片段的编号,将流片段分成两组分别发给第一终端和第二终端;
其中,所述预设的分配规则包括:
将编号为奇数的流片段分为一组,作为第一流片段组传输给第一终端;将编号为偶数的流片段分为一组,作为第二流片段组传输给第二终端;或者,
媒体服务器根据最近时段检测到的播放延时,分别确认与所述第一终端和第二终端的等效网络带宽,并根据两者的等效网络带宽比关系,将所述流片段的编号分成两组,得到与等效网络带宽比大小所对应的所述第一流片段组和第二流片段组。
优选的,所述以便于所述第一终端和/或所述第二终端根据所述第一流片段和第二流片段组合得到所述媒体内容,具体包括:
若当前处于播放状态的是第一终端,则第一终端通过与第二终端之间建立的局域网络关系,从第二终端侧获取到第二流片段,按照各流片段的编号,确定流片段的播放时间顺序;根据所述播放时间顺序,将从媒体服务器获取的第一流片段和从第二终端获取的第二流片段穿插组合得到可供播放的所述媒体内容;
若当前处于播放状态的是第二终端,则第二终端通过与第一终端之间建立的局域网络关系,从第一终端侧获取到第一流片段,按照各流片段的编号,确定流片段的播放时间顺序;根据所述播放时间顺序,将从第二终端获取的第一流片段和从媒体服务器获取的第二流片段穿插组合得到可供播放的所述媒体内容;
若当前处于播放状态的是第一终端和第二终端,则第一终端通过与第二终端之间建立的局域网络关系,从第二终端侧获取到第二流片段,按照各流片段的编号,确定流片段的播放时间顺序;根据所述播放时间顺序,将从媒体服务器获取的第一流片段和从第二终端获取的第二流片段穿插组合得到可供播放的所述媒体内容;第二终端通过与第一终端之间建立的局域网络关系,从第一终端侧获取到第一流片段,按照各流片段的编号,确定流片段的播放时间顺序;根据所述播放时间顺序,将从第二终端获取的第一流片段和从媒体服务器获取的第二流片段穿插组合得到可供播放的所述媒体内容。
优选的,所述第一终端与运营商侧建立的无线信号传输网络,能否满足所述媒体内容的传输速率需求是由媒体服务器根据所述媒体内容播放请求分析得到的,具体包括:
根据第一终端发送媒体内容播放请求的起始时刻和媒体内容的播放进度,预测各流片段的预设请求时刻;
根据流片段的实际请求时刻与对应的预设请求时刻,计算得到流片段的请求时延;
根据所述第一终端最新请求的N个流片段,计算所述N个流片段的平均时延,若所述平均时延大于预设时延阈值,则认为所述所述第一终端与运营商侧建立的无线信号传输网络,无法满足所述媒体内容的传输速率;其中,所述N为预设数量,且N为正整数。
优选的,当第一终端与第二终端请求不同的媒体内容,分别为第一媒体内容和第二媒体内容后,并且,仍然维持着通过局域网络关系建立的捆绑关系,方法还包括;
媒体服务器根据与第一终端和第二终端之间建立的网络传输的第一等效网络带宽和第二等效带宽;
综合分析所述第一等效网络带宽和第一媒体内容所需网络带宽,以及第二等效网络带宽和第二媒体内容所需网络带宽,给予第一终端和第二终端在相应分析之后策略性的流片段发送。
优选的,所述给予第一终端和第二终端在相应分析之后策略性的流片段发送,具体包括:
若第一等效网络带宽大于等于第一媒体内容所需网络带宽,并且,第二等效网络带宽大于等于第二媒体内容所需网络带宽;则媒体服务器通过与第一终端建立的无线信号传输网络发送第一媒体内容所对应的流片段,以及通过与第二终端建立的无线信号传输网络发送第二媒体内容所对应的流片段;
若第一等效网络带宽超过第一媒体内容所需网络带宽程度大于等于第一预设阈值,并且,第二等效网络带宽小于第二媒体内容所需网络带宽程度小于等于第一预设阈值,则媒体服务器通过与第一终端建立的无线信号传输网络发送第一媒体内容所对应的流片段;另一方面,根据所述第一等效网络带宽超过第一媒体内容所需网络带宽程度,拆分所述第二媒体内容,借由所述第一终端盈余的网络带宽和第二终端的无线信号传输网络,以及第一终端与第二终端的捆绑关系,进行所述第二媒体内容所对应流片段的传输。
优选的,根据所述第一等效网络带宽超过第一媒体内容所需网络带宽程度,拆分所述第二媒体内容,借由所述第一终端盈余的网络带宽和第二终端的无线信号传输网络,以及第一终端与第二终端的捆绑关系,进行所述第二媒体内容所对应流片段的传输,具体包括:
根据所述第一等效网络带宽超过第一媒体内容所需网络带宽程度,评估所述第一终端的无线信号传输网络所能够提供给第二媒体内容的额外网络带宽;
根据所述第一终端的网络带宽和所述额外网络带宽,将所述第二媒体内容拆分得到第三流片段组和第四流片段组;其中,由所述额外网络带宽和所述第二媒体内容超出第二等效网络带宽的带宽大小中较小的一方决定第三流片段组和第四流片段组的拆分比例;
媒体服务器通过与第二终端建立的无线信号传输网络发送第三流片段,媒体服务器还通过与第一终端建立的无线信号传输网络发送第四流片段,所述第二终端通过与第一终端之间建立的局域网络关系,获取所述第四流片段,以便于所述第二终端根据所述第三流片段和所述第四流片段组合得到所述第二媒体内容。
优选的,所述给予第一终端和第二终端在相应分析之后策略性的流片段发送,还包括:
当第一终端和/或第二终端在媒体应用中调整对应所需媒体内容的分辨率时,第一终端和/或第二终端向媒体应用发送分辨率调整请求,媒体服务器根据所述分辨率调整请求调整对应媒体内容在后续传输中的流片段,并根据分辨率调整后对应媒体内容所需的网络带宽,重新制定流片段发送策略,并调整后续流片段的发送;其中,在初始进行流片段的发送时,以媒体应用中默认的分辨率作为媒体内容的分辨率,分析制定对应的流片段发送策略并进行流片段的发送。
优选的,所述媒体内容在网络中传输所使用的协议为RTMP协议或RTSP协议。
第二方面,本发明还提供了一种低延时直播流媒体系统,用于第一方面所述的低延时直播流媒体方法,系统包括媒体服务器和多个媒体应用;
所述媒体应用用于搜索可建立局域网络关系的对方,并在对应的媒体应用界面点击确认后,此时,为第一终端和第二终端建立两者之间的局域网络关系,并同时各自还拥有与运营商侧建立的无线信号传输网络;并在第一终端和/或第二终端向媒体服务器发送媒体内容播放请求时,在所述播放请求中携带捆绑标识、请求端ID、捆绑关系端ID和媒体内容相关信息;
所述媒体服务器用于在收到互为捆绑关系的另一终端的媒体内容播放请求后,确定两者的捆绑关系,并通过各自的无线信号传输网络,将所述媒体内容中的第一流片段组传输给第一终端,将所述媒体内容中的第二流片段组传输给第二终端;其中,所述媒体内容由第一流片段组和第二流片段组共同组成;
所述媒体应用还用于使所述第一终端和第二终端通过所述局域网络关系在所述第一终端和所述第二终端之间进行所述第一流片段和第二流片段的互传,以将第一终端从网络接收到的第一流片段传输给第二终端,和/或将第二终端从网络接收到的第二流片段传输给第一终端;以便于所述第一终端和/或所述第二终端根据所述第一流片段和第二流片段组合得到所述媒体内容,从而在第一终端和/或第二终端进行所述媒体内容的播放。
第三方面,本发明还提供了一种低延时直播流媒体装置,用于实现第一方面所述的低延时直播流媒体方法,所述装置包括:
至少一个处理器;以及,与所述至少一个处理器通信连接的存储器;其中,所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述处理器执行,用于执行第一方面所述的低延时直播流媒体方法。
第四方面,本发明还提供了一种非易失性计算机存储介质,所述计算机存储介质存储有计算机可执行指令,该计算机可执行指令被一个或多个处理器执行,用于完成第一方面所述的低延时直播流媒体方法。
本发明使用不同终端接收同一流媒体中不同的流片段,并在不同终端之间建立连接,进行流片段的交互互传,确保多终端媒体流正常播放,使当网络状况较差时,减少网络中所需传输的数据量,从而降低直播对网络带宽的需求,确保多终端媒体流播放的实时性。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对本发明实施例中所需要使用的附图作简单地介绍。显而易见地,下面所描述的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明实施例提供的一种低延时直播流媒体方法的流程示意图;
图2是本发明实施例提供的一种低延时直播流媒体方法中媒体内容播放请求的示意图;
图3是本发明实施例提供的一种低延时直播流媒体方法的示意图;
图4是本发明实施例提供的一种低延时直播流媒体方法中flv流媒体的数据格式示意图;
图5是本发明实施例提供的一种低延时直播流媒体方法的流程示意图;
图6是本发明实施例提供的一种低延时直播流媒体方法的示意图;
图7是本发明实施例提供的一种低延时直播流媒体方法的流程示意图;
图8是本发明实施例提供的一种低延时直播流媒体方法的示意图;
图9是本发明实施例提供的一种低延时直播流媒体方法应用于具体场景下的示意图;
图10是本发明实施例提供的一种低延时直播流媒体系统的架构示意图;
图11是本发明实施例提供的一种低延时直播流媒体装置的流程示意图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
此外,下面所描述的本发明各个实施方式中所涉及到的技术特征只要彼此之间未构成冲突就可以相互组合。
实施例1:
在现有技术中,由于媒体内容的传输直接依赖于网络状况,当网络状况较恶劣时,极可能影响到媒体内容的正常传输,导致直播的实时性受到影响,最终导致直播卡顿或无法正常进行。针对此问题,本发明实施例1提供了一种低延时直播流媒体方法,如图1所示,第一终端和第二终端处于空间相邻位置,两者之间允许建立局域网络关系;两者各自分别通过自身的射频模块与运营商侧建立有无线信号传输网络;当第一终端和第二终端的目标是浏览同一媒体内容时,且第一终端与运营商侧建立的无线信号传输网络,以及第二终端与运营商侧建立的无线信号传输网络,均无法单独满足所述媒体内容的传输速率需求时,方法包括:
在步骤201中,第一终端或第二终端通过媒体应用搜索可建立局域网络关系的对方,在对应的媒体应用界面点击确认后,此时,第一终端和第二终端建立了两者之间的局域网络关系,并同时各自还拥有与运营商侧建立的无线信号传输网络。
在实际的应用场景中,所述射频模块可以是无线网络模块。所述局域网络关系可以是通过蓝牙、有线、无线等多种方式建立得到。举例而言,当用户通过媒体应用操作,允许通过蓝牙与其他终端建立局域网络关系时,所述媒体应用调用蓝牙模块搜索附近的其他终端,并由用户进行点击确认与哪一终端建立局域网络关系。
由于网络带宽存在多用户带宽分配等问题,其实际分配到单个用户所能够使用的带宽受限,而在第一终端和第二终端之间的局域网络关系中,其传输带宽不考虑带宽分配问题,故相对网络带宽来说单个用户可使用的带宽更高,而在该实施例中,可视作第一终端和第二终端之间的传输带宽不受限,且在所述局域网络关系中的传输时延可忽略不计。
在此需要说明的是,所述第一终端、第二终端并非代指每一特定的终端,而是仅仅是为了让对应限定的对象能够从同类中脱离出来,并且是为了方便描述同类中不同的两个对象或者多个对象方便而加的限定,不应该将其解释出进一步限定意义。
在步骤202中,第一终端和/或第二终端向媒体服务器发送媒体内容播放请求时,所述播放请求中携带捆绑标识、请求端ID、捆绑关系端ID和媒体内容相关信息,如图2所示;媒体服务器在收到互为捆绑关系的另一终端的媒体内容播放请求后,确定两者的捆绑关系,并通过各自的无线信号传输网络,将所述媒体内容中的第一流片段组传输给第一终端,将所述媒体内容中的第二流片段组传输给第二终端;其中,所述媒体内容由第一流片段组和第二流片段组共同组成;所述第一流片段组中包含多个第一流片段,所述第二流片段组中包含多个第二流片段。
其中,所述捆绑关系可以是在建立局域网络关系时确立的,即每一终端中的媒体应用具有唯一的ID号,第一终端和第二终端通过局域网络关系进行ID号的互传,同时,第一终端和第二终端根据两终端的ID,向服务器请求得到唯一的捆绑标识,以便于在请求媒体内容时,生成对应的媒体内容播放请求,以第一终端中媒体应用的ID号为id_1,第二终端中媒体应用的ID号为id_2为例,则在所述第一终端发送给媒体服务器的媒体内容播放请求中的请求端ID为id_1,捆绑关系端ID为id_2,而在所述第二终端发送给媒体服务器的媒体内容播放请求中的请求端ID为id_2,捆绑关系端ID为id_1。所述媒体内容相关信息包括:所需获取的媒体内容名称或ID号,分辨率,请求的起始时刻等。
在实际应用场景中,所述媒体内容可以是流媒体,流媒体是指将一连串的媒体数据压缩后,经过网上分段发送数据,在网上即时传输影音以供观赏的一种技术,此技术使得数据包得以像流水一样发送。其中的每一段均可称作一个流片段。
所述媒体内容可以是flv、f4v、mp4和ts格式等格式中的一种或多种。所述媒体内容传输所使用的协议为RTMP协议或RTSP协议。一般来讲,flv格式和fv4格式的流媒体通常使用RTMP协议进行传输,mp4格式和ts格式的流媒体通常使用RTSP协议进行传输。
在步骤203中,所述第一终端和第二终端通过所述局域网络关系在所述第一终端和所述第二终端之间进行所述第一流片段和第二流片段的互传,以将第一终端从网络接收到的第一流片段传输给第二终端,和/或将第二终端从网络接收到的第二流片段传输给第一终端;以便于所述第一终端和/或所述第二终端根据所述第一流片段和第二流片段组合得到所述媒体内容,从而在第一终端和/或第二终端进行所述媒体内容的播放。
在此需要说明的是,所述第一流片段和第二流片段并非指代每一特定的流片段,而是分别指代传输给对应终端的流片段的统称,举例而言,若在媒体内容中包含8个流片段,其中第1至第4个流片段传输给第一终端,第5至第8个流片段传输给第二终端,则第1至第4个流片段中的每一个流片段均为一个第一流片段,第5至第8个流片段中的每一个流片段均为一个第二流片段。第一流片段组包含媒体内容中所有第一流片段,第二流片段组包含媒体内容中所有第二流片段。
由于媒体内容的实时播放和由多个流片段组成这两大特征,使得对于媒体内容来说,谈论其完整性是无意义的,如用户在第一时刻请求媒体内容,并开始实时播放,播放至第二时刻时,所对应接收到的所有流片段可合称作媒体内容,再继续播放至第三时刻时,所对应接收到的所有流片段也可合称作媒体内容,故所述组合得到所述媒体内容并非指代组合得到一份完整的媒体内容,而是指将第一流片段和第二流片段按照对应的排列规则进行排序,并按照所述排序,进行实时性的播放。
以第一终端为切入视角,如图3所示,第一终端在接收到来自媒体服务器的第一流片段所对应数据包时,自身在进行所述数据包的缓存解析的同时,将所述数据包通过所述局域网络关系发送给第二终端。同时,第一终端还接收来自于第二终端的第二流片段所对应数据包,根据流媒体协议对该数据包进行解析,从而根据解析得到的结果进行拼接组合得到媒体内容。
在现有技术中,当多终端请求相同的媒体内容时,在网络中需根据每个终端传输一份重复的媒体内容数据,当终端数量足够多时,这将导致网络中传输数据量成倍增加,导致网络带宽竞争严重,给媒体媒体服务器也带来了极大的负担。而在本实施例中,由于将同一份媒体内容通过网络传输不同的流片段给多个终端,并使多个终端之间进行流片段的交互互传,从而能够使请求同一媒体内容的多个终端仅对应在网络中传输一份媒体内容数据,从而能够极大降低服务器和网络的负担。
本实施例通过使用不同终端接收同一媒体内容中不同的流片段,并在不同终端之间建立局域网络关系,进行流片段的交互互传,确保多终端媒体内容正常播放,使当网络状况较差时,减少网络中所需传输的数据量,从而降低直播对网络带宽的需求,确保多终端媒体内容的播放的实时性。
在此需要说明的是,上述实施方式仅仅是本实施例的一种可选的实施方式,在实际使用中,多个终端请求同一媒体内容,即位于空间相邻位置的两个以上数量的终端请求同一媒体内容,并在多个终端之间进行媒体内容的交互互传同样是可行的,其对应的具体实施方式与上述实施方式基于同一构思,其同样应包含在本发明实施例的保护范围内。
下面将以举例的形式对本实施例所应用的几种场景进行说明,具体包括:
应用场景一:当用户位于偏僻区域,由于网络信号相对较差,单个智能终端无法支持对应媒体内容的传输直播实时性需求时,可使用两个智能终端,进行同一媒体内容的请求,并使用蓝牙进行流片段的交互互传,从而通过多终端的带宽传输单份媒体内容数据,达到减少媒体内容播放时延,提高直播实时性的效果。
应用场景二:当进行多终端且相对集中的大型直播时,如针对多个科室进行远程医疗讲座时,媒体服务器将讲座媒体内容的不同流片段传输给不同科室中的不同终端,不同科室的不同终端通过局域网进行流片段的交互互传。
本实施例还针对所述第一流片段和第二流片段的划分,提供了以下可选的实施方式,即所述将所述媒体内容中的第一流片段传输给第一终端,将所述媒体内容中的第二流片段传输给第二终端,具体包括:
按照媒体内容的播放时间顺序,获取构成媒体内容的各流片段的编号;按照预设的分配规则,根据所述流片段的编号,将流片段分成两组分别发给第一终端和第二终端。
其中,所述预设的分配规则包括:将编号为奇数的流片段分为一组,作为第一流片段组传输给第一终端;将编号为偶数的流片段分为一组,作为第二流片段组传输给第二终端;或者,媒体服务器根据最近时段检测到的播放延时,分别确认与所述第一终端和第二终端的等效网络带宽,并根据两者的等效网络带宽比关系,将所述流片段的编号分成两组,得到与等效网络带宽比大小所对应的所述第一流片段组和第二流片段组。
所述等效网络带宽为在综合考虑了丢包、网络时延、重传以及其他应用占用带宽等多方面因素之后,相应终端所能够用于对应媒体内容传输的网络带宽。作为一种可选的实施方式,每间隔一段时间,统计在请求媒体内容时所对应的播放时延,根据媒体内容所需的网络带宽,评估在具有所述播放延时情况下所对应实际进行媒体内容传输的带宽,即为所述等效网络带宽。所述等效网络带宽比即两终端的等效网络带宽的比值。
其中,流片段的播放时间顺序可通过流片段所对应数据包中的时间戳获取得到。以flv流媒体为例,如图4所示,每一个flv流媒体的流片段数据包由文件头(File Header,又称作Flv Header)和文件体(File Body,又称作Flv Body)组成,所述文件体又由多个Tag组成,每个Tag紧跟一个PreviousTagSize,用于记录前一个Tag的数据大小,每个Tag由TagHeader和Tag Data组成,在Tag Header中,存储有该Tag的时间戳Timestamp和扩展时间戳Timestamp Extended(扩展时间戳为时间戳的扩展位,当时间戳字节位数不够时,通过扩展时间戳进行扩展存储),根据所述Timestamp和Timestamp Extended确定流片段的播放时间顺序。
在实际使用中,第一终端和第二终端的播放状态可能有多种情形,对应在局域网络关系中需传输的流片段也可能不同,即所述以便于所述第一终端和/或所述第二终端根据所述第一流片段和第二流片段组合得到所述媒体内容,如图5所示,具体包括:
在步骤301中,若当前处于播放状态的是第一终端,则第一终端通过与第二终端之间建立的局域网络关系,从第二终端侧获取到第二流片段,按照各流片段的编号,确定流片段的播放时间顺序;根据所述播放时间顺序,将从媒体服务器获取的第一流片段和从第二终端获取的第二流片段穿插组合得到可供播放的所述媒体内容。
在步骤302中,若当前处于播放状态的是第二终端,则第二终端通过与第一终端之间建立的局域网络关系,从第一终端侧获取到第一流片段,按照各流片段的编号,确定流片段的播放时间顺序;根据所述播放时间顺序,将从第二终端获取的第一流片段和从媒体服务器获取的第二流片段穿插组合得到可供播放的所述媒体内容。
在步骤303中,若当前处于播放状态的是第一终端和第二终端,则第一终端通过与第二终端之间建立的局域网络关系,从第二终端侧获取到第二流片段,按照各流片段的编号,确定流片段的播放时间顺序;根据所述播放时间顺序,将从媒体服务器获取的第一流片段和从第二终端获取的第二流片段穿插组合得到可供播放的所述媒体内容;第二终端通过与第一终端之间建立的局域网络关系,从第一终端侧获取到第一流片段,按照各流片段的编号,确定流片段的播放时间顺序;根据所述播放时间顺序,将从第二终端获取的第一流片段和从媒体服务器获取的第二流片段穿插组合得到可供播放的所述媒体内容,如图6所示。
在上述实施方式中,所述第一终端与运营商侧建立的无线信号传输网络,能否满足所述媒体内容的传输速率需求是由媒体服务器根据所述媒体内容播放请求分析得到的,具体包括:
根据第一终端发送媒体内容播放请求的起始时刻和媒体内容的播放进度,预测各流片段的预设请求时刻。根据流片段的实际请求时刻与对应的预设请求时刻,计算得到流片段的请求时延。
根据所述第一终端最新请求的N个流片段,计算所述N个流片段的平均时延,若所述平均时延大于预设时延阈值,则认为所述所述第一终端与运营商侧建立的无线信号传输网络,无法满足所述媒体内容的传输速率;其中,所述N为预设数量,且N为正整数。该平均时延可作为最近时段检测到的媒体内容的播放延时使用,所述预设数量由本领域技术人员根据经验分析得到。所述预设时延阈值由本领域技术人员根据目标流媒体的传输实时性需求分析得到。
第一终端请求媒体内容的过程实际是按照媒体内容的播放进度请求各流片段的过程,由于媒体内容的实时传输特性,往往是当用户的播放进度到达相应进度时,预先请求后续播放所需使用的流片段,如当播放到第3个流片段时,请求第5个流片段和第6个流片段,当播放到第5个流片段时,请求第7个流片段和第8个流片段,所请求到的流片段缓存在本地,用于后续的播放。在该请求模式下,若服务器判断按照第一终端请求流媒体的进度和媒体内容的播放状态,当前应已播放至第5个流片段,此时应当请求第7个流片段,但暂未接收到对应第7个流片段的请求,而在一段时间后才接收到第7个流片段的请求,该一段时间即为第7个流片段的请求时延。其中,在第一终端对媒体内容进行播放和暂停时,均向媒体服务器发送对应的消息,以告知媒体服务器当前媒体内容的播放状态。同样的,判断所述第二终端与运营商侧建立的无线信号传输网络,能否满足所述媒体内容的传输速率需求同样基于上述同一构思进行实现,在此不加以赘述。
在理想情况下,第一终端所在网络状况良好且无带宽限制时,各流片段的实际请求时刻应当与预设请求时刻一致或两者之间的差值不超出预设时延阈值,而当网络发生延迟时,流媒体播放出现卡顿后,则会导致实际请求时刻的推迟,从而能够根据实际时刻与预设时刻比对得到第一终端的网络状况。举例而言,当第一终端在t1时刻打开相应直播,即开始请求目标流媒体时,以t1时刻开始,若每个流片段的播放时间为1s,则按照时间先后顺序,第一个流片段的预设请求时刻为t1,第二个流片段的预设请求时刻为t1+1s,第三个流片段的预设请求时刻为t1+2s,依次类推,得到每个流片段的预设请求时刻,若第一终端由于网络卡顿的缘故,导致第一个流片段的传输时间加长,则导致第一个流片段的播放时间延后,最终导致第二个流片段的实际请求时刻推迟,如推迟至t1+3s,从而能够通过实际请求时刻和预设请求时刻推测得到网络的状况。
上述各实施方式是针对不同终端请求同一流媒体而言的,在实际使用中,更多出现的情况是不同终端请求不同的流媒体,在此场景下,为了解决网络所造成的直播实时性问题,本实施例还提供了以下优选的实施方式,即当第一终端与第二终端请求不同的媒体内容,分别为第一媒体内容和第二媒体内容后,并且,仍然维持着通过局域网络关系建立的捆绑关系,方法还包括:
媒体服务器根据与第一终端和第二终端之间建立的网络传输的第一等效网络带宽和第二等效带宽。
综合分析所述第一等效网络带宽和第一媒体内容所需网络带宽,以及第二等效网络带宽和第二媒体内容所需网络带宽,给予第一终端和第二终端在相应分析之后策略性的流片段发送。
其中,所述给予第一终端和第二终端在相应分析之后策略性的流片段发送,如图7所示,具体包括:
在步骤401中,若第一等效网络带宽大于等于第一媒体内容所需网络带宽,并且,第二等效网络带宽大于等于第二媒体内容所需网络带宽;则媒体服务器通过与第一终端建立的无线信号传输网络发送第一媒体内容所对应的流片段,以及通过与第二终端建立的无线信号传输网络发送第二媒体内容所对应的流片段。
在步骤402中,若第一等效网络带宽超过第一媒体内容所需网络带宽程度大于等于第一预设阈值,并且,第二等效网络带宽小于第二媒体内容所需网络带宽程度小于等于第一预设阈值,则媒体服务器通过与第一终端建立的无线信号传输网络发送第一媒体内容所对应的流片段;另一方面,根据所述第一等效网络带宽超过第一媒体内容所需网络带宽程度,拆分所述第二媒体内容,借由所述第一终端盈余的网络带宽和第二终端的无线信号传输网络,以及第一终端与第二终端的捆绑关系,进行所述第二媒体内容所对应流片段的传输,如图8所示,在图8中,所述第二媒体内容被拆分为第三流片段组和第四流片段组,第三流片段组中包含多个第三流片段,并被媒体服务器传输给第一终端,第四流片段组中包含多个第四流片段,并被媒体服务器传输给第二终端,且所述第一终端还通过与第二终端之间的局域网络关系,向第二终端转发从媒体服务器接收到的第四流片段组,以便于第二终端组合得到第二媒体内容。
在步骤403中,若第二等效网络带宽超过第二媒体内容所需网络带宽程度大于等于第二预设阈值,并且,第一等效网络带宽小于等于第一媒体内容所需网络带宽程度小于等于第二预设阈值,则媒体服务器通过与第二终端建立的无线信号传输网络发送第二媒体内容所对应的流片段;另一方面,根据所述第二等效网络带宽超过第二媒体内容所需网络带宽程度,拆分所述第一媒体内容,借由所述第二终端盈余的网络带宽和第一终端的无线信号传输网络,以及第一终端与第二终端的捆绑关系,进行所述第一媒体内容所对应流片段的传输。
若第二等效网络带宽超出第二媒体内容所需网络带宽程度不大于第一预设阈值,或第二等效网络带宽小于第二媒体内容所需网络带宽程度大于第一预设阈值;又或,若第二等效网络带宽超过第二媒体内容所需网络带宽程度不大于等于第二预设阈值,或第一等效网络带宽大于第一媒体内容所需网络带宽程度小于等于第二预设阈值,则依旧由媒体服务器通过与第一终端建立的无线信号传输网络发送第一媒体内容所对应的流片段,以及通过与第二终端建立的无线信号传输网络发送第二媒体内容所对应的流片段。
其中,所述第一预设阈值是由本领域技术人员根据第一终端的无线信号传输网络分析得到的,当第二等效网络带宽超出第二媒体内容所需网络带宽程度不大于第一预设阈值,认为第一终端的无线信号网络不具备协助其他终端进行媒体内容传输的能力,若协助其他终端进行传输,可能导致第一终端自身的第一媒体内容的传输带宽不够,进而影响第一终端媒体内容传输的稳定性,甚至导致第一终端媒体内容播放卡顿,故在此情况下第一终端和第二终端独立进行各自媒体内容的传输。同样的,当第二等效网络带宽小于第二媒体内容所需网络带宽程度大于第一预设阈值时,认为第一终端协助传输第二媒体内容时可能影响自身第一媒体内容传输的稳定性,故而由第一终端和第二终端独立进行各自媒体内容的传输。同样的,所述第二预设阈值是由本领域技术人员根据第二终端的无线信号传输网络分析得到的。
在实际使用中,用户还可能调整所需媒体内容的分辨率,当所需媒体内容的分辨率发生调整时,其所需的网络带宽必然发生改变,从而影响到现有的传输过程,导致现有的流片段发送策略无法适应调整后的媒体内容的传输,为了解决此问题,本实施例还提出了以下优选的实施方式,即所述给予第一终端和第二终端在相应分析之后策略性的流片段发送,还包括:
当第一终端和/或第二终端在媒体应用中调整对应所需媒体内容的分辨率时,第一终端和/或第二终端向媒体应用发送分辨率调整请求,媒体服务器根据所述分辨率调整请求调整对应媒体内容在后续传输中的流片段,并根据分辨率调整后对应媒体内容所需的网络带宽,重新制定流片段发送策略,并调整后续流片段的发送;其中,在初始进行流片段的发送时,以媒体应用中默认的分辨率作为媒体内容的分辨率,分析制定对应的流片段发送策略并进行流片段的发送。
当第一终端与第二终端请求同一媒体内容,且第一终端与第二终端在媒体应用中调整所需媒体内容的分辨率不同时,如第一终端请求360P分辨率,而第二终端调整至480P分辨率时,在进行调整方终端的媒体应用中进行提醒,告知用户两终端的分辨率不同步,并由用户再度确认是否进行调整,以再度确认后的分辨率需求制定流片段发送策略,其中,当第一终端与第二终端请求同一媒体内容,且所需媒体内容的分辨率不同步时,由各终端独立与媒体服务器进行媒体内容的传输。
本实施例还针对上述步骤402,提供了一种可选的实施方式,具体包括:
根据所述第一等效网络带宽超过第一媒体内容所需网络带宽程度,评估所述第一终端的无线信号传输网络所能够提供给第二媒体内容的额外网络带宽。
根据所述第一终端的网络带宽和所述额外网络带宽,将所述第二媒体内容拆分得到第三流片段组和第四流片段组;其中,由所述额外网络带宽和所述第二媒体内容超出第二等效网络带宽的带宽大小中较小的一方决定第三流片段组和第四流片段组的拆分比例。
媒体服务器通过与第二终端建立的无线信号传输网络发送第三流片段,媒体服务器还通过与第一终端建立的无线信号传输网络发送第四流片段,所述第二终端通过与第一终端之间建立的局域网络关系,获取所述第四流片段,以便于所述第二终端根据所述第三流片段和所述第四流片段组合得到所述第二媒体内容。
所述额外网络带宽可理解为第二终端在满足自身流媒体播放需求的前提下,所能够提供给第四流片段传输所用的带宽。举例而言,若第一终端的网络带宽为W1,所述额外网络带宽为W2,则第三流片段和第四流片段的数量比例为W1:W2,根据该比例进行第三流片段和第四流片段的划分,再对应发送给相应终端。
在实际使用中,由于网络状况是实时变化的,当第二终端的网络状况变差时,第四流片段的传输可能影响到第二终端自身流媒体的正常传输,为了优先确保第二终端自身流媒体的正常传输,本实施例还提供了以下优选的实施方式,具体包括:
在进行对应流片段的传输过程中,还根据所述第二终端的网络状况,动态调整所述第三流片段组和所述第四流片段组的拆分比例,以在确保第二终端所需的第一媒体内容正常传输的条件下,对所述第二媒体内容进行传输。如每间隔预设时间,计算在预设时间内,第二终端在满足自身媒体流的传输后的平均剩余带宽,根据所述平均剩余带宽,调整在下一预设时间内,第二终端所能够接收的第四流片段的数量,根据该数量进行第三流片段和第四流片段的比例划分,从而动态优先确保第二终端自身流媒体正常播放。所述预设时间由本领域技术人员根据经验分析得到。
在本发明中类似“A和/或B”的表述,其实际含义是实现方式中可以是以A作为对象方式实现,也可以是B作为对象方式实现,还可以是A和B组合的对象方式实现,而其中的A和B也可以根据具体描述场景的需求被替换为具体的主体名称对象。
本发明实施方式中的终端可以多种形式存在,该终端包括但不限于:
(1)移动通信设备:这类设备的特点是具备移动通信功能,并且以提供话音、数据通信为主要目标。这类终端包括:智能手机(例如iPhone)、多媒体手机、功能性手机,以及低端手机等。
(2)超移动个人计算机设备:这类设备属于个人计算机的范畴,有计算和处理功能,一般也具备移动上网特性。这类终端包括:PDA、MID和UMPC设备等,例如iPad。
(3)便携式娱乐设备:这类设备可以显示和播放视频内容,一般也具备移动上网特性。该类设备包括:视频播放器,掌上游戏机,以及智能玩具和便携式车载导航设备。
(4)服务器:提供计算服务的设备,服务器的构成包括处理器、硬盘、内存、系统总线等,服务器和通用的计算机架构类似,但是由于需要提供高可靠的服务,因此在处理能力、稳定性、可靠性、安全性、可扩展性、可管理性等方面要求较高。
(5)其他具有视频播放功能或连接互联网功能的电子设备。
实施例2:
本发明基于实施例1所描述的方法基础上,结合具体的应用场景,并借由相关场景下的技术表述来阐述本发明特性场景下的实现过程。
本发明以存在3个终端,分别是终端1、终端2和终端3为例,其中,各终端均与运营商侧建立有无线传输网络。且这3个终端均位于一定范围内(即所述空间相邻位置),在每个终端通过媒体应用进行搜索时,均能够搜索到另外两个终端。并由用户在媒体应用进行确认,使在终端1与终端2之间、终端2与终端3之间,以及终端1与终端3之间分别两两通过蓝牙连接,从而分别建立对应的局域网络关系,并向媒体服务器为每一段局域网络关系请求对应的捆绑标识,如终端1与终端2之间的捆绑标识为bind_id_1,终端2与终端3之间的捆绑标识为bind_id_2,终端1与终端3之间的捆绑标识为bind_id_3。
若终端1和终端2均请求流媒体1,终端3请求流媒体2,流媒体1和流媒体2均可理解为实施例1中的媒体内容。则终端1在请求流媒体1时,向媒体服务器发送媒体内容播放请求,在该请求中,携带捆绑标识、请求端ID、捆绑关系端ID和媒体内容相关信息,由于终端1与终端2之间,终端1与终端3之间均具有捆绑关系,则可在媒体内容播放请求中,既携带bind_id_1,也携带bind_id_3,并对应携带各捆绑关系中的请求端ID和捆绑关系端ID,由媒体服务器判断各捆绑关系中的对应终端所请求的媒体内容是否相同。终端2和终端3的媒体内容播放请求与终端1基于同一构思实现,在此不再赘述。
当由媒体服务器判断得到:终端1所在的无线信号传输网络和终端2所在的无线信号传输网络均无法单独满足流媒体1的传输速率需求,且终端3所在的无线信号传输网络无法单独满足流媒体2的传输速率需求时,媒体服务器使用终端1的无线传输网络、终端2的无线传输网络,以及终端1与终端2之间的捆绑关系,进行流媒体1的传输,并在此基础上,根据终端1和终端2的等效网络带宽,判断是否能够协助终端3进行流媒体2的传输。
举例而言,若根据直播的实时性需求,流媒体1在相应终端实时播放时,需每秒至少传输200kB至对应终端(在后续实施例中也被称作流媒体的需求传输带宽),流媒体2在相应终端实时播放时,需每秒至少传输100kB至对应终端,而由于网络状况的限制,导致终端1的网络传输速度(即实施例1中的等效网络带宽)为70kB/s,终端2的网络传输速度为170kB/s,终端3的网络传输速度为70kB/s,这三个终端单独使用时,均无法满足相应流媒体的实时播放需求,但将各终端按照实施例1所述方法进行流媒体的传输时,如图9所示,具体的:
由于终端2的网络传输速度最高,故选用终端2既传输流媒体1,又传输流媒体2,如将流媒体1按照7:13的数量比例划分为流片段a与流片段b,将流媒体2按照7:3的数量比例划分为流片段c与流片段d,使用网络,向终端1传输流片段a,向终端2传输流片段b和流片段d,向终端3传输流片段c,通过终端1和终端2之间的连接,互传流片段a和流片段b,从而使终端1和终端2均能够获得流片段a和流片段b,进而组成流媒体1,终端2通过与终端3之间的连接,向终端3传输流片段d,使终端3能够获得流片段d和流片段c,进而组成流媒体2,从而确保流媒体1和流媒体2在相应终端的实时播放。在该场景下,在流媒体1的传输中,终端1和终端2分别作为第一终端和第二终端,而在流媒体2的传输中,终端2和终端3分别作为第一终端和第二终端。
其中,当多个终端两两连接时,流媒体1中流片段的比例划分按照以下实施方式进行实现,具体包括:
针对请求同一流媒体的多个终端,当所请求流媒体的需求传输带宽大于各终端的可用网络带宽(即实施例1中的等效网络带宽)时,计算所有终端的可用网络带宽总和,若所述网络带宽总和大于所请求流媒体的需求传输带宽,则按照各终端的可用网络带宽由小到大的顺序,使用每个终端的全部可用网络带宽参与流片段的比例划分,直至到达最后一个终端时,使用流媒体的剩余需求传输带宽参与流片段的比例划分。最后一个终端在满足该流媒体的传输需求后所剩余的额外网络带宽用于协助请求不同流媒体的终端。
若所述网络带宽总和小于所请求流媒体的需求传输带宽,则由其他终端协助该流媒体的传输。如上述的终端1与终端2的可用网络带宽总和为70+170=240kB/s,能够满足流媒体1的200kB/s的需求传输带宽,则按照可用网络带宽由小到大的顺序,终端1的70kB/s带宽完全参与流媒体1的传输,最后一个终端,即终端2用于传输流媒体1的剩余需求传输带宽,即占用200-70=130kB/s,则按照各终端的占用带宽比例划分得到流片段a与流片段b的数量比例为70:130=7:13。
终端2在满足流媒体1的传输需求后还剩余带宽170-130=40kB/s,该部分带宽用于协助请求其他流媒体的终端,即上述终端3。若终端2的可用网络带宽为120kB/s,终端1与终端2的可用网络带宽总和为70+120=190kB/s,无法满足流媒体1的传输需求时,若还存在一个终端4在请求对应流媒体3后还存在至少大于10kB/s的剩余带宽,则按照10:120:10的比例,将流媒体1划分为流片段a、流片段b和流片段c,并分别传输至终端1、终端2和终端4,终端4将流片段c通过连接传输给终端1和终端2,从而满足流媒体1的实时播放需求。
实施例3:
在实施例1的基础上,本实施例还提供了一种低延时直播流媒体系统,为的是对实施例1中相应方法的系统实现角度侧做相关阐述,并进一步就其方法做相关的深入分析。需要说明的是,实施例1中的方法在本实施例3中均适用,在本实施例中将不再对其进行赘述。
如图10所示,所述系统包括媒体服务器和多个媒体应用,基于所在终端的不同,所述多个媒体应用被划分为第一媒体应用和第二媒体应用,所述第一媒体应用安装于第一终端,所述第二媒体应用安装于第二终端。
所述媒体应用用于搜索可建立局域网络关系的对方,并在对应的媒体应用界面点击确认后,此时,为第一终端和第二终端建立两者之间的局域网络关系,并同时各自还拥有与运营商侧建立的无线信号传输网络;并在第一终端和/或第二终端向媒体服务器发送媒体内容播放请求时,在所述播放请求中携带捆绑标识、请求端ID、捆绑关系端ID和媒体内容相关信息。
所述媒体服务器用于在收到互为捆绑关系的另一终端的媒体内容播放请求后,确定两者的捆绑关系,并通过各自的无线信号传输网络,将所述媒体内容中的第一流片段组传输给第一终端,将所述媒体内容中的第二流片段组传输给第二终端;其中,所述媒体内容由第一流片段组和第二流片段组共同组成。
所述媒体应用还用于使所述第一终端和第二终端通过所述局域网络关系在所述第一终端和所述第二终端之间进行所述第一流片段和第二流片段的互传,以将第一终端从网络接收到的第一流片段传输给第二终端,和/或将第二终端从网络接收到的第二流片段传输给第一终端;以便于所述第一终端和/或所述第二终端根据所述第一流片段和第二流片段组合得到所述媒体内容,从而在第一终端和/或第二终端进行所述媒体内容的播放。
下面将结合具体的实现场景,对所述系统进行阐述,以大型网络会议讲座场景为例,在每个需直播讲座的终端安装媒体应用,所述讲座通过网络上传到媒体服务器,媒体应用与媒体服务器之间通过网络进行数据传输,在每个终端的媒体应用存在共享开关,所述共享开关由用户自定义设置,当用户设置为关闭时,用户所在终端仅传输自身的流媒体,不与其他终端一同协助进行流媒体的传输。
当所述共享开关打开时,用户所在终端搜索位于空间相邻位置的可建立局域网络关系的对方终端,并经用户在媒体应用界面进行确认后,与附近同样打开共享开关的对方终端通过蓝牙进行连接,从而建立局域网络关系,形成捆绑关系,用户所在终端能够协助对方终端或由对方终端协助自身进行流媒体的传输。在此情况下,当媒体服务器根据各终端所发送的媒体内容播放请求识别到存在两个具有捆绑关系的终端所请求的流媒体为同一流媒体(如上述的同一网络会议讲座时),且两个终端之间具有捆绑关系时,执行实施例1中所述的低延时直播流媒体方法。
当第一终端与第二终端请求不同的媒体内容,分别为第一媒体内容和第二媒体内容后,并且,仍然维持着通过局域网络关系建立的捆绑关系时,还存在一种优选的实施方式,具体包括:媒体服务器根据与第一终端和第二终端之间建立的网络传输的第一等效网络带宽和第二等效带宽。综合分析所述第一等效网络带宽和第一媒体内容所需网络带宽,以及第二等效网络带宽和第二媒体内容所需网络带宽,给予第一终端和第二终端在相应分析之后策略性的流片段发送。
在此需要说明的是,所述第一媒体应用、第二媒体应用等限定性描述,并非是指代特定顺序含义,仅仅是为了让对应限定的对象能够从同类中脱离出来,并且是为了方便描述同类中不同的两个对象或者多个对象方便而加的限定,不应该将其解释出进一步限定意义。
实施例4:
如图11所示,是本发明实施例的低延时直播流媒体装置的架构示意图。本实施例的低延时直播流媒体装置包括一个或多个处理器21以及存储器22。其中,图11中以一个处理器21为例。
处理器21和存储器22可以通过总线或者其他方式连接,图11中以通过总线连接为例。存储器22作为一种非易失性计算机可读存储介质,可用于存储非易失性软件程序和非易失性计算机可执行程序,如实施例1中的低延时直播流媒体方法。处理器21通过运行存储在存储器22中的非易失性软件程序和指令,从而执行低延时直播流媒体方法。
存储器22可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他非易失性固态存储器件。在一些实施例中,存储器22可选包括相对于处理器21远程设置的存储器,这些远程存储器可以通过网络连接至处理器21。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。所述程序指令/模块存储在所述存储器22中,当被所述一个或者多个处理器21执行时,执行上述实施例1中的低延时直播流媒体方法。
本发明实施例还提供了一种非易失性计算机存储介质,所述计算机存储介质存储有计算机可执行指令,该计算机可执行指令被一个或多个处理器执行,例如图11中的一个处理器21,可使得上述一个或多个处理器可执行实施例1中的低延时直播流媒体方法。值得说明的是,上述装置和系统内的模块、单元之间的信息交互、执行过程等内容,由于与本发明的处理方法实施例基于同一构思,具体内容可参见本发明方法实施例中的叙述,此处不再赘述。
本领域普通技术人员可以理解实施例的各种方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,该程序可以存储于一计算机可读存储介质中,存储介质可以包括:只读存储器(ROM,ReadOnly Memory)、随机存取存储器(RAM,RandomAccessMemory)、磁盘或光盘等。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。

Claims (10)

1.一种低延时直播流媒体方法,其特征在于,第一终端和第二终端处于空间相邻位置,两者之间允许建立局域网络关系;两者各自分别通过自身的射频模块与运营商侧建立有无线信号传输网络;当第一终端和第二终端的目标是浏览同一媒体内容时,且第一终端与运营商侧建立的无线信号传输网络,以及第二终端与运营商侧建立的无线信号传输网络,均无法单独满足所述媒体内容的传输速率需求时,方法包括:
第一终端或第二终端通过媒体应用搜索可建立局域网络关系的对方,在对应的媒体应用界面点击确认后,此时,第一终端和第二终端建立了两者之间的局域网络关系,并同时各自还拥有与运营商侧建立的无线信号传输网络;
第一终端和/或第二终端向媒体服务器发送媒体内容播放请求时,所述播放请求中携带捆绑标识、请求端ID、捆绑关系端ID和媒体内容相关信息;媒体服务器在收到互为捆绑关系的另一终端的媒体内容播放请求后,确定两者的捆绑关系,并通过各自的无线信号传输网络,将所述媒体内容中的第一流片段组传输给第一终端,将所述媒体内容中的第二流片段组传输给第二终端;其中,所述媒体内容由第一流片段组和第二流片段组共同组成;
所述第一终端和第二终端通过所述局域网络关系在所述第一终端和所述第二终端之间进行所述第一流片段和第二流片段的互传,以将第一终端从网络接收到的第一流片段传输给第二终端,和/或将第二终端从网络接收到的第二流片段传输给第一终端;以便于所述第一终端和/或所述第二终端根据所述第一流片段和第二流片段组合得到所述媒体内容,从而在第一终端和/或第二终端进行所述媒体内容的播放。
2.根据权利要求1所述的低延时直播流媒体方法,其特征在于,所述将所述媒体内容中的第一流片段组传输给第一终端,将所述媒体内容中的第二流片段组传输给第二终端,具体包括:
按照媒体内容的播放时间顺序,获取构成媒体内容的各流片段的编号;按照预设的分配规则,根据所述流片段的编号,将流片段分成两组分别发给第一终端和第二终端;
其中,所述预设的分配规则包括:
将编号为奇数的流片段分为一组,作为第一流片段组传输给第一终端;将编号为偶数的流片段分为一组,作为第二流片段组传输给第二终端;或者,
媒体服务器根据最近时段检测到的播放延时,分别确认与所述第一终端和第二终端的等效网络带宽,并根据两者的等效网络带宽比关系,将所述流片段的编号分成两组,得到与等效网络带宽比大小所对应的所述第一流片段组和第二流片段组。
3.根据权利要求2所述的低延时直播流媒体方法,其特征在于,所述以便于所述第一终端和/或所述第二终端根据所述第一流片段和第二流片段组合得到所述媒体内容,具体包括:
若当前处于播放状态的是第一终端,则第一终端通过与第二终端之间建立的局域网络关系,从第二终端侧获取到第二流片段,按照各流片段的编号,确定流片段的播放时间顺序;根据所述播放时间顺序,将从媒体服务器获取的第一流片段和从第二终端获取的第二流片段穿插组合得到可供播放的所述媒体内容;
若当前处于播放状态的是第二终端,则第二终端通过与第一终端之间建立的局域网络关系,从第一终端侧获取到第一流片段,按照各流片段的编号,确定流片段的播放时间顺序;根据所述播放时间顺序,将从第二终端获取的第一流片段和从媒体服务器获取的第二流片段穿插组合得到可供播放的所述媒体内容;
若当前处于播放状态的是第一终端和第二终端,则第一终端通过与第二终端之间建立的局域网络关系,从第二终端侧获取到第二流片段,按照各流片段的编号,确定流片段的播放时间顺序;根据所述播放时间顺序,将从媒体服务器获取的第一流片段和从第二终端获取的第二流片段穿插组合得到可供播放的所述媒体内容;第二终端通过与第一终端之间建立的局域网络关系,从第一终端侧获取到第一流片段,按照各流片段的编号,确定流片段的播放时间顺序;根据所述播放时间顺序,将从第二终端获取的第一流片段和从媒体服务器获取的第二流片段穿插组合得到可供播放的所述媒体内。
4.根据权利要求1所述的低延时直播流媒体方法,其特征在于,所述第一终端与运营商侧建立的无线信号传输网络,能否满足所述媒体内容的传输速率需求是由媒体服务器根据所述媒体内容播放请求分析得到的,具体包括:
根据第一终端发送媒体内容播放请求的起始时刻和媒体内容的播放进度,预测各流片段的预设请求时刻;
根据流片段的实际请求时刻与对应的预设请求时刻,计算得到流片段的请求时延;
根据所述第一终端最新请求的N个流片段,计算所述N个流片段的平均时延,若所述平均时延大于预设时延阈值,则认为所述所述第一终端与运营商侧建立的无线信号传输网络,无法满足所述媒体内容的传输速率;其中,所述N为预设数量,且N为正整数。
5.根据权利要求1所述的低延时直播流媒体方法,其特征在于,当第一终端与第二终端请求不同的媒体内容,分别为第一媒体内容和第二媒体内容后,并且,仍然维持着通过局域网络关系建立的捆绑关系,方法还包括;
媒体服务器根据与第一终端和第二终端之间建立的网络传输的第一等效网络带宽和第二等效带宽;
综合分析所述第一等效网络带宽和第一媒体内容所需网络带宽,以及第二等效网络带宽和第二媒体内容所需网络带宽,给予第一终端和第二终端在相应分析之后策略性的流片段发送。
6.根据权利要求5所述的低延时直播流媒体方法,其特征在于,所述给予第一终端和第二终端在相应分析之后策略性的流片段发送,具体包括:
若第一等效网络带宽大于等于第一媒体内容所需网络带宽,并且,第二等效网络带宽大于等于第二媒体内容所需网络带宽;则媒体服务器通过与第一终端建立的无线信号传输网络发送第一媒体内容所对应的流片段,以及通过与第二终端建立的无线信号传输网络发送第二媒体内容所对应的流片段;
若第一等效网络带宽超过第一媒体内容所需网络带宽程度大于等于第一预设阈值,并且,第二等效网络带宽小于第二媒体内容所需网络带宽程度小于等于第一预设阈值,则媒体服务器通过与第一终端建立的无线信号传输网络发送第一媒体内容所对应的流片段;另一方面,根据所述第一等效网络带宽超过第一媒体内容所需网络带宽程度,拆分所述第二媒体内容,借由所述第一终端盈余的网络带宽和第二终端的无线信号传输网络,以及第一终端与第二终端的捆绑关系,进行所述第二媒体内容所对应流片段的传输。
7.根据权利要求6所述的低延时直播流媒体方法,其特征在于,根据所述第一等效网络带宽超过第一媒体内容所需网络带宽程度,拆分所述第二媒体内容,借由所述第一终端盈余的网络带宽和第二终端的无线信号传输网络,以及第一终端与第二终端的捆绑关系,进行所述第二媒体内容所对应流片段的传输,具体包括:
根据所述第一等效网络带宽超过第一媒体内容所需网络带宽程度,评估所述第一终端的无线信号传输网络所能够提供给第二媒体内容的额外网络带宽;
根据所述第一终端的网络带宽和所述额外网络带宽,将所述第二媒体内容拆分得到第三流片段组和第四流片段组;其中,由所述额外网络带宽和所述第二媒体内容超出第二等效网络带宽的带宽大小中较小的一方决定第三流片段组和第四流片段组的拆分比例;
媒体服务器通过与第二终端建立的无线信号传输网络发送第三流片段,媒体服务器还通过与第一终端建立的无线信号传输网络发送第四流片段,所述第二终端通过与第一终端之间建立的局域网络关系,获取所述第四流片段,以便于所述第二终端根据所述第三流片段和所述第四流片段组合得到所述第二媒体内容。
8.根据权利要求5所述的低延时直播流媒体方法,其特征在于,所述给予第一终端和第二终端在相应分析之后策略性的流片段发送,还包括:
当第一终端和/或第二终端在媒体应用中调整对应所需媒体内容的分辨率时,第一终端和/或第二终端向媒体应用发送分辨率调整请求,媒体服务器根据所述分辨率调整请求调整对应媒体内容在后续传输中的流片段,并根据分辨率调整后对应媒体内容所需的网络带宽,重新制定流片段发送策略,并调整后续流片段的发送;其中,在初始进行流片段的发送时,以媒体应用中默认的分辨率作为媒体内容的分辨率,分析制定对应的流片段发送策略并进行流片段的发送。
9.根据权利要求1-8任一所述的低延时直播流媒体方法,其特征在于,所述媒体内容在网络中传输所使用的协议为RTMP协议或RTSP协议。
10.一种低延时直播流媒体系统,其特征在于,用于执行权利要求1-9任一所述的低延时直播流媒体方法,系统包括媒体服务器和多个媒体应用;
所述媒体应用用于搜索可建立局域网络关系的对方,并在对应的媒体应用界面点击确认后,此时,为第一终端和第二终端建立两者之间的局域网络关系,并同时各自还拥有与运营商侧建立的无线信号传输网络;并在第一终端和/或第二终端向媒体服务器发送媒体内容播放请求时,在所述播放请求中携带捆绑标识、请求端ID、捆绑关系端ID和媒体内容相关信息;
所述媒体服务器用于在收到互为捆绑关系的另一终端的媒体内容播放请求后,确定两者的捆绑关系,并通过各自的无线信号传输网络,将所述媒体内容中的第一流片段组传输给第一终端,将所述媒体内容中的第二流片段组传输给第二终端;其中,所述媒体内容由第一流片段组和第二流片段组共同组成;
所述媒体应用还用于使所述第一终端和第二终端通过所述局域网络关系在所述第一终端和所述第二终端之间进行所述第一流片段和第二流片段的互传,以将第一终端从网络接收到的第一流片段传输给第二终端,和/或将第二终端从网络接收到的第二流片段传输给第一终端;以便于所述第一终端和/或所述第二终端根据所述第一流片段和第二流片段组合得到所述媒体内容,从而在第一终端和/或第二终端进行所述媒体内容的播放。
CN202310057130.8A 2023-01-18 2023-01-18 一种低延时直播流媒体方法和系统 Active CN115802097B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202310057130.8A CN115802097B (zh) 2023-01-18 2023-01-18 一种低延时直播流媒体方法和系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202310057130.8A CN115802097B (zh) 2023-01-18 2023-01-18 一种低延时直播流媒体方法和系统

Publications (2)

Publication Number Publication Date
CN115802097A true CN115802097A (zh) 2023-03-14
CN115802097B CN115802097B (zh) 2023-05-02

Family

ID=85429680

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202310057130.8A Active CN115802097B (zh) 2023-01-18 2023-01-18 一种低延时直播流媒体方法和系统

Country Status (1)

Country Link
CN (1) CN115802097B (zh)

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20100195977A1 (en) * 2009-02-03 2010-08-05 Bennett James D Constructing Video Frames And Synchronizing Audio Data In A Media Player From Data Received Via A Plurality Of Diverse Protocol Stack Paths
CN101883249A (zh) * 2009-05-04 2010-11-10 沈阳爱国者网络科技有限公司 一种网络视频文件获取系统
CN103825890A (zh) * 2014-02-19 2014-05-28 惠州Tcl移动通信有限公司 移动终端及基于dlna实现云端流媒体文件分享的方法
CN104066015A (zh) * 2014-07-04 2014-09-24 三星电子(中国)研发中心 移动终端的流媒体播放方法及装置
CN105408916A (zh) * 2013-07-26 2016-03-16 华为技术有限公司 用于自适应流媒体中的空间自适应的系统和方法
CN110234017A (zh) * 2007-02-02 2019-09-13 赛乐得科技(北京)有限公司 具有不同用户终端的多媒体通信中跨层优化的方法和装置

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110234017A (zh) * 2007-02-02 2019-09-13 赛乐得科技(北京)有限公司 具有不同用户终端的多媒体通信中跨层优化的方法和装置
US20100195977A1 (en) * 2009-02-03 2010-08-05 Bennett James D Constructing Video Frames And Synchronizing Audio Data In A Media Player From Data Received Via A Plurality Of Diverse Protocol Stack Paths
CN101883249A (zh) * 2009-05-04 2010-11-10 沈阳爱国者网络科技有限公司 一种网络视频文件获取系统
CN105408916A (zh) * 2013-07-26 2016-03-16 华为技术有限公司 用于自适应流媒体中的空间自适应的系统和方法
CN103825890A (zh) * 2014-02-19 2014-05-28 惠州Tcl移动通信有限公司 移动终端及基于dlna实现云端流媒体文件分享的方法
CN104066015A (zh) * 2014-07-04 2014-09-24 三星电子(中国)研发中心 移动终端的流媒体播放方法及装置

Also Published As

Publication number Publication date
CN115802097B (zh) 2023-05-02

Similar Documents

Publication Publication Date Title
TWI580237B (zh) 單一播放適應性位元率串流
US9979771B2 (en) Adaptive variable fidelity media distribution system and method
WO2023024834A9 (zh) 一种游戏数据处理方法、装置及存储介质
TWI574531B (zh) 於相同視訊傳送管線內之客戶前提元件中將多重播放適應性位元率及單一播放適應性位元率與累進下載適應性位元率合併之技術
KR102119287B1 (ko) 이용가능한 대역폭에 따라 전송 프로토콜을 선택함으로써 콘텐츠를 획득하는 장치
US10374818B2 (en) Systems and methods for dynamically switching between unicast and multicast delivery of media content in a wireless network
Kaspar et al. Using HTTP pipelining to improve progressive download over multiple heterogeneous interfaces
US20130179547A1 (en) Method and device for playing stream media video content
CN107819809B (zh) 对内容进行同步操作的方法及装置
CN110636339B (zh) 基于码率的调度方法、装置及电子设备
EP2640083A2 (en) Multimedia data processing apparatus and method of terminal
KR20110100932A (ko) 데이터 통신 망에서의 스트리밍 서비스 장치 및 방법
US8959240B2 (en) Method, apparatus and system for rapid acquisition of multicast realtime transport protcol sessions
US20150271226A1 (en) Transport accelerator implementing a multiple interface architecture
MX2015002628A (es) Sistema y metodo para entregar un contenido audio-visual a un dispositivo de un cliente.
CN101741890A (zh) 一种实现速率控制的方法、系统和设备
US20070160048A1 (en) Method for providing data and data transmission system
CN101848205A (zh) 一种基于rtsp的移动终端播放流媒体的方法及系统
WO2015117355A1 (zh) 一种实现终端多媒体广播的方法及装置
CN112399190A (zh) 音视频数据获取方法及其装置
CN115484240A (zh) 解码、数据传输方法、装置、终端及服务器
CN103607663A (zh) 一种多媒体流的识别方法、装置及设备
CN115802097B (zh) 一种低延时直播流媒体方法和系统
KR20080062692A (ko) 스트림 녹화 방법, 장치 및 시스템
CN109756755A (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
GR01 Patent grant
GR01 Patent grant