流媒体文件的播放方法及装置制造方法

文档序号:7771665阅读:161来源:国知局
流媒体文件的播放方法及装置制造方法
【专利摘要】本发明公开了一种流媒体文件的播放方法及装置,涉及互联网【技术领域】,能够解决因重建HTTP长连接导致的切换时延过长的问题。本发明的方法包括:向网络侧服务器请求建立超文本传输协议(HTTP)长连接;建立主长连接和辅HTTP长连接;通过所述主HTTP长连接接收所述网络侧服务器发送的第一流媒体数据;保持所述辅HTTP长连接与所述网络侧服务器的连接状态;当接收到播放切换指令时,断开所述主HTTP长连接,并通过辅HTTP长连接接收所述网络侧服务器发送的第二流媒体数据。本发明主要应用于音乐在线播放的过程中。
【专利说明】流媒体文件的播放方法及装置

【技术领域】
[0001] 本发明涉及互联网【技术领域】,尤其涉及一种流媒体文件的播放方法及装置。

【背景技术】
[0002] 流媒体(Streaming Media,简称SM)技术是一种将一连串媒体数据包顺序进行压 缩并分段发送给终端的数据传输技术。终端如同流水线一样顺序接收多个流媒体数据包并 依次进行解压缩播放,与普通的"先下载,后播放"的播放模式相比,流媒体技术能够实现音 视频文件的在线播放。
[0003] 在播放流媒体文件时,本地终端需要发起超文本传输协议(HyperText Transfer Protocol,简称HTTP)连接,向网络侧服务器上报对流媒体文件的HTTP请求。终端在建立 HTTP连接时对应建立一个底层的传输控制协议(Transmission Control Protocol,简称 TCP)连接,用以支持上层HTTP的数据传输。通常用户在上网时,终端会不停的发起HTTP 请求,一次HTTP请求对应一次HTTP连接,终端通过不同的HTTP请求获取不同的数据资源。 例如,终端首先发起HTTP连接1请求某门户网站的首页页面,然后断开HTTP连接1,建立 HTTP连接2请求首页页面链接的视频子页面,接着终端断开HTTP连接2,建立HTTP连接3 请求视频子页面中的某个视频文件。
[0004] 这种数据请求方式需要频繁发起并断开HTTP连接,对本地终端的处理资源以及 网络侧服务器的信令开销占用较多,同时由于在HTTP的断开和新HTTP的连接之间存在时 延,因此终端获取数据的时间间隔较大,影响用户使用。基于这种缺陷,目前出现了一种改 进型的数据请求方式,称为HTTP长连接(!111?1^印- &1丨%),这种数据请求方式能够在首次 发起HTTP请求时建立HTTP连接和TCP连接,并且在HTTP请求结束后仍保持HTTP连接以 便终端发起下一个HTTP请求,从而实现基于一次HTTP连接的多次HTTP请求,继而提高了 HTTP请求的性能,能够减少相关资源的开销。
[0005] 在通过HTTP长连接播放流媒体文件的过程中,发明人发现,由于流媒体文件的播 放形式为在线播放,终端请求流媒体数据包的过程贯穿于文件播放始终,因此如果用户在 播放当前流媒体文件时切换播放另一流媒体文件,则在当前流媒体数据包传输完毕之前, 终端无法中止当前HTTP请求的传输过程,进而无法发起针对下一个流媒体文件的HTTP请 求。终端只能断开HTTP长连接并建立新的HTTP长连接来请求另一流媒体文件的流媒体数 据包。这种处理方式实际上仍是对HTTP连接的重新建立,需要重新建立底层的TCP连接, 两次连接之间的时间间隔较长,需要用户等待较长的时间,特别是对于2G或3G的移动终端 用户而言,等待时间远远超过服务质量(Quality of Service,简称QoS)中的标准要求。
[0006] 此外,为解决重新建立HTTP长连接对时延的影响,目前部分技术方案还通过基于 底层的TCP协议代替上层HTTP协议请求流媒体数据。但是TCP协议属于私有协议,不如 HTTP协议通用,网络侧服务器与本地终端之间、网络侧服务器站点与站点之间的TCP协议 不尽相同,容易导致本地终端因协议不同而对网络侧服务器的HTTP响应进行防火拦截,使 得流媒体数据包传输失败。并且在网络资源平台化的趋势下,协议兼容性差的缺陷会严重 影响第三方开发商与资源平台之间的数据流通,阻碍资源共享进程的发展。


【发明内容】

[0007] 本发明实施例提供一种流媒体文件的播放方法及装置,能够解决因重建HTTP长 连接导致的切换时延过长的问题。
[0008] -方面,本发明实施例提供了一种流媒体文件的播放方法,包括:
[0009] 向网络侧服务器请求建立超文本传输协议(HTTP)长连接;
[0010] 建立主长连接和辅HTTP长连接;
[0011] 通过所述主HTTP长连接接收所述网络侧服务器发送的第一流媒体数据;
[0012] 保持所述辅HTTP长连接与所述网络侧服务器的连接状态;
[0013] 当接收到播放切换指令时,断开所述主HTTP长连接,并通过辅HTTP长连接接收所 述网络侧服务器发送的第二流媒体数据。
[0014] 另一方面,本发明实施例还提供了一种流媒体文件的播放装置,包括:
[0015] 连接建立请求单元,用于向网络侧服务器请求建立超文本传输协议(HTTP)长连 接;
[0016] 连接建立单元,用于建立主长连接和辅HTTP长连接;
[0017] 连接控制单元,用于控制通过所述连接建立单元建立的所述主HTTP长连接接收 网络侧服务器发送的第一流媒体数据;
[0018] 状态控制单元,用于控制保持所述连接建立单元建立的所述辅HTTP长连接与所 述网络侧服务器的连接状态;
[0019] 指令接收单元,用于接收播放切换指令;
[0020] 所述连接控制单元还用于当所述指令接收单元接收到所述播放切换指令时,断开 所述主HTTP长连接,通过所述状态控制单元控制保持连接状态的辅HTTP长连接接收所述 网络侧服务器发送的第二流媒体数据。
[0021] 本发明实施例提供的流媒体文件的播放方法及装置,除能够为当前需要请求的第 一流媒体数据建立主HTTP长连接以外,还可以建立辅HTTP长连接以备后用。在通过主HTTP 长连接接收第一流媒体数据的过程中保持辅HTTP长连接与网络侧服务器的连接状态。当 接收到请求第二流媒体数据的播放切换指令时,直接断开主HTTP长连接,并通过辅HTTP长 连接来接收网络侧服务器发送的第二流媒体数据。由于辅HTTP长连接是在主HTTP长连接 请求第一流媒体数据的过程中通过后台线程建立的,因此对第一流媒体文件的播放并不产 生影响,同时与现有技术中在用户进行播放切换操作后建立新的HTTP长连接相比,可以在 需要新的HTTP长连接时直接使用已建立的辅HTTP长连接,从而节省临时建立HTTP长连接 的耗时,进而缩短流媒体文件的切换时延。

【专利附图】

【附图说明】
[0022] 为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现 有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本 发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以 根据这些附图获得其他的附图。
[0023] 图1为现有技术中终端接收并播放流媒体文件的示意图;
[0024] 图2为本发明实施例中流媒体文件的播放方法的流程图;
[0025] 图3为本发明实施例中另一个流媒体文件的播放方法的流程图;
[0026] 图4为本发明实施例中终端建立主辅HTTP长连接的示意图;
[0027] 图5为本发明实施例中终端通过辅HTTP长连接向网络侧服务器发送定期发送握 手报文的示意图;
[0028] 图6为本发明实施例中第一个流媒体文件的播放装置的结构示意图;
[0029] 图7为本发明实施例中第二个流媒体文件的播放装置的结构示意图;
[0030] 图8为本发明实施例中第三个流媒体文件的播放装置的结构示意图。

【具体实施方式】
[0031] 下面将结合本实施例中的附图,对本实施例中的技术方案进行清楚、完整地描述, 显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的 实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都 属于本发明保护的范围。
[0032] 为便于对本发明实施例进行说明,首先对终端通过HTTP长连接获取并播放流媒 体文件的过程进行简要介绍。
[0033] 如图1所示,当用户选择在线播放歌曲《祖国颂》时,终端建立一个HTTP长连接, 向网络侧服务器发送HTTP请求,请求歌曲《祖国颂》的流媒体文件。网络侧服务器在从数 据库中获取到歌曲《祖国颂》的流媒体文件后,将该流媒体文件切分为多个流媒体数据包, 然后顺序对多个流媒体数据包进行编码压缩发送给终端。终端在接收到第一个压缩数据包 后(有时出于播放流畅性的考虑会在接收到几个压缩数据包后),开始对接收到的压缩数据 包进行解压缩和解码操作,然后对解码后的流媒体数据包进行播放,由此形成边接收流媒 体数据包边播放的在线播放模式。
[0034] 当歌曲《祖国颂》播放完毕后(此时对应的流媒体数据包也传输完毕),用户选择播 放另一首歌曲《让世界充满爱》,则终端可以在不断开HTTP长连接的情况下,通过已建立的 HTTP长连接向网络侧服务器发起另一个HTTP请求,请求歌曲《让世界充满爱》的流媒体数 据包进行播放。但是对于用户在歌曲播放完毕之前切换播放其他歌曲的情况,由于歌曲《祖 国颂》播放完毕前对应的流媒体数据包也未传输完毕,终端无法断开歌曲《祖国颂》的HTTP 请求,因此只能断开当前的HTTP长连接,停止歌曲《祖国颂》流媒体数据包的传输,然后建 立新的HTTP长连接向网络侧服务器请求歌曲《让世界充满爱》的流媒体数据包。通常建立 HTTP长连接的耗时较长,对于2G网络中的移动终端而言,目前的测试结果显示建立HTTP长 连接的平均耗时为7000毫秒,也就是说从进行播放切换操作到播放下一首歌曲《让世界充 满爱》之间用户至少需要等待7秒的时间,这个量级的耗时无论对于运营商还是对于用户而 言,显然都是难以接收的。
[0035]为缩短流媒体文件的切换耗时,本实施例提供了 一种流媒体文件的播放方法,该 方法可以应用于电脑、手机、平板电脑等终端设备中,效果较为显著的,该方法优选应用于 手机、平板电脑等通过无线通讯方式与网络侧服务器进行数据交互的移动设备中。如图2 所示,该方法包括:
[0036] 201、向网络侧服务器请求建立HTTP长连接。
[0037] 202、建立主HTTP长连接和辅HTTP长连接。
[0038] 在第一次播放流媒体文件时,终端为该流媒体数据的获取建立一条主HTTP长连 接,同时再建立至少一条备用的辅HTTP长连接。
[0039] 本实施例中,终端建立的辅HTTP长连接数量可以为一条也可以为多条,当用户同 时播放多个流媒体文件时(例如在线播放一首歌曲并同时播放某网页上的视频),终端为每 一条主HTTP长连接建立一条或多条辅HTTP长连接,本实施例对终端建立的辅HTTP长连接 数量不做限制。
[0040] 203、通过主HTTP长连接接收网络侧服务器发送的第一流媒体数据。
[0041] 在建立主HTTP长连接后,终端通过建立好的主HTTP长连接向网络侧服务器发送 HTTP请求,请求首次播放流媒体文件对应的第一流媒体数据。
[0042] 204、保持辅HTTP长连接与网络侧服务器的连接状态。
[0043] 在建立辅HTTP长连接之后,终端通过后台线程的运行对辅HTTP长连接进行维护, 使之保持与网络侧服务器的连接状态。
[0044] 205、当接收到播放切换指令时,断开主HTTP长连接,并通过辅HTTP长连接接收网 络侧服务器发送的第二流媒体数据。
[0045] 当接收到用于指示播放另一个流媒体文件的播放切换指令时,无论当前的第一流 媒体数据是否传输完毕,终端都将断开当前使用的主HTTP长连接,然后以步骤204中后台 维护的辅HTTP长连接作为新的主HTTP长连接,通过新的主HTTP长连接向网络侧服务器发 送HTTP请求,接收并播放网络侧服务器发送的第二流媒体数据。
[0046] 本发明实施例提供的流媒体文件的播放方法,除能够为当前需要请求的第一流媒 体数据建立主HTTP长连接以外,还可以建立辅HTTP长连接以备后用。在通过主HTTP长连 接接收第一流媒体数据的过程中保持辅HTTP长连接与网络侧服务器的连接状态。当接收 到请求第二流媒体数据的播放切换指令时,直接断开主HTTP长连接,并通过辅HTTP长连接 来接收网络侧服务器发送的第二流媒体数据。由于辅HTTP长连接是在主HTTP长连接请求 第一流媒体数据的过程中通过后台线程建立的,因此对第一流媒体文件的播放并不产生影 响,同时与现有技术中在用户进行播放切换操作后建立新的HTTP长连接相比,可以在需要 新的HTTP长连接时直接使用已建立的辅HTTP长连接,从而节省临时建立HTTP长连接的耗 时,进而缩短流媒体文件的切换时延。
[0047] 为了更好的对本实施例产生的技术效果进行说明,下面通过在不同网络条件下进 行大量测试得到的数据结果,对现有技术和本发明实施例进行比较。如下表所示,以首片 数据为128K码率、50Kbytes大小的动态影像专家压缩标准音频层面3 (Moving Picture Experts Group Audio Layer III,简称 MP3)文件为例,对于 2.5G 网络、3G 网络以及 Wi-Fi 网络,现有技术中的切换耗时平均为本实施例中切换耗时的6到7倍,由此可以看出,本实 施例提供的流媒体文件的播放方法能够大大降低用户的切换等待时间。
[0048]

【权利要求】
1. 一种流媒体文件的播放方法,其特征在于,包括: 向网络侧服务器请求建立超文本传输协议(HTTP)长连接; 建立主长连接和辅HTTP长连接; 通过所述主HTTP长连接接收所述网络侧服务器发送的第一流媒体数据; 保持所述辅HTTP长连接与所述网络侧服务器的连接状态; 当接收到播放切换指令时,断开所述主HTTP长连接,并通过辅HTTP长连接接收所述网 络侧服务器发送的第二流媒体数据。
2. 根据权利要求1所述的方法,其特征在于,所述建立辅HTTP长连接的步骤,包括: 在建立所述主HTTP长连接时,后台建立所述辅HTTP长连接。
3. 根据权利要求1所述的方法,其特征在于,所述建立辅HTTP长连接的步骤,包括: 在所述主HTTP长连接建立完成后,在根据用户行为习惯的学习结果确定的特定时间 点上,建立所述辅HTTP长连接。
4. 根据权利要求1所述的方法,其特征在于,所述保持所述辅HTTP长连接与所述网络 侧服务器的连接状态的步骤,包括: 通过所述辅HTTP长连接定期向所述网络侧服务器发送握手报文,发送所述握手报文 的时间间隔短于HTTP长连接的超时时长。
5. 根据权利要求1所述的方法,其特征在于,在所述断开所述主HTTP长连接的步骤之 前,所述方法进一步包括: 判断所述第一流媒体数据是否接收完毕,得出判断结果; 若所述判断结果为是,则通过所述主HTTP长连接继续接收所述第二流媒体数据; 若所述判断结果为否,则断开所述主HTTP长连接,并通过所述辅HTTP长连接接收所述 第二流媒体数据。
6. 根据权利要求1所述的方法,其特征在于,在通过所述辅HTTP长连接接收所述第二 流媒体数据的过程中,所述方法进一步包括: 为接收所述第二流媒体数据的辅HTTP长连接建立二级辅HTTP长连接。
7. -种流媒体文件的播放装置,其特征在于,包括: 连接建立请求单元,用于向网络侧服务器请求建立超文本传输协议(HTTP)长连接; 连接建立单元,用于建立主长连接和辅HTTP长连接; 连接控制单元,用于控制通过所述连接建立单元建立的所述主HTTP长连接接收网络 侧服务器发送的第一流媒体数据; 状态控制单元,用于控制保持所述连接建立单元建立的所述辅HTTP长连接与所述网 络侧服务器的连接状态; 指令接收单元,用于接收播放切换指令; 所述连接控制单元还用于当所述指令接收单元接收到所述播放切换指令时,断开所述 主HTTP长连接,通过所述状态控制单元控制保持连接状态的辅HTTP长连接接收所述网络 侧服务器发送的第二流媒体数据。
8. 根据权利要求7所述的装置,其特征在于,所述连接建立单元,包括: 第一建立子单元,用于在建立所述主HTTP长连接时,后台建立所述辅HTTP长连接。
9. 根据权利要求7所述的装置,其特征在于,所述连接建立单元,还包括: 第二建立子单元,用于在所述主HTTP长连接建立完成后,根据用户行为习惯的学习结 果确定特定时间点,后台建立所述辅HTTP长连接。
10. 根据权利要求7所述的装置,其特征在于,所述状态控制单元用于通过所述辅HTTP 长连接定期向所述网络侧服务器发送握手报文,发送所述握手报文的时间间隔短于HTTP 长连接的超时时长。
11. 根据权利要求7所述的装置,其特征在于,所述装置还包括: 判断单元,用于在所述连接控制单元断开所述主HTTP长连接之前,判断所述第一流媒 体数据是否接收完毕,得出判断结果; 所述连接控制单元还用于当所述判断单元的判断结果为是时,通过所述主HTTP长连 接继续接收所述第二流媒体数据; 所述连接控制单元还用于当所述判断结果为否时,断开所述主HTTP长连接,通过所述 辅HTTP长连接接收所述第二流媒体数据。
【文档编号】H04L29/08GK104092714SQ201310443059
【公开日】2014年10月8日 申请日期:2013年9月25日 优先权日:2013年9月25日
【发明者】傅鸿城, 张庆 申请人:腾讯科技(深圳)有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1