CN102209038A - 一种交互式流媒体缓冲的实现方法及其装置 - Google Patents
一种交互式流媒体缓冲的实现方法及其装置 Download PDFInfo
- Publication number
- CN102209038A CN102209038A CN2011101618205A CN201110161820A CN102209038A CN 102209038 A CN102209038 A CN 102209038A CN 2011101618205 A CN2011101618205 A CN 2011101618205A CN 201110161820 A CN201110161820 A CN 201110161820A CN 102209038 A CN102209038 A CN 102209038A
- Authority
- CN
- China
- Prior art keywords
- buffering
- burst
- media object
- streaming media
- piecemeal
- 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
Links
Images
Landscapes
- Information Transfer Between Computers (AREA)
Abstract
本发明实施例公开了一种交互式流媒体缓冲的实现方法及其装置,其中,该方法包括:接收对同一流媒体对象的访问请求;根据访问请求判断流媒体对象是否存在于缓冲分片中;若是,则创建新的缓冲分片,并将流媒体对象储存在新的缓冲分片中;若否,则判断缓冲分片的分配空间是否用完;若缓冲分片的分配空间用完,则在剩余的缓冲分片中储存流媒体对象,若缓冲分片的分配空间未用完,则置换缓冲分片中已分配的缓冲分块中的一个分片。在本发明实施例中,通过调速缓冲分片的大小可以提高缓冲分块的利用率,并降低了流媒体的交互时间;通过保存相同流媒体对象的请求,可以提高资源利用率,并降低服务器的负担,能够提高服务器缓冲的效率及命中率。
Description
技术领域
本发明涉及多媒体网络通信技术领域,尤其涉及一种交互式流媒体缓冲的实现方法及其装置。
背景技术
随着互联网以及第三代移动通信技术(3rd-generation,3G)迅速普及,当前正处于一个全新的网络时代。而流媒体的出现及逐渐普及,推动着网络的进一步发展。现阶段的研究表明,流媒体的出现及普及把网络应用推向了一个广阔的领域,包括:流媒体远程教育,流媒体电影,流媒体电视等。现有流媒体技术中存在着以下一系列的问题:如何使用户在等待时间最短,大多数媒体对象仅被部分访问,访问时出现了大量的交互式动作(如快进/跳进等),每个服务器的平均负荷,以及良好的网络负载。
现有中,常用的缓冲技术会把缓冲内存块的大小划分为S,一个流媒体对象的大小可以是S的倍数,也就是说,能够将一个流媒体对象分成N个S分块(如倍数为N),这样可以随意地替换一个流媒体对象的分片,而不用整个流媒体对象进行替换,可以大大节省缓冲空间,而且缓冲能够用来有效地存储最受欢迎的流媒体对象。
但是,如果有一个请求需要播放一个流媒体,其时间为361-666秒,这个请求可能会分布在缓冲的几个分块中。为了响应该请求,不得不查找分散在缓冲分块中的流媒体对象。不仅增加了信号负担,而且可能会导致与客户端的不同步。其中一种解决该问题的办法是:改变缓冲快S的大小,但是在这样无限增加的情况下,会出现极端情况,要么把整个流媒体对象都放置缓冲分块中,要么就不能够被放置。这种极端情况会严重影响系统效率。
发明内容
本发明的目的在于克服现有技术的不足,本发明提供了一种交互式流媒体缓冲的实现方法及其装置,可以提高缓冲分块的利用率,并降低了流媒体的交互时间。
为了解决上述问题,本发明提出了一种交互式流媒体缓冲的实现方法,,所述方法包括:
接收对同一流媒体对象的访问请求;
根据所述访问请求判断所述流媒体对象是否存在于缓冲分片中;
若是,则创建新的缓冲分片,并将所述流媒体对象储存在所述新的缓冲分片中;
若否,则判断所述缓冲分片的分配空间是否用完;若所述缓冲分片的分配空间用完,则在剩余的缓冲分片中储存所述流媒体对象,若所述缓冲分片的分配空间未用完,则置换所述缓冲分片中已分配的缓冲分块中的一个分片。
优选地,在所述接收同一流媒体对象的访问请求的步骤之前,还包括:将多个相邻的缓冲分块创建成所述缓冲分片。
优选地,所述已分配的缓冲分块中的一个是已分配的缓冲分块中的最后一介分片。
相应地,本发明实施例还公开了一种交互式流媒体缓冲的实现装置,所述实现装置包括:
接收模块,用于接收对同一流媒体对象的访问请求;
第一判断模块,用于根据所述接收模块所接收到的访问请求判断所述流媒体对象是否存在于缓冲分片中;
创建模块,用于当所述第一判断模块的判断结果为是时,创建新的缓冲分片,并将所述流媒体对象储存在所述新的缓冲分片中;
第二判断模块,用于当所述第一判断模块的判断结果为否时,判断所述缓冲分片的分配空间是否用完;
储存模块,用于若所述缓冲分片的分配空间用完,则在剩余的缓冲分片中储存所述流媒体对象;
置换模块,用于若所述缓冲分片的分配空间未用完,则置换所述缓冲分片中已分配的缓冲分块中的一个分片。
优选地,所述创建模块还用于将多个相邻的缓冲分块创建成所述缓冲分片。
优选地,所述已分配的缓冲分块中的一个是已分配的缓冲分块中的最后一个分片。
在本发明实施例中,通过调速缓冲分片的大小可以提高缓冲分块的利用率,并降低了流媒体的交互时间;能在不同的用户请求模式和交互强度下可以提供较低的用户响应时延和链路占用带宽;通过保存相同流媒体对象的请求,可以提高资源利用率,并降低服务器的负担,能够提高服务器缓冲的效率及命中率。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其它的附图。
图1是本发明实施例的交互式流媒体缓冲的实现方法的流程示意图;
图2是本发明实施例中的交互式流媒体对象的内容分片的组成示意图;
图3是本发明实施例的交互式流媒体系统的组成示意图;
图4是本发明实施例的交互式流媒体缓冲过程的示意图;
图5是本发明实施例的交互式流媒体缓冲的实现装置的结构组成示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
图1是本发明实施例的交互式流媒体缓冲的实现方法,如图1所示,该方法包括:
S101,接收对同一流媒体对象的访问请求;
S102,根据访问请求判断流媒体对象是否存在于缓冲分片中;若是,则执行S103,若否,则执行S104;
S103,创建新的缓冲分片,并将流媒体对象储存在新的缓冲分片中;
S104,判断缓冲分片的分配空间是否用完;若是,则执行S105,若否,则执行S106;
S105,在剩余的缓冲分片中储存流媒体对象;
S106,置换缓冲分片中已分配的缓冲分块中的一个分片。
具体实施中,在执行S101之前,还可以包括:
将多个相邻的缓冲分块创建成缓冲分片。
S106中所述及的已分配的缓冲分块中的一个是已分配的缓冲分块中的最后一个分片。
图2示出了本发明实施例中的交互式流媒体对象的内容分片的组成示意图,该缓冲分片储存的是多个相邻的缓冲分块(流媒体分块)。一个流媒体由第一个缓冲分块开始,每k个缓冲分块组成一个缓冲分片。每个缓冲分片有其独立的分配策略和替代策略:缓冲分块中置换和替代的最小单位是分片;当一个分片所在的缓冲分块在缓冲分片内被访问时,同一缓冲分片中任何其它分片都不能被替换;当一个缓冲分块在缓冲分片内被替换策略选中,通常被置换掉的是已分配的缓冲块中的最后一个分片。
下面结合图3、图4对本发明实施例的方法进行详细说明。
在通常的情况,重放时需要2个独立的视频流。客户端R1向流媒体服务器S请求在时间点为t1的流媒体对象。经过了t2长度的时间,客户端R2也向流媒体服务器请求同一流媒体对象,实际上时间戳则为t2-t1,在t2时刻,时间戳为t2-t1的时间内的流媒体对象已经被R1接收。但是,之后向R1发送的视频流也可以满足R2的请求。因此,分配一个缓冲去,把从t2时刻开始向客户端发送的视频流进行保存,则同一个流媒体对象的数据可以满足两个不同客户端的请求。,R2可以向服务器S请求在时间戳为t2-t1的流媒体对象的数据,或者从其它网络中的其它服务器中获得数据。
具体的实施过程如下:不同客户端R1、R2在不同时刻t1、t2(t2>t1)请求相同的流媒体对象;从时间点为t2-t1的开始创建一个新的缓冲分片保存正在传送的流媒体对象;R2从其它服务器获得时间戳为t2-t1的流媒体对象,并从新创建的缓冲分片中获取剩下的流媒体对象。
在本发明实施例的方法中,通过调速缓冲分片的大小可以提高缓冲分块的利用率,并降低了流媒体的交互时间;能在不同的用户请求模式和交互强度下可以提供较低的用户响应时延和链路占用带宽;通过保存相同流媒体对象的请求,可以提高资源利用率,并降低服务器的负担,能够提高服务器缓冲的效率及命中率。
相应地,本发明实施例还公开了一种交互式流媒体缓冲的实现装置,如图4所示,该实现装置包括:
接收模块40,用于接收对同一流媒体对象的访问请求;
第一判断模块41,用于根据接收模块40所接收到的访问请求判断流媒体对象是否存在于缓冲分片中;
创建模块42,用于当第一判断模块41的判断结果为是时,创建新的缓冲分片,并将流媒体对象储存在新的缓冲分片中;
第二判断模块43,用于当第一判断模块41的判断结果为否时,判断缓冲分片的分配空间是否用完;
储存模块44,用于若缓冲分片的分配空间用完,则在剩余的缓冲分片中储存流媒体对象;
置换模块45,用于若缓冲分片的分配空间未用完,则置换缓冲分片中已分配的缓冲分块中的一个。
具体实施中,该创建模块42还用于将多个相邻的缓冲分块创建成缓冲分片。
上述已分配的缓冲分块中的一个是已分配的缓冲分块中的最后一个分片。
图2示出了本发明实施例中的交互式流媒体对象的内容分片的组成示意图,该缓冲分片储存的是多个相邻的缓冲分块(流媒体分块)。一个流媒体由第一个缓冲分块开始,每k个缓冲分块组成一个缓冲分片。每个缓冲分片有其独立的分配策略和替代策略:缓冲分块中置换和替代的最小单位是分片;当一个分片所在的缓冲分块在缓冲分片内被访问时,同一缓冲分片中任何其它分片都不能被替换;当一个缓冲分块在缓冲分片内被替换策略选中,通常被置换掉的是已分配的缓冲块中的最后一个分片。
另外,本发明实施例的装置的工作原理可参见上述方法实施例中结合图2、图3的相关描述。
在本发明实施例的实现装置中,通过调速缓冲分片的大小可以提高缓冲分块的利用率,并降低了流媒体的交互时间;能在不同的用户请求模式和交互强度下可以提供较低的用户响应时延和链路占用带宽;通过保存相同流媒体对象的请求,可以提高资源利用率,并降低服务器的负担,能够提高服务器缓冲的效率及命中率。
以上对本发明实施例所提供的交互式流媒体缓冲的实现及其装置,进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。
Claims (6)
1.一种交互式流媒体缓冲的实现方法,其特征在于,所述方法包括:
接收对同一流媒体对象的访问请求;
根据所述访问请求判断所述流媒体对象是否存在于缓冲分片中;
若是,则创建新的缓冲分片,并将所述流媒体对象储存在所述新的缓冲分片中;
若否,则判断所述缓冲分片的分配空间是否用完;若所述缓冲分片的分配空间用完,则在剩余的缓冲分片中储存所述流媒体对象,若所述缓冲分片的分配空间未用完,则置换所述缓冲分片中已分配的缓冲分块中的一个分片。
2.如权利要求1所述的交互式流媒体缓冲的实现方法,其特征在于,在所述接收同一流媒体对象的访问请求的步骤之前,还包括:
将多个相邻的缓冲分块创建成所述缓冲分片。
3.如权利要求1或2所述的交互式流媒体缓冲的实现方法,其特征在于,所述已分配的缓冲分块中的一个是已分配的缓冲分块中的最后一个分片。
4.一种交互式流媒体缓冲的实现装置,其特征在于,所述实现装置包括:
接收模块,用于接收对同一流媒体对象的访问请求;
第一判断模块,用于根据所述接收模块所接收到的访问请求判断所述流媒体对象是否存在于缓冲分片中;
创建模块,用于当所述第一判断模块的判断结果为是时,创建新的缓冲分片,并将所述流媒体对象储存在所述新的缓冲分片中;
第二判断模块,用于当所述第一判断模块的判断结果为否时,判断所述缓冲分片的分配空间是否用完;
储存模块,用于若所述缓冲分片的分配空间用完,则在剩余的缓冲分片中储存所述流媒体对象;
置换模块,用于若所述缓冲分片的分配空间未用完,则置换所述缓冲分片中已分配的缓冲分块中的一个分片。
5.如权利要求4所述的交互式流媒体缓冲的实现装置,其特征在于,所述创建模块还用于将多个相邻的缓冲分块创建成所述缓冲分片。
6.如权利要求4或5所述的交互式流媒体缓冲的实现装置,其特征在于,所述已分配的缓冲分块中的一个是已分配的缓冲分块中的最后一个分片。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201110161820.5A CN102209038B (zh) | 2011-06-15 | 2011-06-15 | 一种交互式流媒体缓冲的实现方法及其装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201110161820.5A CN102209038B (zh) | 2011-06-15 | 2011-06-15 | 一种交互式流媒体缓冲的实现方法及其装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN102209038A true CN102209038A (zh) | 2011-10-05 |
CN102209038B CN102209038B (zh) | 2015-11-25 |
Family
ID=44697707
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201110161820.5A Active CN102209038B (zh) | 2011-06-15 | 2011-06-15 | 一种交互式流媒体缓冲的实现方法及其装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN102209038B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105554592A (zh) * | 2016-02-02 | 2016-05-04 | 深圳市指点信息科技有限公司 | 一种实现高帧率视频图像采集传输的方法及系统 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1167946A (zh) * | 1996-01-23 | 1997-12-17 | 富士通株式会社 | 响应于对相同文件的多个请求对数据进行分配的装置 |
CN101005371A (zh) * | 2006-01-19 | 2007-07-25 | 思华科技(上海)有限公司 | 流媒体的缓存方法及系统 |
CN101296236A (zh) * | 2008-06-12 | 2008-10-29 | 北京中星微电子有限公司 | 多用户实时访问多媒体数据的方法、系统及数据客户端 |
CN101567840A (zh) * | 2008-04-22 | 2009-10-28 | 深圳市同洲电子股份有限公司 | 一种流媒体数据缓存控制方法和装置 |
-
2011
- 2011-06-15 CN CN201110161820.5A patent/CN102209038B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1167946A (zh) * | 1996-01-23 | 1997-12-17 | 富士通株式会社 | 响应于对相同文件的多个请求对数据进行分配的装置 |
CN101005371A (zh) * | 2006-01-19 | 2007-07-25 | 思华科技(上海)有限公司 | 流媒体的缓存方法及系统 |
CN101567840A (zh) * | 2008-04-22 | 2009-10-28 | 深圳市同洲电子股份有限公司 | 一种流媒体数据缓存控制方法和装置 |
CN101296236A (zh) * | 2008-06-12 | 2008-10-29 | 北京中星微电子有限公司 | 多用户实时访问多媒体数据的方法、系统及数据客户端 |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105554592A (zh) * | 2016-02-02 | 2016-05-04 | 深圳市指点信息科技有限公司 | 一种实现高帧率视频图像采集传输的方法及系统 |
CN105554592B (zh) * | 2016-02-02 | 2019-03-01 | 深圳市指点信息科技有限公司 | 一种实现高帧率视频图像采集传输的方法及系统 |
Also Published As
Publication number | Publication date |
---|---|
CN102209038B (zh) | 2015-11-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103024593A (zh) | 一种网络视频点播加速系统及其播放方法 | |
KR101301004B1 (ko) | 컨텐츠 분산 저장형 멀티미디어 스트리밍 시스템 및 방법 | |
CN107277093A (zh) | 内容分发网络及其负载均衡方法 | |
CN101394362B (zh) | 基于流分片的对多核网络处理器进行负载均衡的方法 | |
CN108833996A (zh) | 分布式dash系统中服务节点选择、更新和码率自适应方法 | |
CN102439934A (zh) | 一种cdn中边缘服务器的多级缓存管理方法与系统 | |
CN101080001B (zh) | 网络电视系统中用于实现媒体内容均衡的装置及其方法 | |
CN102761572B (zh) | 动态调整数据流量的方法及系统 | |
CN106060009A (zh) | 对等网络流媒体点播节点请求转移与缓存替换方法 | |
KR101104729B1 (ko) | 최적의 캐시조각 획득방식을 이용하는 컨텐츠 분산 저장형 멀티미디어 스트리밍 시스템 및 방법 | |
CN102694831A (zh) | 移动终端流媒体数据补偿方法与系统、内容分发网络 | |
JP2012150809A (ja) | P2p基盤のストリーミングサービスでバッファリングを行うシステムおよび方法、並びにクライアントでバッファリングを処理するアプリケーションを配布するシステム | |
CN101741884A (zh) | 一种分布式存储方法和装置 | |
CN101146114A (zh) | 一种流媒体服务器负荷分担方法及其系统 | |
Evensen et al. | Using bandwidth aggregation to improve the performance of quality-adaptive streaming | |
CN101188736A (zh) | 以机顶盒为服务器的流媒体点播系统与方法 | |
CN102137138B (zh) | 缓存协作方法、装置及系统 | |
KR20110137093A (ko) | 무선 통신 시스템에서 녹화된 컨텐츠의 재생 방법 및 장치 | |
KR101252947B1 (ko) | 비디오 청크 분포에 적응적인 푸쉬-풀 혼성 스트리밍 방법 및 장치 | |
Nguyen et al. | An adaptive streaming method of 360 videos over HTTP/2 protocol | |
CN102209038A (zh) | 一种交互式流媒体缓冲的实现方法及其装置 | |
Ponnusamy et al. | Cache Optimization on Hot‐Point Proxy Caching Using Weighted‐Rank Cache Replacement Policy | |
CN108768886A (zh) | 一种SaaS数据访问质量提升方法 | |
Okada et al. | A failsoft scheme for mobile live streaming by scalable video coding | |
Casey et al. | Delivery of high definition video content over bandwidth constrained links in heterogeneous wireless networks |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
CB03 | Change of inventor or designer information |
Inventor after: Zhou Yi Inventor after: Lin Ge Inventor after: Xue Kaijun, Zhou Ge Inventor before: Lu Jianhua Inventor before: Lin Ge Inventor before: Lu Jian Hua Lin Gehan TopAsia |
|
COR | Change of bibliographic data | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant |