CN102625140A - 流媒体服务器以帧为粒度实时下载播放的方法 - Google Patents
流媒体服务器以帧为粒度实时下载播放的方法 Download PDFInfo
- Publication number
- CN102625140A CN102625140A CN2012100714534A CN201210071453A CN102625140A CN 102625140 A CN102625140 A CN 102625140A CN 2012100714534 A CN2012100714534 A CN 2012100714534A CN 201210071453 A CN201210071453 A CN 201210071453A CN 102625140 A CN102625140 A CN 102625140A
- Authority
- CN
- China
- Prior art keywords
- frame
- section
- media server
- streaming media
- time
- 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.)
- Pending
Links
Landscapes
- Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
- Information Transfer Between Computers (AREA)
Abstract
一种流媒体服务器以帧为粒度实时下载播放的方法,涉及媒体服务器间内容的实时下载播放领域,包括步骤:S1.将媒体内容切成连续的切片,为每个切片分配ID和切片索引信息,为媒体内容建立内容索引信息;S2.媒体内容和内容索引信息建立映射,为切片和切片索引信息建立映射;S3.根据点播的媒体内容ID下载内容索引信息;S4.流媒体服务器以帧为粒度下载切片索引信息;根据已下载切片的媒体数据,设置切片索引中当前的有效帧;S5.根据切片索引信息,将点播时间映射到切片内的播放初始帧,并播放初始帧与有效帧之间的所有帧;该方法能在媒体服务器所在集群内部或者上层集群实时下载所需的媒体内容,并以最快的速度将内容推送到用户。
Description
技术领域
本发明涉及媒体服务器间内容的实时下载播放领域,具体来讲涉及流媒体服务器以帧为粒度实时下载播放的方法。
背景技术
流媒体系统,是实时性要求非常高的系统,对于用户点播的响应,要控制在一定的时间范围内,增强用户体验。大型的流媒体系统,设计为分层结构,一个中心集群和很多个边缘集群,每个集群由多个流媒体服务器组成。为分散中心集群的压力,在中心集群和边缘集群之间,可以部署少量的中间集群,作为中心集群的缓存结点,替中心集群服务。中心集群系统作为最大的集群存储所有的媒体内容,边缘集群由于性价比的原因,只能存储部分内容,比如热度相对高的内容。用户按就近接入的原则,由边缘集群提供服务,减少从中心集群到边缘用户的网络路由上的流量,并降低从中心集群到边缘用户的时间延迟。为边缘用户服务的边缘集群,没有存储全部的媒体内容,一定存在着点播内容缺失的情况,并从中心集群下载媒体内容。根据统计,用户点播的媒体内容,很大比例并没有播放完整个内容,如果等到边缘媒体服务器下载完全部的媒体内容后再出流,在响应速度上必定太慢,并且浪费大量的带宽。
发明内容
针对现有技术中存在的缺陷,本发明的目的在于提供一种流媒体服务器以帧为粒度实时下载播放的方法,当内容在流媒体服务器上缺失时,能在媒体服务器所在集群内部或者上层集群实时下载所需的媒体内容,并以最快的速度将内容推送到用户。
为达到以上目的,本发明采取的技术方案是:
一种流媒体服务器以帧为粒度实时下载播放的方法,包括如下步骤:S1.将媒体内容按照相同的播放时间进行流化处理,切成连续的切片,为每个切片分配ID,并为每个切片建立切片索引信息,为媒体内容建立内容索引信息;S2.流媒体服务器为媒体内容和内容索引信息建立映射,为切片和切片索引信息建立映射;S3.点播请求到达流媒体服务器时,流媒体服务器根据点播的媒体内容ID去上层的集群下载内容索引信息,并存储到流媒体服务器的文件系统;S4.根据点播时间,流媒体服务器定位到所点播媒体内容的对应切片,从上层集群或者本集群内的其它流媒体服务器,以帧为粒度下载切片索引信息;其中,流媒体服务器根据已下载切片的媒体数据,参考切片索引信息中每个帧的偏移值,设置切片索引中当前的有效帧;S5.流媒体服务器根据切片索引信息,将点播时间映射到切片内的播放初始帧,并播放初始帧与有效帧之间的所有帧;将被下载切片的缓存,存储在本地磁盘,提供后续的播放。
在上述技术方案的基础上,所述内容索引信息包含媒体内容ID和全部切片ID。
在上述技术方案的基础上,所述切片索引信息至少包括帧长、帧间隔时间、帧类型、帧在切片内的偏移、总帧数、有效帧。
在上述技术方案的基础上,所述媒体内容上传并存储在流媒体服务器的数据磁盘,内容索引信息和切片索引信息存储在媒体服务器的文件系统。
在上述技术方案的基础上,当所述集群内流媒体服务器能力达到上限时,动态地增加服务器,将点播请求调度到新服务器,新服务器完成点播服务。
在上述技术方案的基础上,所述边缘集群向中间集群下载媒体内容的同时,中间集群向中心集群下载媒体内容,并且两条通道都是以切片中的帧为粒度的。
本发明的有益效果在于:
1.本发明中媒体内容的下载播放以帧为粒度进行,由于帧相对较小,可以实时完成播放和下载的同步。
2.所述集群系统很容易扩容,边缘集群加入整个系统很简单,媒体内容边缘不需要预先加载,就可完成实时的点播服务。
3.当存储切片的媒体服务器达到能力上限时,可调度到集群内别的服务器,很容易增强集群的并发能力。
附图说明
图1为本发明流媒体服务器以帧为粒度实时下载播放的方法流程图。
具体实施方式
以下结合附图对本发明作进一步详细说明。
如图1所示,本发明流媒体服务器以帧为粒度实时下载播放的方法,包括如下步骤:
S1.将媒体内容按照相同的播放时间进行流化处理,切成连续的切片,为每个切片分配ID,并为每个切片建立切片索引信息,所述切片索引信息至少包括帧长、帧间隔时间、帧类型、帧在切片内的偏移、总帧数、有效帧。为媒体内容建立内容索引信息,所述内容索引信息包含媒体内容ID和全部切片ID。
S2.流媒体服务器为媒体内容和内容索引信息建立映射,为切片和切片索引信息建立映射;所述媒体内容上传并存储在流媒体服务器的数据磁盘,内容索引信息和切片索引信息存储在媒体服务器的文件系统。
S3.点播请求到达流媒体服务器时,流媒体服务器根据点播的媒体内容ID去上层的集群下载内容索引信息,并存储到流媒体服务器的文件系统。
S4.根据点播时间,流媒体服务器定位到所点播媒体内容的对应切片,从上层集群或者本集群内的其它流媒体服务器,以帧为粒度下载切片索引信息;其中,流媒体服务器根据已下载切片的媒体数据,参考切片索引信息中每个帧的偏移值,设置切片索引中当前的有效帧;随着下载内容的增加,有效帧也相应增加。
S5.流媒体服务器根据切片索引信息,将点播时间映射到切片内的播放初始帧,并播放初始帧与有效帧之间的所有帧;将被下载切片的缓存,存储在本地磁盘,提供后续的播放。所述边缘集群想中间集群下载媒体内容的同时,中间集群向中心集群下载,并且两条通道都是以切片中的帧为粒度的。当所述集群内流媒体服务器能力达到上限时,可动态地增加服务器,将点播请求调度到新服务器,新服务器完成点播服务。
下面通过具体实施例对本发明做进一步说明。
本实施例中,设定媒体内容ID为1635,片长为16分钟,每帧间隔时间为40ms,假定某个用户点播媒体内容1635,点播时间为从第5分钟开始。具体步骤如下:
S101.按4分钟一个切片,将ID为1635的媒体内容切成4个片断,分别标记为切片:0、1、2、3,建立内容索引,分别为0[0,3)、1[4,7)、2[8,11)、3[12,15),其中0[0,3)表示编号为0的第一个切片,包含从第0分钟(即开始)到第3分钟(不包括第3分钟)的内容;1[4,7)表示编号为1的第二个切片,包含从第4分钟(包括第4分钟)起到第7分钟(不包括第7分钟)的内容;2[8,11)表示编号为2的第三个切片,包含从第8分钟(包括第8分钟)起到第11分钟(不包括第11分钟)的内容;3[12,15)表示编号为3的第四个切片,包含从第12分钟(包括第12分钟)起到第15分钟(不包括第15分钟)的内容。为每个切片建立切片索引,为方便描述,假定每个切片有1000个帧,每个帧长均是1KB。索引信息中帧偏移分别为:0、1、2、3.....,单位为KB;其中,帧偏移的意思是帧与切片起始点之间的字节数,帧间隔全为40ms,VF(Valid Frame,有效帧)此时为0。
S102.流媒体服务器为媒体内容和内容索引信息建立映射,为切片和切片索引信息建立映射。流媒体服务器下载ID为1635的媒体内容索引到本地,定位播放的切片为1。
S103.在切片1中的开始播放时间为1分钟(或者60秒),计算公式为:5%4=1,根据帧间隔计算得到起始播放帧为1500,计算公式为:60*1000/40=1500。
S104.流媒体服务器开始下载切片1,当下载1KB时,VF=1;当下载2KB时,VF=2;当下载1500KB时,VF=1500;随着下载量的增加,VF也随之增加。
S105.流媒体服务器推送帧1500,当下载1501KB时,继续推送帧1501。
S106.流媒体服务器的下载和播放同步前进,直到切片下载播放完成。
本发明不局限于上述实施方式,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也视为本发明的保护范围之内。本说明书中未作详细描述的内容属于本领域专业技术人员公知的现有技术。
Claims (6)
1.一种流媒体服务器以帧为粒度实时下载播放的方法,其特征在于,包括如下步骤:
S1.将媒体内容按照相同的播放时间进行流化处理,切成连续的切片,为每个切片分配ID,并为每个切片建立切片索引信息,为媒体内容建立内容索引信息;
S2.流媒体服务器为媒体内容和内容索引信息建立映射,为切片和切片索引信息建立映射;
S3.点播请求到达流媒体服务器时,流媒体服务器根据点播的媒体内容ID去上层的集群下载内容索引信息,并存储到流媒体服务器的文件系统;
S4.根据点播时间,流媒体服务器定位到所点播媒体内容的对应切片,从上层集群或者本集群内的其它流媒体服务器,以帧为粒度下载切片索引信息;其中,流媒体服务器根据已下载切片的媒体数据,参考切片索引信息中每个帧的偏移值,设置切片索引中当前的有效帧;
S5.流媒体服务器根据切片索引信息,将点播时间映射到切片内的播放初始帧,并播放初始帧与有效帧之间的所有帧;将被下载切片的缓存,存储在本地磁盘,提供后续的播放。
2.如权利要求1所述的流媒体服务器以帧为粒度实时下载播放的方法,其特征在于:所述内容索引信息包含媒体内容ID和全部切片ID。
3.如权利要求1所述的流媒体服务器以帧为粒度实时下载播放的方法,其特征在于:所述切片索引信息至少包括帧长、帧间隔时间、帧类型、帧在切片内的偏移、总帧数、有效帧。
4.如权利要求1所述的流媒体服务器以帧为粒度实时下载播放的方法,其特征在于:所述媒体内容上传并存储在流媒体服务器的数据磁盘,内容索引信息和切片索引信息存储在媒体服务器的文件系统。
5.如权利要求1所述的流媒体服务器以帧为粒度实时下载播放的方法,其特征在于:当所述集群内流媒体服务器能力达到上限时,动态地增加服务器,将点播请求调度到新服务器,新服务器完成点播服务。
6.如权利要求1所述的流媒体服务器以帧为粒度实时下载播放的方法,其特征在于:所述边缘集群向中间集群下载媒体内容的同时,中间集群向中心集群下载媒体内容,并且两条通道都是以切片中的帧为粒度的。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2012100714534A CN102625140A (zh) | 2012-03-19 | 2012-03-19 | 流媒体服务器以帧为粒度实时下载播放的方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2012100714534A CN102625140A (zh) | 2012-03-19 | 2012-03-19 | 流媒体服务器以帧为粒度实时下载播放的方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN102625140A true CN102625140A (zh) | 2012-08-01 |
Family
ID=46564797
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2012100714534A Pending CN102625140A (zh) | 2012-03-19 | 2012-03-19 | 流媒体服务器以帧为粒度实时下载播放的方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN102625140A (zh) |
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102883187A (zh) * | 2012-09-17 | 2013-01-16 | 华为技术有限公司 | 一种时移节目服务方法、设备和系统 |
CN104080014A (zh) * | 2013-03-28 | 2014-10-01 | 浙江大华技术股份有限公司 | 一种实时视频处理方法和装置 |
CN105187950A (zh) * | 2014-05-29 | 2015-12-23 | 中国移动通信集团内蒙古有限公司 | 一种视频文件播放的方法、设备和系统 |
CN105491400A (zh) * | 2015-11-24 | 2016-04-13 | 腾讯科技(深圳)有限公司 | 一种视频流下载方法及其设备 |
CN106412677A (zh) * | 2016-10-28 | 2017-02-15 | 北京奇虎科技有限公司 | 一种回放视频文件的生成方法和装置 |
CN107426629A (zh) * | 2017-06-19 | 2017-12-01 | 网宿科技股份有限公司 | 一种流媒体文件处理方法及直播系统 |
CN109495505A (zh) * | 2018-12-21 | 2019-03-19 | 北京金山云网络技术有限公司 | 流媒体协议转换方法、装置、系统及计算机可读介质 |
CN111356028A (zh) * | 2020-03-16 | 2020-06-30 | 南京巨鲨显示科技有限公司 | 流媒体服务实现文件序列点播的方法和装置 |
CN113709585A (zh) * | 2021-08-25 | 2021-11-26 | 三星电子(中国)研发中心 | 流媒体播放方法和装置 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20050097614A1 (en) * | 2003-10-31 | 2005-05-05 | Pedlow Leo M.Jr. | Bi-directional indices for trick mode video-on-demand |
CN101141627A (zh) * | 2007-10-23 | 2008-03-12 | 深圳市迅雷网络技术有限公司 | 一种流媒体文件的存储系统及方法 |
CN101287107A (zh) * | 2008-05-29 | 2008-10-15 | 腾讯科技(深圳)有限公司 | 媒体文件的点播方法、系统和设备 |
CN101917388A (zh) * | 2009-12-17 | 2010-12-15 | 新奥特(北京)视频技术有限公司 | 一种流媒体数据存储方法及装置 |
-
2012
- 2012-03-19 CN CN2012100714534A patent/CN102625140A/zh active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20050097614A1 (en) * | 2003-10-31 | 2005-05-05 | Pedlow Leo M.Jr. | Bi-directional indices for trick mode video-on-demand |
CN101141627A (zh) * | 2007-10-23 | 2008-03-12 | 深圳市迅雷网络技术有限公司 | 一种流媒体文件的存储系统及方法 |
CN101287107A (zh) * | 2008-05-29 | 2008-10-15 | 腾讯科技(深圳)有限公司 | 媒体文件的点播方法、系统和设备 |
CN101917388A (zh) * | 2009-12-17 | 2010-12-15 | 新奥特(北京)视频技术有限公司 | 一种流媒体数据存储方法及装置 |
Cited By (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102883187B (zh) * | 2012-09-17 | 2015-07-08 | 华为技术有限公司 | 一种时移节目服务方法、设备和系统 |
CN102883187A (zh) * | 2012-09-17 | 2013-01-16 | 华为技术有限公司 | 一种时移节目服务方法、设备和系统 |
CN104080014A (zh) * | 2013-03-28 | 2014-10-01 | 浙江大华技术股份有限公司 | 一种实时视频处理方法和装置 |
CN105187950B (zh) * | 2014-05-29 | 2018-09-25 | 中国移动通信集团内蒙古有限公司 | 一种视频文件播放的方法、设备和系统 |
CN105187950A (zh) * | 2014-05-29 | 2015-12-23 | 中国移动通信集团内蒙古有限公司 | 一种视频文件播放的方法、设备和系统 |
CN105491400B (zh) * | 2015-11-24 | 2020-06-02 | 腾讯科技(深圳)有限公司 | 一种视频流下载方法及其设备 |
CN105491400A (zh) * | 2015-11-24 | 2016-04-13 | 腾讯科技(深圳)有限公司 | 一种视频流下载方法及其设备 |
CN106412677A (zh) * | 2016-10-28 | 2017-02-15 | 北京奇虎科技有限公司 | 一种回放视频文件的生成方法和装置 |
CN107426629A (zh) * | 2017-06-19 | 2017-12-01 | 网宿科技股份有限公司 | 一种流媒体文件处理方法及直播系统 |
CN109495505A (zh) * | 2018-12-21 | 2019-03-19 | 北京金山云网络技术有限公司 | 流媒体协议转换方法、装置、系统及计算机可读介质 |
CN111356028A (zh) * | 2020-03-16 | 2020-06-30 | 南京巨鲨显示科技有限公司 | 流媒体服务实现文件序列点播的方法和装置 |
CN113709585A (zh) * | 2021-08-25 | 2021-11-26 | 三星电子(中国)研发中心 | 流媒体播放方法和装置 |
CN113709585B (zh) * | 2021-08-25 | 2023-09-19 | 三星电子(中国)研发中心 | 流媒体播放方法和装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102625140A (zh) | 流媒体服务器以帧为粒度实时下载播放的方法 | |
CN104980367A (zh) | 一种令牌桶限速方法和装置 | |
IN2014CN02132A (zh) | ||
CN102791032A (zh) | 网络带宽分配方法及终端 | |
CN103763343A (zh) | 一种业务访问处理方法及装置 | |
CN102326161A (zh) | 拓扑敏感的缓存协作 | |
CN107483981B (zh) | 直播资源计算监测分配方法、存储介质、电子设备及系统 | |
CN104980417B (zh) | 一种ugc文件分发方法和设备 | |
CN103164525A (zh) | Web应用发布方法和装置 | |
CN104182487A (zh) | 一种支持多种存储方式的统一存储方法 | |
CN107592304A (zh) | 直播资源计算分配方法、存储介质、电子设备及系统 | |
CN102088623A (zh) | 一种自适应网络下载调度系统和方法 | |
CN105760459A (zh) | 一种分布式数据处理系统及方法 | |
CN104410879B (zh) | 时移实现方法及装置、服务器 | |
CN108633002A (zh) | 一种资源指示方法、相关设备及系统 | |
CN104580834B (zh) | 云播出系统、混合播出系统及云播出方法 | |
CN103516761A (zh) | 一种多终端访问服务器的分时控制方法及云计算系统 | |
CN102780710A (zh) | 基于内容分发网络的节点调度方法 | |
WO2014173366A3 (zh) | 一种实现电信能力群发的方法、装置及系统 | |
CN103473271B (zh) | 一种针对大量数据的优化储存方法 | |
CN103973747B (zh) | 一种获取内容的方法和装置 | |
CN105357317B (zh) | 一种基于多客户端轮循排队的数据上传方法及系统 | |
CN103024605A (zh) | 视频文件的云转码方法和系统 | |
CN102546786A (zh) | 内容分发网络中多媒体文件变长存取的方法和系统 | |
KR20150080183A (ko) | 데이터 센터 네트워크의 동적 트래픽 분배 방법 및 장치 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C12 | Rejection of a patent application after its publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20120801 |