CN102006501A - 流媒体播放控制方法、装置和流媒体播放器 - Google Patents
流媒体播放控制方法、装置和流媒体播放器 Download PDFInfo
- Publication number
- CN102006501A CN102006501A CN 201010542432 CN201010542432A CN102006501A CN 102006501 A CN102006501 A CN 102006501A CN 201010542432 CN201010542432 CN 201010542432 CN 201010542432 A CN201010542432 A CN 201010542432A CN 102006501 A CN102006501 A CN 102006501A
- Authority
- CN
- China
- Prior art keywords
- data
- streaming media
- code stream
- data volume
- media server
- 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
- 238000000034 method Methods 0.000 title claims abstract description 31
- 230000005540 biological transmission Effects 0.000 claims description 48
- 238000001514 detection method Methods 0.000 claims description 14
- 230000011664 signaling Effects 0.000 claims description 14
- 238000012360 testing method Methods 0.000 claims description 13
- 230000003044 adaptive effect Effects 0.000 abstract description 4
- 238000005457 optimization Methods 0.000 abstract description 4
- 230000006978 adaptation Effects 0.000 description 6
- 238000012546 transfer Methods 0.000 description 5
- 230000007812 deficiency Effects 0.000 description 3
- 230000000694 effects Effects 0.000 description 3
- 101100400452 Caenorhabditis elegans map-2 gene Proteins 0.000 description 2
- 238000011056 performance test Methods 0.000 description 2
- 241001269238 Data Species 0.000 description 1
- 238000004590 computer program Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000011897 real-time detection Methods 0.000 description 1
- 238000004088 simulation Methods 0.000 description 1
Images
Landscapes
- Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
Abstract
本发明实施例提供一种流媒体播放控制方法、装置和流媒体播放器。方法包括:对缓存区中接收的可伸缩码流的数据量进行检测;若所述可伸缩码流的数据量小于向流媒体服务器请求的数据量,则向所述流媒体服务器请求减小所述码流中每帧数据中的增强层数据量;若所述可伸缩码流的数据量等于所述向流媒体服务器请求的数据量,则向所述流媒体服务器请求增加所述码流中每帧数据中的增强层数据量。本发明可实现对发送端发送的码流进行自适应请求控制,优化网络和系统资源的利用,提高接收端的视频播放质量。
Description
技术领域
本发明涉及信息技术领域,特别涉及一种流媒体播放控制方法、装置和流媒体播放器。
背景技术
目前,流媒体服务器向接收方发送的视频信号通常采用可伸缩视频编码,可伸缩视频编码把视频信号编码成基本层和增强层,如果网络带宽不足,则流媒体服务器只将视频信号的基本层数据发送到接收方,但这种情况下,接收方解码后的视频质量不高。当带宽变大时,流媒体服务器可以将增强层的数据与基本层的数据叠加发送至接收端,使接收方解码后的视频更加清晰。
现有的流媒体播放方法,流媒体服务器通过检测网络带宽来分层发送码流,但网络的带宽是动态的,并且数据传输的时延和丢包现象亦是不可预测的,因此,流媒体服务器难于根据这些不确定因素向接收方发送合适的码流,进而影响接收方解码后的视频播放效果。
发明内容
本发明实施例提供了一种流媒体播放控制方法、装置和流媒体播放器,以解决现有技术中流媒体服务器难于根据网络的带宽、时延和丢包率等情况向接收方发送合适码流,进而影响接收方解码后的视频播放效果的问题。
本发明实施例提供一种流媒体播放控制方法,包括:
对缓存区中接收的可伸缩码流的数据量进行检测;
若所述可伸缩码流的数据量小于向流媒体服务器请求的数据量,则向所述流媒体服务器请求减小所述码流中每帧数据中的增强层数据量;若所述可伸缩码流的数据量等于所述向流媒体服务器请求的数据量,则向所述流媒体服务器请求增加所述码流中每帧数据中的增强层数据量。
本发明实施例还提供一种流媒体播放控制装置,包括:
检测模块,用于对缓存区中接收的可伸缩码流的数据量进行检测;
控制模块,用于判断所述检测模块检测出所述可伸缩码流的数据量是否小于向流媒体服务器请求的数据量;若所述可伸缩码流的数据量小于向流媒体服务器请求的数据量,则向所述流媒体服务器请求减小所述码流中每帧数据中的增强层数据量;若所述可伸缩码流的数据量等于所述向流媒体服务器请求的数据量,则向所述流媒体服务器请求增加所述码流中每帧数据中的增强层数据量。
本发明实施例还提供一种流媒体播放器,包括:数据接收模块,用于作为接收可伸缩码流的缓存区;数据解码模块,用于对所述数据接收模块接收的可伸缩码流进行解码;显示输出模块,用于显示所述数据解码模块解码后的视频;还包括本发明实施例提供的流媒体播放控制装置。
本发明实施例提供的流媒体播放控制方法、装置和流媒体播放器,接收端实时检测缓存区中接收的可伸缩码流的数据量,并根据可伸缩码流的数据量请求流媒体服务器增加或减少发送的码流中每帧数据中的增强层数据量,从而实现对发送端发送的码流进行自适应请求控制,优化了网络和系统资源的利用,提高接收端的视频播放质量。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本发明提供的流媒体播放控制方法第一实施例的流程图;
图2为本发明提供的流媒体播放控制方法第二实施例的流程图;
图3为本发明提供的流媒体播放控制装置第一实施例的结构示意图;
图4为本发明提供的流媒体播放控制装置第二实施例的结构示意图;
图5为本发明提供的流媒体播放器第一实施例的结构示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
图1为本发明提供的流媒体播放控制方法第一实施例的流程图,如图1所示,该方法包括:
S101、对缓存区中接收的可伸缩码流的数据量进行检测;
S102、若可伸缩码流的数据量小于向流媒体服务器请求的数据量,则向流媒体服务器请求减小码流中每帧数据中的增强层数据量;若可伸缩码流的数据量等于向流媒体服务器请求的数据量,则向流媒体服务器请求增加码流中每帧数据中的增强层数据量。
流媒体服务器向接收方发送的视频信号采用可伸缩视频编码,即将视频信号编码成基本层和增强层。其中,基本层是保证接收方的媒体播放器能够播放视频信号的基本保证,因此,流媒体服务器必需将基本层中的数据传输至接收方。如果接收方仅接收到基本层中的数据,只能保证流媒体文件的正常播放,但接收端流媒体播放器的画面分辨率较低,效果较差。增强层的数据传输是可以选择的,在网络的带宽充足的情况下,流媒体服务器可以向接收方发送部分或全部的增强层数据,以提高接收端媒体播放器的画面分辨率。但如果网络的带宽不足,则流媒体服务器只能向接收方发送基本层的数据。
流媒体服务器向接收方发送的码流以帧为单位进行传输,在每帧数据中,基本层的数据量是不变的,而增强层的数据量是可以根据网络带宽情况进行调整的,每帧数据中按增强层的数据多少可以分为多个等级。
接收端接收到流媒体服务器发送的视频码流后,首先要将码流数据存储在缓存区内,然后接收端的流媒体播放器从缓存区内读取数据,进行视频播放。通常,缓存区中存储的数据可以是接收端一秒钟内接收到的视频码流的数据量,或者是接收端一定时间内接收到的视频码流的数据量。
可以将接收端在一段时间内向流媒体服务器请求的数据量,与同样的时间长度内缓存区中接收的可伸缩码流的数据量进行比较。如果缓存区中接收的可伸缩码流的数据量小于接收端向流媒体服务器请求的数据量,则表明网络传输状况较差,例如:宽带不充足,传输时延或存在丢包等情况,导致请求的数据量无法完全到达接收端的缓存区,因此,可以向流媒体服务器请求减小码流中每帧数据中的增强层数据量;如果缓存区中接收的可伸缩码流的数据量等于接收端向流媒体服务器请求的数据量,则说明网络传输状况较好,请求的数据量基本能够到达接收端的缓存区,因此,可以向流媒体服务器请求增加码流中每帧数据中的增强层数据量,以提高视频信号的播放质量。
其中,需要说明的是,本发明中所说的缓存区中接收的可伸缩码流的数据量等于接收端向流媒体服务器请求的数据量,实际上并不一定是完全相等,有可能是二者基本一致,或者还有可能是缓存区中接收的可伸缩码流的数据量略小于接收端向流媒体服务器请求的数据量,以上均可视为网络环境较好的情况,都可以向流媒体服务器请求增加码流中每帧数据中的增强层数据量,以提高视频信号的播放质量。
可以看出,本发明提供了对流媒体播放的自适应控制,通过实时检测缓存区中接收的可伸缩码流的数据量,判断出网络传输状况,来相应调整向流媒体服务器请求的码流中每帧数据中的增强层数据量,从而使流媒体服务器能够根据接收端实际接收到的可伸缩码流的数据量,向接收端发送合适的码流,实现网络和系统资源的优化。
本发明实施例提供的流媒体播放控制方法,接收端实时检测缓存区中接收的可伸缩码流的数据量,并根据可伸缩码流的数据量请求流媒体服务器增加或减少发送的码流中每帧数据中的增强层数据量,从而实现对发送端发送的码流进行自适应请求控制,优化了网络和系统资源的利用,提高接收端的视频播放质量。
图2为本发明提供的流媒体播放控制方法第二实施例的流程图,如图2所示,该方法包括:
S201、确定缓存容量的门限值;
S202、对缓存区中接收的可伸缩码流的数据量进行检测;
S203、判断可伸缩码流的数据量是否小于向流媒体服务器请求的数据量,是则执行S204;否则执行S205或执行S208(图2所示为执行S205的情况,执行S208的情况图2中未视出);
S204、向流媒体服务器请求减小码流中每帧数据中的增强层数据量;
S205、判断缓存区中的数据量是否低于缓存区的门限值,是则执行S206或执行S208(图2所示为执行S206的情况,执行S208的情况图2中未视出);
如果缓存区中的数据量等于门限值,即缓存区已满,则说明缓存区没有能力接收更多的数据量,因此,接收端不再向流媒体服务器发起增加或减小码流中每帧数据中的增强层数据量,使流媒体服务器保持发送的码流中每帧数据中的增强层数据量。
S206、向流媒体服务器发送数据和/或信令;
S207、是否接收到流媒体服务器对数据和/或信令的回复信息,是则执行S208;
如果没有接收到流媒体服务器对数据和/或信令的回复信息,则说明网络目前的带宽情况已无法支持更多的数据传输,因此,接收端不再向流媒体服务器发起增加或减小码流中每帧数据中的增强层数据量,使流媒体服务器保持发送的码流中每帧数据中的增强层数据量。
S208、向流媒体服务器请求增加码流中每帧数据中的增强层数据量。
在根据可伸缩码流的数据量与向流媒体服务器请求的数据量,向流媒体服务器请求增加或减小码流中每帧数据中的增强层数据量的基础上,进一步的,还可以对接收端的缓存区的容量,即接收端接收数据量的能力考虑增加或减小码流中每帧数据中的增强层数据量。
其中,接收端接收数据量的能力主要体现在缓存区容量的门限值。由于缓存区中存储的数据可以是接收端一秒钟内接收到的视频码流的数据量,或者是接收端一定时间内接收到的视频码流的数据量。因此,S201确定缓存区门限值可以采用多种方式:
一种优选的实施方式,可以通过预置的流媒体文件对可伸缩码流进行模拟接收测试,获取流媒体文件的性能指标,该流媒体文件的性能指标包括:流媒体文件的编码格式、流媒体文件的传输码率和流媒体文件的传输帧率;根据流媒体文件的编码格式、流媒体文件的传输码率和流媒体文件的传输帧率确定门限值。其中,流媒体文件可以是接收端预先存储的流媒体文件,该流媒体文件与流媒体服务器发送的可伸缩码流的性能指标基本一致,二者具有相同的编码格式、传输码率和传输帧率,从而可以通过对预置的流媒体文件的性能测试来模拟可伸缩码流。
另外,还可以预先获取一些流媒体服务器发送的可伸缩码流,对其进行测试,已获得性能指标,可伸缩码流的性能指标包括:可伸缩码流的编码格式、可伸缩码流的传输码率和可伸缩码流的传输帧率;再直接根据可伸缩码流的编码格式、可伸缩码流的传输码率和可伸缩码流的传输帧率确定所述门限值。当然,缓存区门限值的确定还可以根据经验值,或者实际播放需要来确定,这里并不进行具体限制。
在S203中,如果可伸缩码流的数据量小于向流媒体服务器请求的数据量,则说明网络的传输状况较差。而缓存区的门限值是根据可伸缩码流的性能指标确定的,因此,缓存区中存储的数据一定不会超过门限值,则可执行S204向流媒体服务器请求减小码流中每帧数据中的增强层数据量。
如果执行S203判断出可伸缩码流的数据量与向流媒体服务器请求的数据量基本相等,则可以直接执行S208向流媒体服务器请求增加码流中每帧数据中的增强层数据量。
另外,如果执行S203判断出可伸缩码流的数据量与向流媒体服务器请求的数据量基本相等,作为一种较佳的实施方案,还可以进一步执行S205,判断缓存区中的数据量是否低于缓存区的门限值,如果低于门限值,则说明接收端在一段时间内仍有能力接收更多的数据,因此,可以向流媒体服务器请求增加码流中每帧数据中的增强层数据量,即直接执行S208。
进一步的,考虑到即使缓存区中的数据量低于缓存区的门限值,也只表明了接收端在一段时间内仍有能力接收更多的数据,但此时的网络传输状况未必允许流媒体服务器向接收端发送更多的数据,例如:网络中的带宽刚好能够保证当前码流的传输,而无法支持更多数据的情况。这种情况下,在执行S205判断出缓存区中的数据量低于缓存区的门限值后,还可以进一步对网络传输状况进行测试,测试在保持当前码流正常传输的前提下,接收端和发送端的流媒体服务器之间是否还能传输更多的码流,即执行S206,接收端向流媒体服务器发送数据和/或信令,如果能够收到流媒体服务器的回复信息,则说明目前的网络传输状况能够保证流媒体服务器向接收端发送更多的数据,因此,接收端可以向流媒体服务器请求增加码流中每帧数据中的增强层数据量;如果没有收到流媒体服务器的回复信息,则说明网络传输状况不能保证流媒体服务器向接收端发送更多的数据,因此,接收端可不再向流媒体服务器发起增加或减小码流中每帧数据中的增强层数据量,使流媒体服务器保持当前发送的码流中每帧数据中的增强层数据量。其中,向流媒体服务器发送的数据可以是预置的冗余数据,向流媒体服务器发送的信令可以是一些常用的交互信令。
本发明实施例提供的流媒体播放控制方法,接收端实时检测缓存区中接收的可伸缩码流的数据量,并根据可伸缩码流的数据量请求流媒体服务器增加或减少发送的码流中每帧数据中的增强层数据量,从而实现对发送端发送的码流进行自适应请求控制,优化了网络和系统资源的利用,提高接收端的视频播放质量。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,所述的存储介质可为磁碟、光盘、只读存储记忆体(Read-Only Memory,ROM)或随机存储记忆体(Random Access Memory,RAM)等。
图3为本发明提供的流媒体播放控制装置第一实施例的结构示意图,包括:检测模块11和控制模块12;
检测模块11,用于对缓存区中接收的可伸缩码流的数据量进行检测;
控制模块12,用于判断检测模块11检测出可伸缩码流的数据量是否小于向流媒体服务器请求的数据量;若可伸缩码流的数据量小于向流媒体服务器请求的数据量,则向流媒体服务器请求减小码流中每帧数据中的增强层数据量;若可伸缩码流的数据量等于向流媒体服务器请求的数据量,则向流媒体服务器请求增加码流中每帧数据中的增强层数据量。
具体的,流媒体服务器向接收方发送的视频信号采用可伸缩视频编码,即将视频信号编码成基本层和增强层。其中,流媒体服务器必需将基本层中的数据传输至接收方,流媒体服务器可以选择将部分或全部增强层的数据传输至接收方。在网络的带宽充足的情况下,流媒体服务器可以向接收方发送部分或全部的增强层数据,以提高接收端媒体播放器的画面分辨率。但如果网络的带宽不足,则流媒体服务器只能向接收方发送基本层的数据。
流媒体服务器向接收方发送的码流以帧为单位进行传输,在每帧数据中,基本层的数据量是不变的,而增强层的数据量是可以根据网络带宽情况进行调整的,每帧数据中按增强层的数据多少可以分为多个等级。
接收端接收到流媒体服务器发送的视频码流后,首先要将码流数据存储在缓存区内,然后接收端的流媒体播放器从缓存区内读取数据,进行视频播放。通常,缓存区中存储的数据可以是接收端一秒钟内接收到的视频码流的数据量,或者是接收端一定时间内接收到的视频码流的数据量。
控制模块12将在一段时间内向流媒体服务器请求的数据量,与同样的时间长度内检测模块11检测到的缓存区中接收的可伸缩码流的数据量进行比较,如果检测模块11检测到的可伸缩码流的数据量小于接收端向流媒体服务器请求的数据量,则表明网络传输状况较差,导致请求的数据量无法完全到达接收端的缓存区,则控制模块12可以向流媒体服务器请求减小码流中每帧数据中的增强层数据量;如果检测模块11检测到的可伸缩码流的数据量等于接收端向流媒体服务器请求的数据量,则说明网络传输状况较好,请求的数据量基本能够到达接收端的缓存区,则控制模块12可以向流媒体服务器请求增加码流中每帧数据中的增强层数据量,以提高视频信号的播放质量。
通过检测模块11和控制模块12的配合,实现接收端对流媒体播放的自适应控制,检测模块11实时检测缓存区中接收的可伸缩码流的数据量,控制模块12判断出网络传输状况,来相应调整向流媒体服务器请求的码流中每帧数据中的增强层数据量,从而使流媒体服务器能够根据接收端实际接收到的可伸缩码流的数据量,向接收端发送合适的码流,实现网络和系统资源的优化。
本实施例提供的流媒体播放控制装置,接收端实时检测缓存区中接收的可伸缩码流的数据量,并根据可伸缩码流的数据量请求流媒体服务器增加或减少发送的码流中每帧数据中的增强层数据量,从而实现对发送端发送的码流进行自适应请求控制,优化了网络和系统资源的利用,提高接收端的视频播放质量。
图4为本发明提供的流媒体播放控制装置第二实施例的结构示意图,如图4所示,在前一实施例的基础上,若检测模块11检测出可伸缩码流的数据量等于向流媒体服务器请求的数据量,则控制模块12还用于:
判断可伸缩码流的数据量是否小于缓存区的容量门限值;
若可伸缩码流的数据量小于门限值,则向流媒体服务器请求增加码流中每帧数据中的增强层数据量。
控制模块12还用于:
向流媒体服务器发送数据和/或信令;
若接收到流媒体服务器对数据和/或信令的回复信息,则向流媒体服务器请求增加码流中每帧数据中的增强层数据量。
进一步的,该流媒体播放控制装置还包括:
测试模块13,用于通过预置的流媒体文件对所述可伸缩码流进行模拟接收测试,获取流媒体文件的性能指标,流媒体文件的性能指标包括:流媒体文件的编码格式、流媒体文件的传输码率和流媒体文件的传输帧率;
初始化模块14,用于通过测试模块13获取到的流媒体文件的编码格式、流媒体文件的传输码率和流媒体文件的传输帧率确定缓存区的门限值。
接收端接收数据量的能力主要体现在缓存区容量的门限值。由于缓存区中存储的数据可以是接收端一秒钟内接收到的视频码流的数据量,或者是接收端一定时间内接收到的视频码流的数据量。因此,可以通过测试模块13确定缓存容量的门限值,然后通过初始化模块14对缓存区的门限值进行初始化。
具体的,接收端可以预先存储的流媒体文件,该流媒体文件与流媒体服务器发送的可伸缩码流的性能指标基本一致,二者具有相同的编码格式、传输码率和传输帧率,测试模块13通过对预置的流媒体文件的性能测试来模拟可伸缩码流,获得流媒体文件模拟的可伸缩码流的性能指标。
当接收端的缓存区开始接收可伸缩码流后,检测模块11对缓存区中接收的可伸缩码流的数据量进行实时检测,控制模块12判断可伸缩码流的数据量是否小于向流媒体服务器请求的数据量,如果是,说明网络的传输状况较差,则控制模块12向流媒体服务器请求减小码流中每帧数据中的增强层数据量;如果可伸缩码流的数据量与向流媒体服务器请求的数据量基本一致,则控制模块12可向流媒体服务器请求增加码流中每帧数据中的增强层数据量;
作为一种较佳的实施方式,在控制模块12判断出可伸缩码流的数据量与向流媒体服务器请求的数据量基本一致,则控制模块12还可以进一步判断缓存区中的数据量是否低于缓存区的门限值,以判断缓存区是否还有能力接收更多的数据。如果缓存区中的数据量低于门限值,则控制模块12可向流媒体服务器请求增加码流中每帧数据中的增强层数据量。
另外,考虑到即使缓存区中的数据量低于缓存区的门限值,也只表明了接收端在一段时间内仍有能力接收更多的数据,但此时的网络传输状况未必允许流媒体服务器向接收端发送更多的数据,例如:网络中的带宽刚好能够保证当前码流的传输,而无法支持更多数据的情况。这种情况下,如果控制模块12判断出缓存区中的数据量低于缓存区的门限值,则控制模块12还可以进一步对网络传输状况进行测试,测试在保持当前码流正常传输的前提下,接收端和发送端的流媒体服务器之间是否还能传输更多的码流。控制模块12可以向流媒体服务器发送数据和/或信令,如果能够接收到流媒体服务器对数据和/或信令的回复信息,则说明目前的网络传输状况能够保证流媒体服务器向接收端发送更多的数据,控制模块12进一步向流媒体服务器请求增加码流中每帧数据中的增强层数据量。如果没有收到流媒体服务器的回复信息,则说明网络传输状况不能保证流媒体服务器向接收端发送更多的数据,因此,控制模块12可不再向流媒体服务器发起增加或减小码流中每帧数据中的增强层数据量,使流媒体服务器保持当前发送的码流中每帧数据中的增强层数据量。
本实施例提供的流媒体播放控制装置,接收端实时检测缓存区中接收的可伸缩码流的数据量,并根据可伸缩码流的数据量请求流媒体服务器增加或减少发送的码流中每帧数据中的增强层数据量,从而实现对发送端发送的码流进行自适应请求控制,优化了网络和系统资源的利用,提高接收端的视频播放质量。
本发明提供的流媒体播放控制装置,为实现本发明提供的流媒体播放控制方法的执行装置,其具体执行过程可以参见本发明提供的流媒体播放控制方法实施例。
图5为本发明提供的流媒体播放器第一实施例的结构示意图,如图5所示,该流媒体播放器包括:数据接收模块1、数据解码模块2和显示输出模块3;
数据接收模块1,用于作为接收可伸缩码流的缓存区;数据解码模块2,用于对所述数据接收模块1接收的可伸缩码流进行解码;显示输出模块3,用于显示所述数据解码模块解码后的视频;
还包括流媒体播放控制装置4,该装置用于对缓存区中接收的可伸缩码流的数据量进行检测;若可伸缩码流的数据量小于向流媒体服务器请求的数据量,则向流媒体服务器请求减小码流中每帧数据中的增强层数据量;若可伸缩码流的数据量等于向流媒体服务器请求的数据量,则向流媒体服务器请求增加码流中每帧数据中的增强层数据量。
位于接收端的流媒体播放器中的数据接收模块1接收到流媒体服务器发送的视频码流后,数据解码模块2从数据接收模块1内读取数据,进行解码,然后通过显示输出模块3播放解码后的视频信号。
流媒体播放器中的数据接收模块1作为接收数据的缓存区,数据接收模块1存储的数据可以是一秒钟内接收到的视频码流的数据量,或者是一定时间内接收到的视频码流的数据量。
流媒体播放控制装置4实时对数据接收模块1接收的数据进行检测,对一段时间内向流媒体服务器请求的数据量,与同样的时间长度内数据接收模块1接收的可伸缩码流的数据量进行比较。如果数据接收模块1中接收的可伸缩码流的数据量小于接收端向流媒体服务器请求的数据量,则表明网络传输状况较差,导致请求的数据量无法完全到达接收端的数据接收模块1,则流媒体播放控制装置4可以向流媒体服务器请求减小码流中每帧数据中的增强层数据量;如果数据接收模块1中接收的可伸缩码流的数据量等于接收端向流媒体服务器请求的数据量,则说明网络传输状况较好,请求的数据量基本能够到达接收端的数据接收模块1,则流媒体播放控制装置4可以向流媒体服务器请求增加码流中每帧数据中的增强层数据量,以提高视频信号的播放质量。
通过流媒体播放控制装置4,实现对流媒体播放器的自适应控制,流媒体播放控制装置4实时检测数据接收模块1中接收的可伸缩码流的数据量,判断出网络传输状况,来相应调整向流媒体服务器请求的码流中每帧数据中的增强层数据量,从而使流媒体服务器能够根据数据接收模块1实际接收到的可伸缩码流的数据量,向接收端发送合适的码流,实现网络和系统资源的优化。
本实施例提供的流媒体播放器,接收端实时检测用于接收可伸缩码流的缓存区容量,并根据缓存区的容量情况请求发送端的流媒体服务器增加或减少发送的码流中每帧数据中的增强层数据量,从而实现对发送端发送的码流进行自适应请求控制,优化了网络和系统资源的利用,提高接收端的视频播放质量。
最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。
Claims (10)
1.一种流媒体播放控制方法,其特征在于,包括:
对缓存区中接收的可伸缩码流的数据量进行检测;
若所述可伸缩码流的数据量小于向流媒体服务器请求的数据量,则向所述流媒体服务器请求减小所述码流中每帧数据中的增强层数据量;若所述可伸缩码流的数据量等于所述向流媒体服务器请求的数据量,则向所述流媒体服务器请求增加所述码流中每帧数据中的增强层数据量。
2.根据权利要求1所述的流媒体播放控制方法,其特征在于,若所述可伸缩码流的数据量等于所述向流媒体服务器请求的数据量,则所述方法还包括:
判断所述可伸缩码流的数据量是否小于所述缓存区的容量门限值;
若所述可伸缩码流的数据量小于所述门限值,则向所述流媒体服务器请求增加所述码流中每帧数据中的增强层数据量。
3.根据权利要求2所述的流媒体播放控制方法,其特征在于,若所述可伸缩码流的数据量小于所述门限值,则所述方法还包括:
向所述流媒体服务器发送数据和/或信令;
若接收到所述流媒体服务器对所述数据和/或信令的回复信息,则向所述流媒体服务器请求增加所述码流中每帧数据中的增强层数据量。
4.根据权利要求3所述的流媒体播放控制方法,其特征在于,所述向所述流媒体服务器发送的数据为预先设置的冗余数据。
5.根据权利要求2-4任一项所述的流媒体播放控制方法,其特征在于,所述对缓存区中接收的可伸缩码流的数据量进行检测之前,还包括:
通过预置的流媒体文件对所述可伸缩码流进行模拟接收测试,获取所述流媒体文件的性能指标,所述流媒体文件的性能指标包括:所述流媒体文件的编码格式、所述流媒体文件的传输码率和所述流媒体文件的传输帧率;
根据所述流媒体文件的编码格式、所述流媒体文件的传输码率和所述流媒体文件的传输帧率确定所述门限值。
6.一种流媒体播放控制装置,其特征在于,包括:
检测模块,用于对缓存区中接收的可伸缩码流的数据量进行检测;
控制模块,用于判断所述检测模块检测出所述可伸缩码流的数据量是否小于向流媒体服务器请求的数据量;若所述可伸缩码流的数据量小于向流媒体服务器请求的数据量,则向所述流媒体服务器请求减小所述码流中每帧数据中的增强层数据量;若所述可伸缩码流的数据量等于所述向流媒体服务器请求的数据量,则向所述流媒体服务器请求增加所述码流中每帧数据中的增强层数据量。
7.根据权利要求6所述的流媒体播放控制装置,其特征在于,若所述控制模块判断出所述可伸缩码流的数据量等于所述向流媒体服务器请求的数据量,则所述控制模块还用于:
判断所述可伸缩码流的数据量是否小于所述缓存区的容量门限值;
若所述可伸缩码流的数据量小于所述门限值,则向所述流媒体服务器请求增加所述码流中每帧数据中的增强层数据量。
8.根据权利要求7所述的流媒体播放控制装置,其特征在于,所述控制模块还用于:
向所述流媒体服务器发送数据和/或信令;
若接收到所述流媒体服务器对所述数据和/或信令的回复信息,则向所述流媒体服务器请求增加所述码流中每帧数据中的增强层数据量。
9.根据权利要求7或8所述的流媒体播放控制装置,其特征在于,还包括:
测试模块,用于通过预置的流媒体文件对所述可伸缩码流进行模拟接收测试,获取所述流媒体文件的性能指标,所述流媒体文件的性能指标包括:所述流媒体文件的编码格式、所述流媒体文件的传输码率和所述流媒体文件的传输帧率;
初始化模块,用于通过所述测试模块获取到的所述流媒体文件的编码格式、所述流媒体文件的传输码率和所述流媒体文件的传输帧率确定所述缓存区的门限值。
10.一种流媒体播放器,包括:数据接收模块,用于作为接收可伸缩码流的缓存区;数据解码模块,用于对所述数据接收模块接收的可伸缩码流进行解码;显示输出模块,用于显示所述数据解码模块解码后的视频;其特征在于,还包括权利要求6-9任一项所述的流媒体播放控制装置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN 201010542432 CN102006501B (zh) | 2010-11-11 | 2010-11-11 | 流媒体播放控制方法、装置和流媒体播放器 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN 201010542432 CN102006501B (zh) | 2010-11-11 | 2010-11-11 | 流媒体播放控制方法、装置和流媒体播放器 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN102006501A true CN102006501A (zh) | 2011-04-06 |
CN102006501B CN102006501B (zh) | 2013-06-12 |
Family
ID=43813508
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN 201010542432 Active CN102006501B (zh) | 2010-11-11 | 2010-11-11 | 流媒体播放控制方法、装置和流媒体播放器 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN102006501B (zh) |
Cited By (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103442307A (zh) * | 2013-08-20 | 2013-12-11 | 深圳市融创天下科技股份有限公司 | 播放视频流媒体的方法和装置 |
CN103686195A (zh) * | 2013-11-22 | 2014-03-26 | 华为技术有限公司 | 视频信息处理方法及设备 |
CN103841461A (zh) * | 2014-03-26 | 2014-06-04 | 联想(北京)有限公司 | 信息处理方法、装置及电子设备 |
CN104735485A (zh) * | 2015-03-05 | 2015-06-24 | 上海小蚁科技有限公司 | 一种播放视频的方法及装置 |
CN105635188A (zh) * | 2016-03-31 | 2016-06-01 | 深圳市矽伟智科技有限公司 | 一种可视化内容分发方法及系统 |
CN105872633A (zh) * | 2015-12-04 | 2016-08-17 | 乐视网信息技术(北京)股份有限公司 | 一种视频无缝连播的实现方法和系统 |
CN108200470A (zh) * | 2017-12-20 | 2018-06-22 | 中国联合网络通信集团有限公司 | 一种视频码率调整方法及设备 |
CN109819272A (zh) * | 2018-12-26 | 2019-05-28 | 平安科技(深圳)有限公司 | 视频发送方法、装置、计算机可读存储介质及电子设备 |
CN110856044A (zh) * | 2019-11-19 | 2020-02-28 | 深圳市迅雷网络技术有限公司 | 视频画质增强传输方法以及相关装置 |
CN112019918A (zh) * | 2019-05-28 | 2020-12-01 | 杭州海康威视数字技术股份有限公司 | 一种视频播放方法及设备 |
CN114003191A (zh) * | 2021-10-29 | 2022-02-01 | 歌尔科技有限公司 | 一种屏幕显示方法,装置及介质 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5862450A (en) * | 1995-12-14 | 1999-01-19 | Sun Microsytems, Inc. | Method and apparatus for delivering simultaneous constant bit rate compressed video streams at arbitrary bit rates with constrained drift and jitter |
CN101466034A (zh) * | 2008-12-25 | 2009-06-24 | 华为技术有限公司 | 发送、播放流媒体数据的方法和装置及流媒体点播系统 |
CN101662676A (zh) * | 2009-09-30 | 2010-03-03 | 四川长虹电器股份有限公司 | 流媒体缓冲的处理方法 |
-
2010
- 2010-11-11 CN CN 201010542432 patent/CN102006501B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5862450A (en) * | 1995-12-14 | 1999-01-19 | Sun Microsytems, Inc. | Method and apparatus for delivering simultaneous constant bit rate compressed video streams at arbitrary bit rates with constrained drift and jitter |
CN101466034A (zh) * | 2008-12-25 | 2009-06-24 | 华为技术有限公司 | 发送、播放流媒体数据的方法和装置及流媒体点播系统 |
CN101662676A (zh) * | 2009-09-30 | 2010-03-03 | 四川长虹电器股份有限公司 | 流媒体缓冲的处理方法 |
Cited By (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103442307B (zh) * | 2013-08-20 | 2017-09-29 | 融创天下(上海)科技发展有限公司 | 播放视频流媒体的方法和装置 |
CN103442307A (zh) * | 2013-08-20 | 2013-12-11 | 深圳市融创天下科技股份有限公司 | 播放视频流媒体的方法和装置 |
CN103686195B (zh) * | 2013-11-22 | 2017-04-05 | 华为技术有限公司 | 视频信息处理方法及设备 |
CN103686195A (zh) * | 2013-11-22 | 2014-03-26 | 华为技术有限公司 | 视频信息处理方法及设备 |
WO2015074380A1 (zh) * | 2013-11-22 | 2015-05-28 | 华为技术有限公司 | 视频信息处理方法及设备 |
CN103841461A (zh) * | 2014-03-26 | 2014-06-04 | 联想(北京)有限公司 | 信息处理方法、装置及电子设备 |
CN104735485A (zh) * | 2015-03-05 | 2015-06-24 | 上海小蚁科技有限公司 | 一种播放视频的方法及装置 |
WO2017092317A1 (zh) * | 2015-12-04 | 2017-06-08 | 乐视控股(北京)有限公司 | 一种视频无缝连播的实现方法和系统 |
CN105872633A (zh) * | 2015-12-04 | 2016-08-17 | 乐视网信息技术(北京)股份有限公司 | 一种视频无缝连播的实现方法和系统 |
CN105635188A (zh) * | 2016-03-31 | 2016-06-01 | 深圳市矽伟智科技有限公司 | 一种可视化内容分发方法及系统 |
CN105635188B (zh) * | 2016-03-31 | 2019-07-09 | 深圳市矽伟智科技有限公司 | 一种可视化内容分发方法及系统 |
CN108200470A (zh) * | 2017-12-20 | 2018-06-22 | 中国联合网络通信集团有限公司 | 一种视频码率调整方法及设备 |
CN109819272A (zh) * | 2018-12-26 | 2019-05-28 | 平安科技(深圳)有限公司 | 视频发送方法、装置、计算机可读存储介质及电子设备 |
CN112019918A (zh) * | 2019-05-28 | 2020-12-01 | 杭州海康威视数字技术股份有限公司 | 一种视频播放方法及设备 |
CN110856044A (zh) * | 2019-11-19 | 2020-02-28 | 深圳市迅雷网络技术有限公司 | 视频画质增强传输方法以及相关装置 |
CN114003191A (zh) * | 2021-10-29 | 2022-02-01 | 歌尔科技有限公司 | 一种屏幕显示方法,装置及介质 |
Also Published As
Publication number | Publication date |
---|---|
CN102006501B (zh) | 2013-06-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102006501B (zh) | 流媒体播放控制方法、装置和流媒体播放器 | |
CN101771492A (zh) | 调整流媒体码率的方法和装置 | |
CN110636339B (zh) | 基于码率的调度方法、装置及电子设备 | |
CN102256162B (zh) | 基于实时文件格式转换的优化流媒体点播的方法和系统 | |
US7779443B2 (en) | Wireless communication system and method using a wireless channel | |
CN104219286B (zh) | 流媒体处理方法、装置、客户端、cdn节点服务器及终端 | |
US8438167B2 (en) | Method and device for recording media | |
CN102547449A (zh) | 一种控制终端缓冲媒体流数据的方法、机顶盒及媒体服务器 | |
US8510763B2 (en) | Changing streaming media quality level based on current device resource usage | |
US9420022B2 (en) | Media requests to counter latency and minimize network bursts | |
CN108833996A (zh) | 分布式dash系统中服务节点选择、更新和码率自适应方法 | |
WO2012078329A1 (en) | Wireless channel aware adaptive video bit rate encoding | |
CN102148747A (zh) | 媒体流的发送方法及装置 | |
EP2834746B1 (en) | Pipelining for parallel network connections to transmit a digital content stream | |
CN105872722A (zh) | 一种在线视频起播缓冲系统和方法 | |
CN103237215A (zh) | 播放方法和播放设备 | |
CN114116171A (zh) | 一种数据处理方法、装置及系统 | |
CN112449208B (zh) | 语音处理方法及其装置 | |
CN110225352B (zh) | 一种基于能力协商的云游戏视频编解码选择方法 | |
CN102754439A (zh) | 用于发送通过编解码器压缩的视频内容的方法和设备 | |
CN102142922B (zh) | 数据传输方法及相关设备 | |
CN102217278B (zh) | 一种媒体内容在线适配方法及装置 | |
KR101879439B1 (ko) | 적응적 비트레이트 영상 서비스 방법 | |
CN114143271A (zh) | 一种基于拥塞检测的带宽估算方法及装置 | |
US9654533B2 (en) | Method of adaptively delivering media based on reception status information from media client and apparatus using the same |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant |