一种流媒体点播方法、系统及设备的制作方法

文档序号:7688286阅读:105来源:国知局
专利名称:一种流媒体点播方法、系统及设备的制作方法
技术领域
本发明属于流媒体点播领域,尤其涉及一种流媒体点播方法、系统及设备。
技术背景流媒体点播服务是一种在互联网上提供流媒体点播的服务, 一般用于娱乐视频点播、远程教学等应用。流媒体点播服务是通过流媒体数据流式(Real Time Streaming Protocol, RTSP )协议、微软媒体服务器协议(Microsoft Media Server Protocol, MMS),或者HTTP流式协议,将流媒体数据通过网络连接发送给 客户端的流媒体播放器播放。流媒体点播服务一般通过架设流媒体点播服务器,将流媒体节目放置在流 媒体点播服务器上,客户端点播某个流媒体节目时,通过网络连接到流媒体点 播服务器,在流媒体点播服务器和客户端之间通过某种流媒体点播协议完成的 协议命令交互和流媒体数据的传输。在现有的服务器/客户端模式下,流媒体点播服务器对流媒体节目中流媒体 数据进行解析,将流媒体数据封装成客户端播放器可以播放的格式,发送给客 户端。同时,由于点播服务是一个具有交互性的流媒体服务,用户可以随时开 始、暂停、继续播放、停止任意一个流媒体节目,还可以在播放的过程之中随 时定位到任意一个位置开始播放。客户端的每一个操作都要与流媒体点播服务 器进行交互,流媒体点播服务器需要完成这些交互协议,以保证客户端流媒体 节目纟番;改的流畅性和交互性。当客户端点播互联网上的流媒体节目时,客户端播放器根据流媒体节目的 网络地址,向流媒体节目所在的流媒体点播服务器发起连接,并根据网络地址 中指定的协议类型与流媒体点播服务器进行协议命令交互,完成流媒体数据的5播放。流媒体点播服务器一方面需要完成与客户端流媒体播放器之间的协议命 令交互,另一方面需要将流媒体数据封装成播放器可以播放的格式,并传输给 流媒体播放器。现有方案中,由于流媒体点播服务器既承担了流媒体数据源的角色,又要 完成协议命令交互、流々某体数据封装和传输工作,降低了流媒体点播服务的可 扩展性, 一方面作为流媒体数据源的流媒体点播服务器较少,难以满足客户的 流媒体点播需求,另一方面当点播的客户端增加时,造成流媒体点播服务器的 通信压力过大,性能降低,影响流媒体点播服务的质量。发明内容本发明实施例的目的在于提供一种流媒体点播方法,旨在解决现有流媒体 点播方案中,流媒体点播服务器同时承担流媒体数据源、协议命令交互、流媒 体数据封装和传输工作,降低了流媒体点播服务的可扩展性的问题。本发明实施例是这样实现的, 一种流媒体点播方法,所述方法包括下述步骤接收本地流媒体播放器发出的开始播放流媒体节目的点播命令; 向流媒体数据源请求下载对应的流媒体数据; 緩存从流纟某体数据源下载的流媒体数据; 解析緩存的流媒体数据;将解析输出的流媒体数据封装成本地流媒体播放器设定的点播协议类型需要的数据格式,发送给本地流媒体播放器。本发明实施例的另一目的在于提供一种流媒体点播系统,所述系统包括 数据下载单元,用于根据点播命令向流i某体数据源请求下载对应的流媒体数据;数据緩存单元,用于緩存从流媒体数据源下载的流媒体数据; 数据解析单元,用于解析緩存的流媒体数据;数据传输单元,用于将解析输出的流媒体数据封装成本地流媒体播放器设定的点播协议类型需要的数据格式,发送给本地流媒体播放器;点播协议命令交互单元,用于与本地流媒体播放器进行协议命令交互,根 据本地流媒体播放器发出的点播命令对所述数据下载单元的数据下载,或者数 据传输单元的数据传输进行控制。本发明实施例的另 一 目的在于提供一种包含上述流媒体点播系统的流媒体 播放器。本发明实施例的另 一 目的在于提供一种包含上述流i某体点播系统的通信终端。本发明实施例将流i某体点播服务本地化,在客户端本地完成流媒体播放的 协议命令交互,以及流媒体数据的封装和传输,大大减少了流媒体点播服务器 的负担,降低了流媒体点播服务器的通信压力。同时,使流媒体点播服务器可 以单纯作为一个流々某体数据源,可以更好利用对等网络技术,提高获取流媒体 数据的效率,并增加了为客户端提供点播服务的数据源,大大提高了流媒体点 播服务的可扩展性。


图1是本发明实施例提供的播放流媒体节目的实现流程图; 图2是本发明实施例提供的暂停播放流媒体节目的实现流程图; 图3是本发明实施例提供的继续播放暂停的流媒体节目的实现流程图; 图4是本发明实施例提供的定位新位置4番;改流i某体节目的实现流程图; 图5是本发明实施例提供的停止播放流媒体节目的实现流程图; 图6是本发明实施例提供的流媒体点播系统的结构图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅 仅用以解释本发明,并不用于限定本发明。本发明实施例中,将流媒体点播服务本地化,在客户端本地完成流媒体播 放器点播协议的交互,以及媒体数据的封装传输,可以大大提高流媒体点播服 务的可扩展性。流媒体数据点播具有较高的交互性,用户在播放流媒体节目的过程中,可 以随时开始、暂停、继续播放、停止任意一个流媒体节目,还可以在播放流媒 体节目的过程中定位到任意位置播放。在本发明实施例中,由于将流媒体点播服务本地化,所以系统初始化时将 客户端的本机地址作为本地流媒体播放器的虚拟服务器地址,选择一个系统设置的端口号绑定,并监听该端口上的连接。当本地流媒体播放器播放一个新的 流媒体节目,或者对播放的流媒体节目进行控制时,本地流媒体播放器向该端 口发起一个连接,并根据设定的点播协议类型向客户端发起点播命令。图1示出了本发明实施例提供的播放流媒体节目的实现流程,详述如下 在步骤S101中,接收本地流媒体播放器发出的播放流媒体节目的点播命令;在步骤S102中,向流媒体数据源,例如流媒体点播服务器或者提供流媒体 数据下载的其它网络节点请求并下载客户端点播的流々某体数据; 在步骤S103中,緩存从流媒体数据源下载的流媒体数据; 在步骤S104中,解析緩存的流媒体数据;在本发明实施例中,如果解析的流媒体数据为流媒体的头部数据,可以从 中解析出包括流媒体数据的大小、时间长度、流媒体数据的基本信息等,如果 是流媒体帧数据,可以解析出该流媒体帧数据的发送时间戳等信息;在步骤S105中,根据解析输出的流媒体数据信息向本地流媒体播放器返回 播放当前流々某体节目的回应命令;在步骤S106中,将解析输出的流媒体数据,例如流媒体数据的基本信息,或者流媒体帧数据,封装成本地流媒体播放器设定的点播协议类型需要的数据 格式,发送给本地流媒体播放器。图2示出了本发明实施例提供的暂停播放流媒体节目的实现流程,详述如下在步骤S201中,接收本地流媒体播放器发出的暂停播放当前流媒体节目的 点播命令;在步骤S202中,停止向本地流媒体播放器发送流媒体数据,记录播放暂停 时流媒体数据的发送状态信息,例如流媒体数据发送的时间点信息、封装包的 序号等;在步骤S203中,停止从流媒体数据源下载流媒体数据,记录播放暂停时流 媒体数据的下载状态信息,例如流媒体数据下载的时间点信息;在步骤S204中,根据本地流媒体播放器设定的点播协议类型向本地流媒体 播放器返回暂停播放当前流媒体节目的回应命令。图3示出了本发明实施例提供的继续播放暂停的流媒体节目的实现流程, 详述如下在步骤S301中,接收本地流媒体播放器发出的继续播放被暂停的当前流媒 体节目的点播命令;在步骤S302中,根据暂停时记录的流媒体数据的下载状态信息,向流媒体 数据源请求下载继续播放的流媒体数据;在步骤S3 03中,緩存从流媒体数据源下载的流媒体数据;在步骤S304中,解析緩存的流媒体数据;在步骤S305中,根据本地流媒体播放器设定的点播协议类型向本地流媒体 播放器返回继续播放当前流媒体节目的回应命令;在步骤S306中,将解析输出的流i某体数据封装成本地流^ 某体播;故器设定的 点播协议类型需要的数据格式,根据暂停时记录的流媒体数据的发送状态信息, 继续向本地流媒体播放器发送流媒体数据。图4示出了本发明实施例提供的定位新位置播放流媒体节目的实现流程,详述如下在步骤S401中,接收本地流媒体播放器发出的定位新位置播放当前流媒体 节目的点播命令;在步骤S402中,停止当前流媒体数据的发送;在步骤S403中,从定位的新位置开始,向流媒体数据源请求下载流媒体数据;在步骤S404中,緩存从流媒体数据源下载的流媒体数据; 在步骤S405中,解析緩存的流媒体数据;在步骤S406中,根据本地流媒体播放器设定的点播协议类型向本地流媒体 播放器返回定位新位置播放当前流媒体节目的回应命令;在步骤S407中,将解析输出的流媒体数据封装成本地流媒体播放器设定的 点播协议类型需要的数据格式,从定位的新位置开始,向本地流媒体播放器发 送流媒体数据。图5示出了本发明实施例提供的停止播放流媒体节目的实现流程,详述如下在步骤S501中,接收本地流媒体播放器发出的停止播放当前流媒体节目的 点播命令;在步骤S502中,停止向本地流媒体播放器发送流媒体数据; 在步骤S503中,停止从流媒体数据源下载流媒体数据; 在步骤S504中,根据播放器设定的点播协议类型向本地流媒体播放器返回 停止播放当前流媒体节目的回应命令。需要说明的是,在上述各流程中,向本地流媒体播放器返回的对应回应命 令一般由点播协议规定,不同的点播协议会有不同的命令规范。当然在点播协 议没有要求时,也可以不向本地流媒体播放器返回回应命令。另外,向本地流 媒体播放器发送流媒体数据时,还可以对发送给本地流媒体播放器的数据速率进行控制。图6示出了本发明实施例提供的流媒体点播系统的结构,为了便于说明,仅示出了与本发明实施例相关的部分。
该系统为运行于个人计算机(Personal Computer, PC)、移动电话、个人 数字助理(Personal Digital Assistant, PDA )等作为客户端的通信终端的 一个独 立的系统,可以作为插件或者独立的进程向客户端的流媒体播放器提供服务。数据下载单元61从网络上各个流媒体数据源下载流媒体数据,这些流媒体 数据源可以是现有的流媒体点播服务器,也可以是提供流媒体数据下载的其它 网络节点。数据緩存单元62将数据下载单元61下载的流媒体数据緩存在客户端。数据解析单元63解析缓存的流媒体数据,解析出流媒体数据的基本信息, 如果是媒体的头部数据,数据解析单元63可以从中解析出包括流媒体大小、时 间长度,音视频流的基本信息等,如果是媒体帧数据,可以解析出该媒体帧数 据的发送时间戳等信息。数据传输单元64将数据解析单元63解析输出的流媒体数据封装成播放器 设定的点播协议类型需要的数据格式发送给本地流媒体播放器,另外,数据传 输单元64还可以控制发送给本地流媒体播放器的数据速率。点播协议交互单元65与本地流媒体播放器之间进行协议命令交互,根据本 地流媒体播放器发出的点播命令对数据传输单元64的数据传输和数据下载单 元61的数据下载进行控制,并根据数据解析单元63解析的流媒体信息构造对 应的回应命令返回给本地流媒体播放器。在本发明实施例中,由于将流媒体点播服务本地化,所以系统初始化时, 将客户端的本机地址作为本地流媒体播放器的虚拟服务器地址,点播协议交互 单元65选择一个系统设置的端口号绑定,并监听这个端口上的连接。当本地流 媒体播放器播放一个新的流媒体节目,或者对播放的流媒体节目进行控制时, 本地流媒体播放器向该端口发起一个连接,并根据设定的点播协议类型向客户端发起相应的点播命令。当用户点播一个新的流媒体节目时,本地流媒体播放器向客户端发出播放 流媒体节目的点播命令。点播协议交互单元65接收到本地流媒体播放器发出的播放流媒体节目的点播命令后,通知数据下载单元61下载流媒体数据。数据下 载单元61向流媒体数据源请求并下载对应的流媒体数据。数据下载单元61将 下载的流媒体数据存放在数据緩存单元62中。数据解析单元63读取并解析数 据緩存单元62緩存的流媒体数据。点播协议交互单元65根据数据解析单元63 解析输出的媒体信息构造播放当前流媒体节目的回应命令,发送给本地流媒体 播放器。数据传输单元64将数据解析单元63解析输出的流媒体数据封装成本 地流媒体播放器设定的点播协议类型所需要的流媒体数据格式,发送给本地流 媒体播放器。当用户暂停点4番的流媒体节目时,本地流媒体播放器向客户端发出暂停播 放当前流媒体节目的点播命令。点播协议交互单元65收到本地流媒体播放器发 出的暂停播放当前流媒体节目的点播命令后,通知数据传输单元64停止向本地 流媒体播放器发送流媒体数据,数据传输单元64记录播放暂停时流媒体数据的 发送状态信息,例如暂停时的时间点信息、封装包的序号等。同时,点播协议 交互单元65通知数据下载单元61停止从流媒体数据源下载流媒体数据,数据 下载单元61记录播放暂停时流媒体数据的下载状态信息,例如数据下载的时间 点信息等。点播协议交互单元65按照本地流媒体播放器设定的点播协议类型向 本地流媒体播放器返回暂停播放当前流媒体节目的回应命令。当用户播放一个处于暂停的流媒体节目时,本地流媒体播放器向客户端发 送继续播放被暂停的当前流媒体节目的点播命令。点播协议命令交互单元65 收到本地流媒体播放器发出的继续播放被暂停的当前流媒体节目的点播命令 后,通知数据传输单元64,数据下载单元61根据播放暂停时记录的流媒体数 据的下载状态信息,向流媒体数据源请求下载继续播放的流媒体数据,将下载 下来的流媒体数据存放在数据緩存单元62中。数据解析单元63读取并解析数据緩存单元62緩存的流媒体数据。点播协议交互单元65根据本地流J)某体播放器设定的点播协议类型向本地流媒体播放器返回继续播放当前流媒体节目的回应命令,数据传输单元64将解析输出的流媒体数据封装成本地流媒体播放器设 定的点播协议类型需要的数据格式,根据暂停时记录的流媒体数据的发送状态 信息,继续向本地流媒体播放器发送流媒体数据。当用户在播放过程定位到新位置播放流媒体节目时,本地流媒体播放器向 客户端发送定位新位置播放当前流媒体节目的点播命令。点播协议交互单元65 收到本地流媒体播放器发出的定位新位置播放当前流媒体节目的点播命令后, 通知数据传输单元64停止当前流媒体数据的发送,同时通知数据下载单元61 从定位的新位置开始向流媒体数据源请求下载流媒体数据,数据下载单元61 将下载下来的流媒体数据存^:在数据緩存单元62中。数据解析单元63读取并 解析数据緩存单元62緩存的流i某体数据。点播协议命令交互单元65根据本地 流媒体播放器设定的点播协议类型向本地流媒体播放器返回定位新位置播放当 前流媒体节目的回应命令。数据传输单元64将解析输出的流媒体数据封装成本 地流媒体播放器设定的点播协议类型需要的数据格式,从定位的新位置开始, 向本地流媒体播放器发送流媒体数据。当用户停止一个流媒体节目的播放时,本地流媒体播放器向客户端发送停 止播放当前流媒体节目的点播命令。点播协议交互单元65收到本地流媒体播放 器发出的停止4番放当前流媒体节目的点播命令后,通知数据传输单元64停止向 本地流媒体播放器发送流媒体数据,并通知数据下载单元61停止从流媒体数据 源下载流媒体数据。点播协议交互单元65根据播放器设定的点播协议类型向本 地流媒体播放器返回停止播放当前流媒体节目的回应命令。作为本发明的一个实施例,上述流媒体点播系统也可以集成在流士某体播放 器内形成一个完整的系统,将客户端的本机地址作为流媒体播放器的虚拟服务 器地址,流媒体播放器选择一个系统设置的端口号绑定,并监听这个端口上的 连接。当播放一个新的流媒体节目,或者对播放的流媒体节目进行控制时,流媒体播放器向该端口发起一个连接,从流媒体数据源上下载流媒体数据,在本 地完成流媒体播放的协议命令交互,以及流媒体数据的封装和传输等。本发明实施例将流媒体点播服务本地化,在客户端本地完成流媒体播放的 协议命令交互,以及流媒体数据的封装和传输,大大减少了流媒体点播服务器 的负担,降低了流媒体点播服务器的通信压力。同时,使流^某体点播服务器可 以单纯作为一个流媒体数据源,而与其他拥有该流媒体数据网络节点没有差别, 这样可以更好利用对等网络技术,提高获取流媒体数据的效率,并增加了为客 户端提供点播服务的数据源,大大提高了流媒体点播服务的可扩展性。以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发 明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明 的保护范围之内。
权利要求
1、一种流媒体点播方法,其特征在于,所述方法包括下述步骤接收本地流媒体播放器发出的播放流媒体节目的点播命令;向流媒体数据源请求下载对应的流媒体数据;缓存从流媒体数据源下载的流媒体数据;解析缓存的流媒体数据;将解析输出的流媒体数据封装成本地流媒体播放器设定的点播协议类型需要的数据格式,发送给本地流媒体播放器。
2、 如权利要求1所述的方法,其特征在于,所述方法进一步包括下述步骤: 接收本地流媒体播放器发出的暂停播放当前流媒体节目的点播命令; 停止向本地流媒体播放器发送流媒体数据,记录播放暂停时流媒体数据的发送状态信息;停止从流媒体数据源下载流媒体数据,记录播放暂停时流媒体数据的下载 状态信息。
3、 如权利要求2所述的方法,其特征在于,所述方法进一步包括下述步骤 接收本地流媒体播放器发出的继续播放被暂停的当前流媒体节目的点播命令;根据暂停时记录的流媒体数据的下载状态信息,向流媒体数据源请求下载继续播放的流媒体数据;緩存从流媒体数据源下载的流媒体数据; 解析緩存的流媒体数据;将解析输出的流々某体数据封装成本地流媒体播放器设定的点播协议类型需 要的数据格式,根据播放暂停时记录的流媒体数据的发送状态信息,继续向本 地流媒体播放器发送流媒体数据。
4、 如权利要求1所述的方法,其特征在于,所述方法进一步包括下述步骤 接收本地流媒体播放器发出的定位新位置播放当前流媒体节目的点播命令;停止当前流媒体数据的发送;从定位的新位置开始,向流媒体数据源请求下载流媒体数据; 緩存从流媒体数据源下载的流媒体数据; 解析緩存的流媒体数据;将解析输出的流媒体数据封装成本地流媒体播放器设定的点播协议类型需 要的数据格式,从定位的新位置开始,向本地流媒体播放器发送流媒体数据。
5、 如权利要求1所述的方法,其特征在于,所述方法进一步包括下述步骤: 接收本地流媒体播放器发出的停止播放当前流媒体节目的点播命令; 停止向本地流媒体播放器发送流媒体数据;停止从流媒体数据源下载流媒体数据。
6、 如权利要求1至5任一权利要求所述的方法,其特征在于,所述流媒体 数据源为流媒体点播服务器,或者提供流媒体数据下载的其他网络节点。
7、 一种流媒体点播系统,其特征在于,所述系统包括 数据下载单元,用于根据点播命令向流媒体数据源请求下载对应的流媒体数据;数据緩存单元,用于緩存从流媒体数据源下载的流媒体数据; 数据解析单元,用于解析緩存的流媒体数据;数据传输单元,用于将解析输出的流媒体数据封装成本地流媒体播放器设 定的点播协议类型需要的数据格式,发送给本地流媒体播放器;以及点播协议命令交互单元,用于与本地流媒体播放器进行协议命令交互,根 据本地流媒体播放器发出的点播命令对所述数据下载单元的数据下载,或者数 据传输单元的数据传输进行控制。
8、 如权利要求7所述的系统,其特征在于,所述点播命令包括播放流媒体 节目的点播命令、暂停播放当前流媒体节目的点播命令、继续播放被暂停的当 前流媒体节目的点播命令、定位新位置播放当前流媒体节目的点播命令、或者停止播放当前流媒体节目的点播命令。
9、 如权利要求7或8所述的系统,其特征在于,所述流媒体数据源为流媒 体点播服务器,或者提供流媒体数据下载的其他网络节点。
10、 一种包含权利要求7的流媒体点播系统的流媒体播放器。
11、 一种包含权利要求7的流媒体点播系统的通信终端。
全文摘要
本发明适用于流媒体点播领域,提供了一种流媒体点播方法、系统及设备,所述方法包括下述步骤接收本地流媒体播放器发出的播放流媒体节目的点播命令;向流媒体数据源请求下载对应的流媒体数据;缓存从流媒体数据源下载的流媒体数据;解析缓存的流媒体数据;将解析输出的流媒体数据封装成本地流媒体播放器设定的点播协议类型需要的数据格式,发送给本地流媒体播放器。本发明降低了流媒体点播服务器的通信压力,可以更好利用对等网络技术,提高获取流媒体数据的效率,并增加了为客户端提供点播服务的数据源,大大提高了流媒体点播服务的可扩展性。
文档编号H04L29/08GK101252600SQ200810066529
公开日2008年8月27日 申请日期2008年3月31日 优先权日2008年3月31日
发明者王福臣 申请人:腾讯科技(深圳)有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1