首页> 中国专利> 基于动态自适应码率传输协议HLS流媒体的直播方法和服务器

基于动态自适应码率传输协议HLS流媒体的直播方法和服务器

摘要

本发明实施例提供了一种基于动态自适应码率传输协议HLS流媒体的直播方法和服务器,所述方法包括:服务器根据网络属性信息确定初始切片时长和初始编码速率;所述服务器接收客户端的直播服务请求;所述服务器依据所述直播服务请求采用初始切片时长对流媒体进行切片,生成切片文件;所述服务器按照所述初始编码速率将所述切片文件发送给所述客户端;所述客户端用于依据所述切片文件进行直播。本发明实施例通过确定流媒体的初始切片时长和初始编码速率,可以在网络环境较好时,提供尽量短较短的直播延时和尽量高的视频清晰度,并且可以在网络环境较差时,尽量保证流媒体直播的连贯性,以提供一个尽可能好的用户体验。

著录项

  • 公开/公告号CN104967872A

    专利类型发明专利

  • 公开/公告日2015-10-07

    原文格式PDF

  • 申请/专利号CN201510309733.8

  • 发明设计人 孙国臣;

    申请日2015-06-08

  • 分类号H04N21/239(20110101);H04N21/258(20110101);H04N21/24(20110101);H04N21/2343(20110101);H04N21/238(20110101);

  • 代理机构11319 北京润泽恒知识产权代理有限公司;

  • 代理人赵娟

  • 地址 266071 山东省青岛市市南区江西路11号

  • 入库时间 2023-12-18 11:23:54

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2019-03-12

    授权

    授权

  • 2015-11-11

    实质审查的生效 IPC(主分类):H04N21/239 申请日:20150608

    实质审查的生效

  • 2015-10-07

    公开

    公开

说明书

技术领域

本发明涉及数据处理技术领域,特别是涉及一种基于动态自适应码 率传输协议HLS流媒体的直播方法和一种服务器。

背景技术

近年来,流媒体传输领域出现了一种发展趋势,流媒体传输由传统 的RTSP(real time streaming protocol、实时流传输协议)、MMS(Multimedia  Messaging Service,多媒体信息服务)、RTMP(Real Time Messaging  Protocol,实时消息传送协议)等媒体传输协议在线服务向纯粹的HTTP (Hyper Text Transport Protocol,超文本传输协议)转变。现在已经有许 多视频网站采用HTTP传输方案进行媒体内容的传输,形成这种转变主 要有以下几个理由:

1、CDN(Content Distribution Network,内容分发网络)以及服务器 主机提供的网页下载服务比传统的媒体流服务要便宜;传统的媒体传输 协议通常很难穿过防火墙或是路由器,因为它们主要是基于UDP(User  Datagram Protocol,用户数据报协议)不定端口来进行传输,而HTTP协 议则不存在这个问题,原因在于HTTP基于80固定端口,网络设备对80 端口默认支持。

2、采用HTTP协议进行流媒体传输不需要特别进行缓存或代理。

3、采用HTTP协议封装流媒体并传输到客户端,与其他协议相比更 加方便和便宜。

目前,互联网上流媒体传输主要有传统流媒体、渐序性下载和流媒 体自适应传输这三种类型:

1、传统流媒体。以RTSP协议为例,RTSP协议是一个典型的流媒体 传输协议,也是一个有状态的协议。有状态是指从客户端连接上流媒体 服务器的那一刻起,一直到客户端断掉与流媒体服务器端的连接,流媒 体服务器一直保持着与客户端的连接状态。客户端通过开始play、停止 pause、卸载teardown等命令来与流媒体服务器进行通信。

2、渐序性下载。它本质上和从网页服务器上下载一个文件类似。大 多数的客户端和媒体传输平台支持渐序性下载,渐序性来自于大多数客 户端允许流媒体回看,并且后台可以同时下载节目。支持HTTP 1.1的客 户端能够定位到未下载完整的流媒体位置。由于不像传统流媒体的服务 器,很少能在一个时间段内够发送超过10秒媒体数据给客户端,HTTP 网页服务器能够保证持续的节目数据传输直到整个流媒体下载完成。即 使客户端在回看时暂停节目播放,节目数据依然会持续下载到浏览器的 缓存中,保证用户能有良好的收看体验。

3、HTTP协议为基础的流媒体自适应传输。这是一种混合型的传输 类型,它的传输动作类似流媒体,但是实际上是基于HTTP协议渐序性 下载。HTTP协议为基础的流媒体自适应传输的好处在于,使用了已有的 HTTP协议而不需要开发一个新的传输协议。微软提出的平滑流Smooth  Streaming和移动网络流媒体自适应传输,都是以HTTP协议为基础的流 媒体自适应传输的应用实例,该技术能够实现持续的小流媒体文件的下 载,而不是一个大流媒体文件的连续下载。在典型的HTTP协议为基础 的流媒体自适应传输方案中,音视频节目被编码成许多小的数据片,这 些小的数据片组成一个数据块,一个数据块的长度通常为2~4秒长。

流媒体自适应传输技术有几个共同的技术特点:(1)它从同一个节 目源产生多个不同码率的流媒体以适应不同的带宽和不同的设备类型。 (2)自适应分发文件以及码流传输的变化都是适应有效网络吞吐量和可 用的CPU(Central Processing Unit,中央处理器)资源。(3)所有的操作对 用户都是透明的,节目源的切换都在后台进行,用户很难注意到节目源 的变化。然而,自适应技术方案只限制在客户端,这种动态方法可能限 制某些专业用户希望能够自己对特殊内容传输进行微调和控制,降低了 系统的灵活性。且由于流媒体的切片长度通常为10秒每片,切片一个片 段,缓冲一个片段,延时可能在20秒以上,总体所需时间较长,导致用 户体验较差。

发明内容

鉴于上述问题,提出了本发明实施例以便提供一种克服上述问题或 者至少部分地解决上述问题的一种基于动态自适应码率传输协议HLS流 媒体的直播方法和相应的一种服务器。

为了解决上述问题,本发明实施例公开了一种基于动态自适应码率 传输协议HLS流媒体的直播方法,包括:

服务器根据网络属性信息确定初始切片时长和初始编码速率;

所述服务器接收客户端的直播服务请求;

所述服务器依据所述直播服务请求采用初始切片时长对流媒体进行 切片,生成切片文件;

所述服务器按照所述初始编码速率将所述切片文件发送给所述客户 端;所述客户端用于依据所述切片文件进行直播。

优选地,所述流媒体具有对应的流媒体分辨率,所述服务器根据网 络属性信息确定初始切片时长和初始编码速率的步骤包括:

服务器获取网络的性能数据和/或客户端的屏幕信息;

所述服务器获取所述流媒体的传输速率;

所述服务器采用所述流媒体分辨率,和/或网络的性能数据,和/或客 户端的屏幕信息,和/或传输速率确定所述流媒体的初始切片时长。

优选地,所述流媒体具有对应的分辨率,所述服务器根据网络属性 信息确定初始切片时长和初始编码速率的步骤包括:

服务器获取网络的性能数据和/或客户端的屏幕信息;

所述服务器获取所述流媒体的传输速率;

所述服务器采用所述流媒体分辨率,和/或网络的性能数据,和/或客 户端的屏幕信息,和/或传输速率确定所述流媒体的初始编码速率。

优选地,所述方法还包括:

所述服务器在所述客户端进行直播的过程中,统计所述切片文件的 发送时间,以及在所述客户端的播放时间;

所述服务器采用所述发送时间和所述播放时间调整所述流媒体的初 始切片时长,和/或初始编码速率,和/或流媒体分辨率。

优选地,所述服务器采用发送时间和所述播放时间调整所述流媒体 的初始切片时长,和/或初始编码速率,和/或流媒体分辨率的步骤包括:

所述服务器判断所述发送时间是否高于所述播放时间;

若所述发送时间高于或等于所述播放时间;则所述服务器提高所述 流媒体的初始切片时长;和/或,降低所述流媒体的初始编码速率;和/或, 降低所述流媒体的流媒体分辨率;

若所述发送时间低于所述直播时间;则所述服务器降低所述流媒体 的初始切片时长;和/或,提高所述流媒体的初始编码速率;和/或,提高 所述流媒体的流媒体分辨率。

本发明实施例还公开了一种服务器,包括:

确定模块,用于根据网络属性信息确定初始切片时长和初始编码速 率;

接收模块,用于接收客户端的直播服务请求;

切片模块,用于依据所述直播服务请求采用初始切片时长对流媒体 进行切片,生成切片文件;

直播模块,用于按照所述初始编码速率将所述切片文件发送给所述 客户端;所述客户端用于依据所述切片文件进行直播。

优选地,所述流媒体具有对应的流媒体分辨率,所述确定模块包括:

第一获取子模块,用于获取网络的性能数据和/或客户端的屏幕信息;

第二获取子模块,用于获取所述流媒体的传输速率;

切片时长确定子模块,用于采用所述流媒体分辨率,和/或网络的性 能数据,和/或客户端的屏幕信息,和/或传输速率确定所述流媒体的初始 切片时长。

优选地,所述流媒体具有对应的流媒体分辨率,所述确定模块包括:

第三获取子模块,用于获取网络的性能数据和/或客户端的屏幕信息;

第四获取子模块,用于获取所述流媒体的传输速率;

初始编码速率确定子模块,用于采用所述流媒体分辨率,和/或网络 的性能数据,和/或客户端的屏幕信息,和/或传输速率确定所述流媒体的 初始编码速率。

优选地,所述装置还包括:

统计模块,用于在所述客户端进行直播的过程中,统计所述切片文 件的发送时间,以及在所述客户端的播放时间;

调整模块,用于采用所述发送时间和所述播放时间调整所述流媒体 的初始切片时长,和/或初始编码速率,和/或流媒体分辨率。

优选地,所述调整模块包括:

判断子模块,用于判断所述发送时间是否高于所述播放时间;若所 述发送时间高于或等于所述播放时间,则调用第一调整子模块;若所述 发送时间低于所述播放时间,则调用第二调整子模块;

第一调整子模块,用于提高所述流媒体的初始切片时长;和/或,降 低所述流媒体的初始编码速率;和/或,降低所述流媒体的流媒体分辨率;

第二调整子模块,用于降低所述流媒体的初始切片时长;和/或,提 高所述流媒体的初始编码速率;和/或,提高所述流媒体的流媒体分辨率。

本发明实施例包括以下优点:

本发明实施例中根据以确定的初始切片时长和初始编码速率,在接 收到客户端的直播服务请求后,按照初始切片时长对流媒体进行切片, 并将生成切片文件发送给客户端,以供客户端进行直播。通过确定流媒 体的初始切片时长和初始编码速率,可以在网络环境较好时,提供尽量 短较短的直播延时和尽量高的视频清晰度,并且可以在网络环境较差时, 尽量保证流媒体直播的连贯性,以提供一个尽可能好的用户体验。

本发明实施例在客户端流媒体直播的过程中,可以根据切片文件的 发送时间,以及在客户端的播放时间,对于流媒体的初始切片时长,和/ 或初始编码速率,和/或流媒体分辨率进行相应的调整,通过在网络环境 的变化情况进行实时调整,可以进一步保护流媒体直播的连贯性。

附图说明

图1是本发明的一种基于动态自适应码率传输协议HLS流媒体的直 播方法实施例一的步骤流程图;

图2是本发明的一种初始切片时长的综合测算示意图;

图3是本发明的一种初始编码速率的综合测算示意图;

图4是本发明的一种流媒体切片缓存以及直播的示意图;

图5是本发明的一种基于动态自适应码率传输协议HLS流媒体的直 播方法实施例二的步骤流程图;

图6是本发明的一种服务器实施例的结构框图。

具体实施方式

为使本发明的上述目的、特征和优点能够更加明显易懂,下面结合 附图和具体实施方式对本发明作进一步详细的说明。

以下对于HLS(Http Live Streaming,动态自适应码率传输技术)关键 技术点进行介绍:

HLS主要基于TS(Transport Stream,传输流)格式的视频流或文件 进行封装传输,HLS类似一个容器封装MPEG TS(Moving Picture Experts  Group,运动图象专家组)传输格式。TS格式是广播电视行业中采用的 节目传输格式。HLS编码解码采用MPEG-4或H.264/AVC(Advanced  Video Coding,高阶视讯编码),音频采用AAC(Advanced Audio Coding, 高级音频编码)。这样技术路线使得企业可以使用成熟工业标准,将其应 用在互联网电视技术方案上几乎不需要改动,对现有标准兼容的越好, HLS便可以更快进入到产业链中。

其中,HLS方案主要技术特点包括:

1、节目源采用H.264/TS编码格式,可变码率;使用流媒体切片技术 将一个完整的节目切成若干小片,通常是10秒每片,同时使用m3u或 m3u8格式生成切片配置文件,以指导播放器如何播放切片文件。

2、通过HTTP Server(HTTP服务器)分发节目,同时提供合适的缓 存。HLS技术另外一个优势是能够实现动态自适应码率传输。相对于移 动流媒体RTP传输技术,HLS能够根据终端用户带宽的可用性在终端而 不是在前端视频服务上,实现对码率的切换。这种实现方式可以为用户 在无保障的网络上提供较好的用户体验。

3、切片配置文件说明了在同一个频道或文件中不同码率的节目流的 对应性。

4、终端根据接收切变文件的时间长度来选择最合适的码率。

5、每个切片文件最长10秒,所以接收设备可以自动适应码率变化。

HLS方案主要不足之处:自适应技术方案只限制在客户端,这种动 态方法可能限制某些专业用户希望能够自己对特殊流媒体的传输进行微 调和控制,降低了系统的灵活性。一般切片长度为10秒每片,切片一个 片段,缓冲一个片段,延时可能在20秒以上(切片是指用户在请求直播 时,服务器一侧开始录制一个片段需要10s(假设切片长度为10s),那么 客户端获取并缓冲需要10s,这样算出来延时20s),总体所需时间较长, 导致用户体验较差。

鉴于现有技术的不足,本发明实施例的核心构思之一在于,提供一 种基于HLS的直播优化方案,提供尽可能好的用户体验。如果网络环境 较好,则提供较短的直播延时和尽量高的流媒体的视频清晰度,如果网 络环境较差,尽量保证直播连贯。

参照图1,示出了本发明的一种基于动态自适应码率传输协议HLS 流媒体的直播方法实施例一的步骤流程图,具体可以包括如下步骤:

步骤101,服务器根据网络属性信息确定初始切片时长和初始编码速 率;

在本发明的一种优选实施例中,所述流媒体可以具有对应的流媒体 分辨率,所述步骤101可以包括如下子步骤:

子步骤S11,服务器获取网络的性能数据和/或客户端的屏幕信息;

子步骤S12,所述服务器获取所述流媒体的传输速率;

子步骤S13,所述服务器采用所述流媒体分辨率,和/或网络的性能 数据,和/或客户端的屏幕信息,和/或传输速率确定所述流媒体的初始切 片时长。

在本发明实施例中,可以根据网络的性能数据,以及当前客户端连 接服务器的传输速率,客户端的屏幕信息中任意的一个或多个的网络属 性信息,来确定一个流媒体的初始切片时长,以尽可能短的时间进行切 片,以尽可能减少直播延时。

在具体实现中,网络的性能数据可以包括网络的传输速率,在服务 初始化时可以通过随机发送几个预置的数据包到客户端,统计数据包发 送到客户端的时间,从而可以根据该数据包和时间来预测当前网络的传 输速率。一般而言,网络的传输速率是wifi(wireless fidelity,无线传输) 路由器内部的传输速率,由于所有数据都是在局域网内部进行,故可不 涉及外网速率,因此此时网络的传输速率即可以指代wifi路由器的传输 速率。

客户端的屏幕信息可以包括客户端的屏幕分辨率,以及,可使用的 显示区域等等。在本发明实施例中可以根据客户端(User Agent,UA)确 定客户端的屏幕分辨率,如果是客户端是未知设备,则可以使用默认屏 幕分辨率,该默认屏幕分辨率可以设置为640X480。

在本发明实施例中的流媒体的传输速率,可以包括各种分辨率的节 目源,即流媒体所对应的流媒体的传输速率。具体来说,流媒体的传输 速率可以包括各种分辨率的流媒体的每秒最大的传输速率,最小的传输 速率,以及平均的传输速率等等。

参照图2所示的本发明的一种初始切片时长的综合测算示意图,在 本发明实施例中,可以结合获得的网络的性能数据,客户端的屏幕信息, 流媒体的传输速率综合测算出流媒体的初始切片时长。在实际的流媒体 的传输中,应当尽可能清晰和分辨率高的流媒体,因此在确定初始切片 时长时,如果网络性能的数据优良,流媒体的传输速率稳定,则可以采 用较短的切片时长,否则采用较长的切片时长,一般而言,切片时长范 围为1~10秒,在保证流媒体质量以及传输连贯的前提下,采用尽可能短 的切片时长,以减小直播时延。

需要说明的是,在本发明实施例中,进行初始切片时长的测算时, 可以根据网络的性能数据,客户端的屏幕信息,流媒体的传输速率的其 中一个,或者两两结合,或者三者综合测算出初始切片时长,本发明实 施例对此不加以限制,此外,为了能够更好地结合实际情况来进行切片 时长的测算,还可以结合帧速、节目源和编码方式等相关数据对于初始 切片时长进行测算,本发明实施例同样对此不加以限制。

在本发明的一种优选实施例中,所述流媒体可以具有对应的分辨率, 所述步骤101可以包括如下子步骤:

子步骤S21,服务器获取网络的性能数据和/或客户端的屏幕信息;

子步骤S22,所述服务器获取所述流媒体的传输速率;

子步骤S23,所述服务器采用所述流媒体分辨率,和/或网络的性能 数据,和/或客户端的屏幕信息,和/或传输速率确定所述流媒体的初始编 码速率。

在本发明实施例中,对于初始编码速率,其与初始切片时长的测算 方式类似,具体可以参考初始切片时长的相关描述,则不在此进行赘述 了。

需要说明的是,为保证流媒体传输的稳定性,编码速率应该小于等 于wifi的传输速率。而为了提高节目源的播放清晰度,编码速率需要尽 可能接近wifi的传输速率,还需要根据wifi路由器的传输速率的稳定性, 尽可能保证能传输完成。编码速率在实际中还可以动态地进行变化,应 该取一个统计中间值或者稍大一点的值作为编码速率。当然,在具体实 现中还可以根据其他情况酌情调整编码速率,本发明实施例对此不加以 限制。

参照图3所示的本发明的一种初始编码速率的综合测算示意图,在 本发明实施例中,可以结合获得的网络的性能数据,客户端的屏幕信息, 流媒体的传输速率综合测算出流媒体的初始编码速率。在实际的流媒体 的传输中,应当尽可能清晰和分辨率高的流媒体,因此在确定初始编码 速率时,如果网络性能的数据优良,流媒体的传输速率稳定,则可以采 用较高的编码速率,否则采用较低的编码速率,在保证流媒体质量以及 传输连贯的前提下,采用尽可能高的编码速率,以减小直播时延。

步骤102,所述服务器接收客户端的直播服务请求;

步骤103,所述服务器依据所述直播服务请求采用初始切片时长对流 媒体进行切片,生成切片文件;

步骤104,所述服务器按照所述初始编码速率将所述切片文件发送给 所述客户端;所述客户端用于依据所述切片文件进行直播。

本发明实施例中在流媒体(即音视频流)的切片过程中,使用预定 义机制,提前生成切片配置文件,在切片过程中再根据切片配置文件生 成切片文件,切片过程中,采用缓冲机制,边切片边发送切片文件,以 尽可能减少直播延时。参照图4所示的本发明的一种流媒体切片缓存以 及直播的示意图,具体的步骤可以包括:

A、客户端发送直播服务请求给服务器;

B、服务器接收到直播服务请求,开始直播服务,预生成切片配置文 件,该切片配置文件的格式可以为.m3u8,其中包括有初始切片时长等数 据;

C、服务器开始获取用于直播的音视频流;

D、服务器对音视频流按照初始切片时长进行编码切片,生成音视频 段;

E、服务器对各个音视频段进行缓冲处理,其中各个音视频段的存储 格式可以为TS格式;

F、客户端开始进行直播服务;

G、客户端从服务器中获取切片配置文件;

H、客户端按照初始编码速率循环从服务器中接收到缓冲后的音视频 段;

I、客户端直播所获取的各个缓冲后的音视频段。

在本发明实施例的一种优选示例中,现有技术中服务器能提供多套 节目源,而本发明实施例是可以基于搭建在电视或者机顶盒上的服务器 (该服务器与智能终端通过HLS协议进行流媒体的传输)这样由于硬件 的限制,可以只提供一套节目源,需要说明的是,HLS协议流媒体自适 应传输是指客户端从服务器提供的多套节目源中选取一个,而与现有技 术中HLS协议本身能自适应切换码率有区别,本发明实施例则是可以根 据网络的性能数据、节目源的分辨率,客户端的屏幕分辨率等任意一个 或多个数据确定初始编码速率,以提供尽可能高的分辨率,从而给带来 用户较好的体验。

参照图5,示出了本发明的一种基于动态自适应码率传输协议HLS 流媒体的直播方法实施例二的步骤流程图,具体可以包括如下步骤:

步骤201,服务器根据网络性能数据确定初始切片时长和初始编码速 率;

步骤202,所述服务器接收客户端的直播服务请求;

步骤203,所述服务器依据所述直播服务请求采用初始切片时长对流 媒体进行切片,生成切片文件;

步骤204,所述服务器按照所述初始编码速率将所述切片文件发送给 所述客户端;所述客户端用于依据所述切片文件进行直播;

步骤205,所述服务器在所述客户端进行直播的过程中,统计所述切 片文件的发送时间,以及在所述客户端的播放时间;

步骤206,采用所述发送时间和所述播放时间调整所述流媒体的初始 切片时长,和/或初始编码速率,和/或流媒体分辨率。

在本发明实施例中,考虑到现有技术中切片时长和编码速率常是固 定的,不论网络环境是好是差,因此在本发明的一种优选的实施例方案 是,在确定了初始切片时间长度后,在后续的流媒体的直播过程中,如 果网络环境发生变化,仍然可以根据网络环境以及其他相关数据,再次 设定流媒体的切片时长和编码速率等等。

在本发明的一种优选实施例中,所述步骤206可以包括如下子步骤:

子步骤S31,所述服务器判断所述发送时间是否高于所述播放时间; 若所述发送时间高于或等于所述播放时间;则执行子步骤S32,若所述发 送时间低于所述播放时间;则执行子步骤S33;

子步骤S32,所述服务器提高所述流媒体的初始切片时长;和/或, 降低所述流媒体的初始编码速率;和/或,降低所述流媒体的流媒体分辨 率;

子步骤S33,所述服务器降低所述流媒体的初始切片时长;和/或, 提高所述流媒体的初始编码速率;和/或,提高所述流媒体的流媒体分辨 率。

在本发明实施例中,在直播过程中统计每个切片文件的发送时间, 在保证连贯的前提下,尽可能使用较短的切片时长,较高的编码速率, 和/或较高的流媒体分辨率,以提供最好的用户体验。

具体来说,当流媒体的发送时间持续高于流媒体的播放时间,说明 编码速率过高,切片时长过短,和/或流媒体分辨率较高,说明网络环境 较差,切片文件的直播卡顿,这时可以选择提高切片时长,降低编码速 率,和/或降低流媒体分辨率;当流媒体的发送时间持续远低于流媒体的 播放时间,说明网络环境较好,降低切片时长,提高编码速率,和/或提 高流媒体分辨率。

需要说明的是,在具体实现中可以根据网络环境对于编码速率,切 片时长,流媒体分辨率中其中的一个或多个数据进行修改,本发明实施 例对此不加以限制。

本发明实施例在客户端进行流媒体直播的过程中,可以根据切片文 件的发送时间,以及在客户端的播放时间,对于流媒体的切片时长,和/ 或编码速率,和/或流媒体分辨率进行相应的调整,通过在网络环境的变 化情况进行实时调整,可以进一步保护流媒体直播的连贯性,用户体验 效果极佳。

需要说明的是,对于方法实施例,为了简单描述,故将其都表述为 一系列的动作组合,但是本领域技术人员应该知悉,本发明实施例并不 受所描述的动作顺序的限制,因为依据本发明实施例,某些步骤可以采 用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书 中所描述的实施例均属于优选实施例,所涉及的动作并不一定是本发明 实施例所必须的。

参照图6,示出了本发明的一种服务器实施例的结构框图,具体可以 包括如下模块:

确定模块301,用于根据网络属性信息确定初始切片时长和初始编码 速率;

在本发明的一种优选实施例中,所述流媒体可以具有对应的流媒体 分辨率,所述确定模块301可以包括如下子模块:

第一获取子模块,用于获取网络的性能数据和/或客户端的屏幕信息;

第二获取子模块,用于获取所述流媒体的传输速率;

切片时长确定子模块,用于采用所述流媒体分辨率,和/或网络的性 能数据,和/或客户端的屏幕信息,和/或传输速率确定所述流媒体的初始 切片时长。

在本发明的一种优选实施例中,所述确定模块301可以包括如下子 模块:

第三获取子模块,用于获取网络的性能数据和/或客户端的屏幕信息;

第四获取子模块,用于获取所述流媒体的传输速率;

初始编码速率确定子模块,用于采用所述流媒体分辨率,和/或网络 的性能数据,和/或客户端的屏幕信息,和/或传输速率确定所述流媒体的 初始编码速率。

接收模块302,用于接收客户端的直播服务请求;

切片模块303,用于依据所述直播服务请求采用初始切片时长对流媒 体进行切片,生成切片文件;

直播模块304,用于按照所述初始编码速率将所述切片文件发送给所 述客户端;所述客户端用于依据所述切片文件进行直播。

在本发明的一种优选实施例中,所述的服务器还可以包括如下模块:

统计模块,用于在所述客户端进行直播的过程中,统计所述切片文 件的发送时间,以及在所述客户端的播放时间;

调整模块,用于采用所述发送时间和所述播放时间调整所述流媒体 的初始切片时长,和/或初始编码速率,和/或流媒体分辨率。

在本发明的一种优选实施例中,所述调整模块可以包括如下子模块:

判断子模块,用于判断所述发送时间是否高于所述播放时间;若所 述发送时间高于或等于所述播放时间,则调用第一调整子模块;若所述 发送时间低于所述播放时间,则调用第二调整子模块;

第一调整子模块,用于提高所述流媒体的初始切片时长;和/或,降 低所述流媒体的初始编码速率;和/或,降低所述流媒体的流媒体分辨率;

第二调整子模块,用于降低所述流媒体的初始切片时长;和/或,提 高所述流媒体的初始编码速率;和/或,提高所述流媒体的流媒体分辨率。

对于服务器实施例而言,由于其与方法实施例基本相似,所以描述 的比较简单,相关之处参见方法实施例的部分说明即可。

本说明书中的各个实施例均采用递进的方式描述,每个实施例重点 说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分 互相参见即可。

本领域内的技术人员应明白,本发明实施例的实施例可提供为方法、 装置、或计算机程序产品。因此,本发明实施例可采用完全硬件实施例、 完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发 明实施例可采用在一个或多个其中包含有计算机可用程序代码的计算机 可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实 施的计算机程序产品的形式。

本发明实施例是参照根据本发明实施例的方法、终端设备(系统)、和 计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程 序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图 和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令 到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理终端 设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理 终端设备的处理器执行的指令产生用于实现在流程图一个流程或多个流 程和/或方框图一个方框或多个方框中指定的功能的装置。

这些计算机程序指令也可存储在能引导计算机或其他可编程数据处 理终端设备以特定方式工作的计算机可读存储器中,使得存储在该计算 机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在 流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的 功能。

这些计算机程序指令也可装载到计算机或其他可编程数据处理终端 设备上,使得在计算机或其他可编程终端设备上执行一系列操作步骤以 产生计算机实现的处理,从而在计算机或其他可编程终端设备上执行的 指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框 或多个方框中指定的功能的步骤。

尽管已描述了本发明实施例的优选实施例,但本领域内的技术人员 一旦得知了基本创造性概念,则可对这些实施例做出另外的变更和修改。 所以,所附权利要求意欲解释为包括优选实施例以及落入本发明实施例 范围的所有变更和修改。

最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系 术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不 一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺 序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的 包含,从而使得包括一系列要素的过程、方法、物品或者终端设备不仅 包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为 这种过程、方法、物品或者终端设备所固有的要素。在没有更多限制的 情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的 过程、方法、物品或者终端设备中还存在另外的相同要素。

以上对本发明所提供的一种基于动态自适应码率传输协议HLS流媒 体的直播方法和相应的一种服务器,进行了详细介绍,本文中应用了具 体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是 用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技 术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变 之处,综上所述,本说明书内容不应理解为对本发明的限制。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号