CN102630058A - 一种缓冲区中媒体流的管理方法及装置 - Google Patents

一种缓冲区中媒体流的管理方法及装置 Download PDF

Info

Publication number
CN102630058A
CN102630058A CN2012100796873A CN201210079687A CN102630058A CN 102630058 A CN102630058 A CN 102630058A CN 2012100796873 A CN2012100796873 A CN 2012100796873A CN 201210079687 A CN201210079687 A CN 201210079687A CN 102630058 A CN102630058 A CN 102630058A
Authority
CN
China
Prior art keywords
data stream
road
duration
video data
audio data
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
Application number
CN2012100796873A
Other languages
English (en)
Other versions
CN102630058B (zh
Inventor
李昌盛
黄双彩
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Shenzhen Skyworth Digital Technology Co Ltd
Shenzhen Skyworth Software Co Ltd
Original Assignee
Shenzhen Skyworth Digital Technology Co Ltd
Shenzhen Skyworth Software Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Shenzhen Skyworth Digital Technology Co Ltd, Shenzhen Skyworth Software Co Ltd filed Critical Shenzhen Skyworth Digital Technology Co Ltd
Priority to CN201210079687.3A priority Critical patent/CN102630058B/zh
Publication of CN102630058A publication Critical patent/CN102630058A/zh
Application granted granted Critical
Publication of CN102630058B publication Critical patent/CN102630058B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Abstract

本发明实施例公开了一种缓冲区中媒体流的管理方法,包括:对媒体流进行解复用,得到对应的数据流,数据流包括:音频数据流和视频数据流;获取每一路音频数据流及每一路视频数据流的时长信息;当每一路音频数据流及每一路视频数据流的时长均低于预设的下限值时,停止播放所述数据流;当至少有一路音频数据流或视频数据流的时长高于预设的下限值时,继续播放所述数据流。本发明还提供了一种缓冲区中媒体流的管理装置。采用本发明,可以减小底层硬件缓冲所带来的误差,提高用户体验。

Description

一种缓冲区中媒体流的管理方法及装置
技术领域
本发明涉及通信领域,尤其涉及一种缓冲区中媒体流的管理方法及装置。
背景技术
现有技术中,对缓冲区中媒体流的管理方法如下:获取缓冲区内的媒体流的数据尺寸(即字节数),如果媒体流的数据尺寸低于下水线,则停止播放媒体流并缓冲媒体流,直到媒体流的数据尺寸高于上水线后,重新开始播放媒体流。
缓冲区在确定媒体流的数据尺寸时,通常不会把从缓冲区流入到底层硬件缓冲(音视频解码装置)的媒体流考虑在内。这是因为获取这些流入底层硬件缓冲的媒体流的实际数据尺寸需要得知底层硬件缓冲的大小,但是在不同的硬件平台下,从底层获取硬件缓冲的实际数据尺寸是不同的,再加上在有些硬件平台下是不能获取到底层硬件缓冲信息的,这无疑使得获取这些流入底层硬件缓冲的媒体流的实际数据尺寸变得十分困难。但是,如果不获取从缓冲区流入到底层硬件缓冲的媒体流的数据尺寸,就会存在一定的数据尺寸误差,会导致当媒体流的实际数据尺寸未低于下水线时,缓冲区因未考虑到底层硬件缓冲而误认为当前媒体流的数据尺寸已低于下水线,从而过早的停止对媒体流的播放。
发明内容
本发明实施例所要解决的技术问题在于,提供一种缓冲区中媒体流的管理方法及装置,可以减小底层硬件缓冲所造成的误差。
为了解决上述技术问题,本发明实施例提供了一种缓冲区中媒体流的管理方法,包括:
对媒体流进行解复用,得到对应的数据流,所述数据流包括:音频数据流和视频数据流;
获取每一路音频数据流及每一路视频数据流的时长信息;
当每一路音频数据流及每一路视频数据流的时长均低于预设的下限值时,停止播放所述数据流;
当至少有一路音频数据流或视频数据流的时长高于预设的下限值时,继续播放所述数据流。
其中,所述获取缓冲区内的每一路音频数据流及每一路视频数据流的时长信息包括:
获取缓冲区内每一路音频数据流及每一路视频数据流的首尾时间戳信息;
通过计算所述获取的首尾时间戳的差值,确定每一路音频数据流及每一路视频数据流的时长。
    其中,所述获取缓冲区内的每一路音频数据流及每一路视频数据流的时长信息之后还包括:
当至少有一路音频数据流或视频数据流的时长高于预设的上限值时,播放所述数据流;
当每一路音频数据流及每一路视频数据流的时长均低于预设的上限值时,继续缓冲所述数据流。
其中,所述方法还包括:
当每一路音频数据流及每一路视频数据流的时长均低于预设的下限值时,判断所述媒体流是否结束,若是,则播放完残留在缓冲区的数据流;若否,则停止播放数据流。
其中,所述方法还包括:当接收到用户的播放控制指示时,根据所述播放控制指示在缓冲区定位出用户所需要访问的关键帧,并对所述关键帧进行解码,得到用户所需访问的信息,其中所述播放控制指示包括在缓冲区查看快照指示、快进指示、快退指示中的任一项。
相应地,本发明实施例还提供了一种缓冲区中媒体流的管理装置,包括:
解复用模块,用于对媒体流进行解复用,得到对应地数据流,所述数据流包括:音频数据流和视频数据流;
时长信息获取模块,用于获取缓冲区内的每一路音频数据流及每一路视频数据流的时长信息;
第一控制模块,用于当每一路音频数据流及每一路视频数据流的时长均低于预设的下限值时,停止播放所述数据流;当至少有一路音频数据流或视频数据流的时长高于预设的下限值时,继续播放所述数据流。
其中,所述时长信息获取模块包括:
时间戳获取单元,用于获取缓冲区内每一路音频数据流及每一路视频数据流的首尾时间戳信息;
时长确定单元,用于通过计算所述获取的首尾时间戳的差值,确定每一路音频数据流及每一路视频数据流的时长。
其中,所述装置还包括:
第二控制模块,用于当至少有一路音频数据流或视频数据流的时长高于预设的上限值时,播放所述数据流;当每一路音频数据流及每一路视频数据流的时长均低于预设的上限值时,继续缓冲所述数据流。
其中,所述装置还包括:
判断模块,用于当缓冲区内每一路音频数据流及每一路视频数据流的时长均低于下限值时,判断所述媒体流是否结束,若是,则播放完残留在缓冲区的数据流;若否,则停止播放数据流。
其中,所述装置还包括:
关键帧提取模块,用于当接收到用户的播放控制指示时,根据所述播放控制指示在缓冲区定位出用户所需要访问的关键帧,并对所述关键帧进行解码,得到用户所需访问的信息,其中所述播放控制指示包括在缓冲区查看快照指示、快进指示、快退指示中的任一项。
实施本发明实施例,具有如下有益效果:
本发明的实施例将缓冲区内通过解复用得到的每一路的音频数据流和每一路的视频数据流的时长以及预设的下限值进行比较,确定是否播放或者停止播放相应的媒体数据,较大程度地避免由于数据尺寸误差所导致的过早停止播放相应的媒体数据的问题,更好地实现了缓冲区中媒体流的管理,提高了用户的使用体验。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明的缓冲区中媒体流的管理方法的第一实施例的流程示意图;
图2是本发明的缓冲区中媒体流的管理方法的第二实施例流程示意图;
图3是本发明的缓冲区中媒体流的管理方法的第三实施例流程示意图;
图4是本发明的缓冲区中媒体流的管理装置的第一实施例的结构示意图;
图5是图4所示的关键帧提取模块的实施例的结构示意图;
图6是本发明的缓冲区中媒体流的管理装置的第二实施例的结构示意图;
图7是本发明的缓冲区中媒体流的管理装置的第三实施例的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
请参照图1,是本发明的缓冲区中媒体流的管理方法的第一实施例的流程示意图。所述管理方法包括:
步骤S11,对媒体流进行解复用,得到对应数据流,其中数据流包括:音频数据流和视频数据流。
步骤S12,获取缓冲区内的每一路音频数据流及每一路视频数据流的时长信息。
从解复用得到的数据流中可以获取时间戳信息,时间戳包括:PTS(Presentation Time Stamp,显示时间标签)和DTS(Decoding Time Stamp,解码时间标签)。
音频数据流的PTS和DTS是一样的,所以可以通过计算缓冲区内每一路音频数据流的首尾PTS或DTS的差值,来确定每一路音频数据流的时长。
视频数据流的DTS是连续的(PTS在一些情况下如在有前后参考的B帧时是不连续的,因此视频数据流的首尾时间戳的差值最好是通过DTS来获取),所以可以通过计算缓冲区内每一路视频数据流的首尾DTS的差值,来确定每一路视频数据流的时长。
步骤S13,当每一路音频数据流及每一路视频数据流的时长均低于预设的下限值时,停止播放数据流。
步骤S14,当至少有一路音频数据流或视频数据流的时长高于预设的下限值时,继续播放数据流。
由于音视频数据流的格式不同,同样时长的音频数据和视频数据,音频数据尺寸小,视频数据尺寸大。当媒体流从缓冲区流入到底层硬件缓冲时,通常会出现的情况是,更多的音频数据进入了底层硬件缓冲,留在缓冲区内的视频数据的时长远大于音频数据的时长。
本发明的实施例将缓冲区内每一路的音频数据流和每一路的视频数据流的时长与下限值进行比较,只有当所有的音频数据流和视频数据流的时长均低于下限值时,才会停止播放数据流,这就使得当缓冲区内的音频数据流较少时,只要视频数据流的时长不低于下限值就不会停止对数据流的播放,减少了底层硬件缓冲所带来的误差。
请参照图2,是本发明的缓冲区中媒体流的管理方法的第二实施例的流程示意图。所述方法包括:
步骤S21,对媒体流进行解复用,得到对应数据流,其中,数据流包括:音频数据流和视频数据流。。
步骤S22,获取缓冲区内每一路视频数据流及每一路音频数据流的时长信息。
获取缓冲区内每一路视频数据流及每一路音频数据流的时长信息包括以下两个步骤:
步骤A,获取缓冲区内每一路音频数据流及每一路视频数据流的首尾时间戳信息。
步骤B,通过计算获取的首尾时间戳的差值,确定每一路音频数据流及每一路视频数据流的时长。
从解复用得到的数据流中可以获取时间戳信息,时间戳包括:PTS和DTS。音频数据流的PTS和DTS是一样的,所以可以利用PTS或DTS来计算时长,但视频数据流的PTS在一般情况下是不连续的,所以采用DTS来计算时长。
步骤S23,当至少有一路音频数据流或视频数据流的时长高于预设的下限值时,继续播放数据流。
步骤S24,当每一路音频数据流及每一路视频数据流的时长均低于预设的下限值时,进入步骤S27;
步骤S25,当至少有一路音频数据流或视频数据流的时长高于预设的上限值时,播放数据流。
步骤S26,当每一路音频数据流及每一路视频数据流的时长均低于预设的上限值时,继续缓冲数据流。
步骤S27,判断原始媒体流是否结束,若判断结果为是,则播放完残留在缓冲区的数据流,若判断结果为否,则缓冲数据流。
当缓冲区确定原始媒体流结束时,无论当前数据流的时长是否低于下限值,都需播放完缓冲区内残留的数据流。
与音视频数据流不同,字幕流是单独处理的,不将其拿来与上限值和下限值作比较,这是因为字幕流是一种特殊的流,并不是像音视频流一样是连续的流,有可能会存在间隔很长时间才出现一个字幕的情况。
由于音视频数据流的格式不同,同样时长的音频数据流和视频数据流,音频数据流数据尺寸小,视频数据流数据尺寸大。当媒体流从缓冲区流入到底层硬件缓冲时,通常会出现的情况是,更多的音频数据流进入了底层硬件缓冲,留在缓冲区内的视频数据流的时长远大于音频数据流的时长。
本发明的实施例将缓冲区内每一路的音频数据流和每一路的视频数据流的时长与下限值进行比较,只有当所有的音频数据流和视频数据流的时长均低于下限值时,才停止播放媒体流,这就使得当缓冲区内的音频数据流较少时,只要视频数据流的时长不低于下限值就不会停止对媒体流的播放。本发明的实施例还将缓冲区内每一路的音频数据流和每一路的视频数据流的时长与上限值进行比较,只要任一路的音频数据流或视频数据流的时长高于上限值时,就会继续播放数据流,这就使得当缓冲区内的音频数据流较少时,只要视频数据流的时长高于上限值就能继续对数据流进行播放。
相较于现有技术中:因未考虑底层硬件缓冲,而低估缓冲区内的媒体流的当前数据尺寸,最终导致缓冲区在将媒体流的数据尺寸与下水线进行比较时,过早的停止播放媒体流,以及将媒体流的数据尺寸与上水线进行比较时,过晚的开始播放媒体流而言,本发明的实施例在很大程度上缓解了底层硬件缓冲所带来的影响,减小了误差。
请参照图3,是本发明的缓冲区中媒体流的管理方法的第三实施例流程示意图。所述管理方法包括:
步骤S31,对媒体流进行解复用,得到对应数据流,其中,数据流包括:音频数据流和视频数据流。。
步骤S32,获取缓冲区内每一路视频数据流及每一路音频数据流的时长信息。
获取缓冲区内每一路视频数据流及每一路音频数据流的时长信息包括以下两个步骤:
步骤A,获取缓冲区内每一路音频数据流及每一路视频数据流的首尾时间戳信息。
步骤B,通过计算获取的首尾时间戳的差值,确定每一路音频数据流及每一路视频数据流的时长。
从解复用得到的数据流中可以获取时间戳信息,时间戳包括:PTS和DTS。音频数据流的PTS和DTS是一样的,所以可以利用PTS或DTS来计算时长,但视频数据流的PTS在一些情况下是不连续的,所以采用DTS来计算时长。
步骤S33,当每一路音频数据流及每一路视频数据流的时长均低于预设的下限值时,进入步骤S38。
步骤S34,当至少有一路音频数据流或视频数据流的时长高于预设的下限值时,继续播放数据流。
步骤S35,当接收到用户的播放控制指示时,根据播放控制指示在缓冲区定位出用户所需要访问的关键帧,并对关键帧进行解码,得到用户所需访问的信息,其中播放控制指示包括在缓冲区查看快照指示、快进指示、快退指示中的任一项。
在缓冲区内实现查看快照,快进快退等操作,都需要获取关键帧信息,但这些关键帧的信息在媒体流中是无法获取的,只能对媒体流进行解复用后才能得到。
由于音视频数据的格式不同,同样时长的音频数据和视频数据,音频数据尺寸小,视频数据尺寸大。当媒体流从缓冲区流入到底层硬件缓冲时,通常会出现的情况是,更多的音频数据进入了底层硬件缓冲,留在缓冲区内的视频数据的时长远大于音频数据的时长。
本发明的实施例将缓冲区内每一路的音频数据流和每一路的视频数据流的时长与下限值进行比较,只有当所有的音频数据流和视频数据流的时长均低于下限值时,才会停止播放数据流,这就使得当缓冲区内的音频数据流较少时,只要视频数据流的时长不低于下限值就不会停止对数据流的播放,减少了底层硬件缓冲所带来的误差。
图1至图3对本发明实施例的数字电视搜索节目的方法进行了详细的阐述,其执行的主体可以是诸如机顶盒、数字电视一体机和手机电视等数字电视接收终端。
上述对管理缓冲区的方法的实施例进行了详细阐述后,下面将继续结合附图,对相应于上述方法流程的装置进行说明。
请参照图4,是本发明的缓冲区中媒体流的管理装置的第一实施例的结构示意图。所述管理装置100包括:
解复用模块110,用于在媒体流进入缓冲区前,对媒体流进行解复用,得到数据流,所述数据流包括:音频数据流和视频数据流。
时长信息获取模块120,用于获取缓冲区内的每一路音频数据流及每一路视频数据流的时长信息。
从解复用得到的数据流中可以获取时间戳信息,时间戳包括:PTS和DTS。
音频数据流的PTS和DTS是一样的,所以可以通过计算缓冲区内每一路音频数据流的首尾PTS或DTS的差值,来确定每一路音频数据流的时长。
视频数据流的DTS是连续的(PTS在一些情况如在有前后参考的B帧时是不连续的,因此视频数据流的首尾时间戳的差值最好是通过DTS来获取),所以可以通过计算缓冲区内每一路视频数据流的首尾DTS的差值,来确定每一路视频数据流的时长。
第一控制模块130,用于当每一路音频数据流及每一路视频数据流的时长均低于预设的下限值时,停止播放数据流;当至少有一路音频数据流或视频数据流的时长高于预设的下限值时,继续播放数据流。
由于音视频数据流的格式不同,同样时长的音频数据和视频数据,音频数据尺寸小,视频数据尺寸大。当媒体流从缓冲区流入到底层硬件缓冲时,通常会出现的情况是,更多的音频数据进入了底层硬件缓冲,留在缓冲区内的视频数据的时长远大于音频数据的时长。
本发明的实施例将缓冲区内每一路的音频数据流和每一路的视频数据流的时长与下限值进行比较,只有当所有的音频数据流和视频数据流的时长均低于下限值时,才会停止播放数据流,这就使得当缓冲区内的音频数据流较少时,只要视频数据流的时长不低于下限值就不会停止对数据流的播放,减少了底层硬件缓冲所带来的误差。
请参照图5,是图4所示的时长信息获取模块的实施例的结构示意图。所述时长信息获取模块120包括:
时间戳获取单元121,用于获取缓冲区内每一路音频数据流及每一路视频数据流的首尾时间戳信息;
时长确定单元122,用于通过计算获取的首尾时间戳的差值,确定每一路音视流及每一路视频数据流的时长。
从解复用得到的数据流中可以获取时间戳信息,时间戳包括:PTS和DTS。
音频数据流的PTS和DTS是一样的,所以可以通过计算缓冲区内每一路音频数据流的首尾PTS或DTS的差值,来确定每一路音频数据流的时长。
视频数据流的DTS是连续的,所以可以通过计算缓冲区内每一路视频数据流的首尾DTS的差值,来确定每一路视频数据流的时长。
请参照图6,是本发明本发明的缓冲区中媒体流的管理装置的第二实施例的结构示意图。所述管理装置100包括:
解复用模块110,用于在媒体流进入缓冲区前,对媒体流进行解复用,得到数据流,所述数据流包括:音频数据流和视频数据流。
时长信息获取模块120,用于获取缓冲区内的每一路音频数据流及每一路视频数据流的时长信息。
从解复用得到的数据流中可以获取时间戳信息,时间戳包括:PTS和DTS。
音频数据流的PTS和DTS是一样的,所以可以通过计算缓冲区内每一路音频数据流的首尾PTS或DTS的差值,来确定每一路音频数据流的时长。
视频数据流的DTS是连续的,所以可以通过计算缓冲区内每一路视频数据流的首尾DTS的差值,来确定每一路视频数据流的时长。
第一控制模块130,用于当每一路音频数据流及每一路视频数据流的时长均低于预设的下限值时,缓冲数据流;当至少有一路音频数据流或视频数据流的时长高于预设的下限值时,继续播放数据流。
第二控制模块140,用于当至少有一路音频数据流或视频数据流的时长高于预设的上限值时,播放数据流;当每一路音频数据流及每一路视频数据流的时长均低于预设的上限值时,继续缓冲数据流。
判断模块150,用于当缓冲区内每一路音频数据流及每一路视频数据流的时长均低于下限值时,判断所述媒体流是否结束,若是,则播放完残留在缓冲区的数据流;若否,则停止播放数据流。
当缓冲区确定原始媒体流数据结束时,此时无论当前数据流的时长是否低于下限值,都需播放完缓冲区内残留的数据流。
本发明实施例在缓冲区内为每一路视频数据流及每一路音频数据流都维护一个队列,用于保存解复用之后的音视频数据流。
与音视频数据流不同的,字幕流是单独处理的,不将其拿来与上限值和下限值作比较,这是因为字幕流是一种特殊的流,并不是像音视频流一样是连续的流,有可能会存在间隔很长时间才出现一个字幕的情况。
由于音视频数据流的格式不同,同样时长的音频数据流和视频数据流,音频数据流数据尺寸小,视频数据流数据尺寸大。当媒体流从缓冲区流入到底层硬件缓冲时,通常会出现的情况是,更多的音频数据流进入了底层硬件缓冲,留在缓冲区内的视频数据流的时长远大于音频数据流的时长。
本发明的实施例将缓冲区内每一路的音频数据流和每一路的视频数据流的时长与下限值进行比较,只有当所有的音频数据流和视频数据流的时长均低于下限值时,才停止播放数据流,这就使得当缓冲区内的音频数据流较少时,只要视频数据流的时长不低于下限值就不会停止对数据流的播放。本发明的实施例还将缓冲区内每一路的音频数据流和每一路的视频数据流的时长与上限值进行比较,只要任一路的音频数据流或视频数据流的时长高于上限值时,就会继续播放数据流,这就使得当缓冲区内的音频数据流较少时,只要视频数据流的时长高于上限值就能继续对数据流进行播放。
相较于现有技术中:因未考虑底层硬件缓冲,而低估缓冲区内的媒体流的当前数据尺寸,最终导致缓冲区在将媒体流的数据尺寸与下水线进行比较时,过早的停止播放媒体流,以及将媒体流的数据尺寸与上水线进行比较时,过晚的开始播放媒体流而言,本发明的实施例在很大程度上缓解了底层硬件缓冲所带来的影响,减小了误差。
请参照图7,是本发明本发明的缓冲区中媒体流管理装置的第三实施例的结构示意图。所述管理装置100包括:
解复用模块110,用于在媒体流进入缓冲区前,对媒体流进行解复用,得到数据流,所述数据流包括:音频数据流和视频数据流。
时长信息获取模块120,用于获取缓冲区内的每一路音频数据流及每一路视频数据流的时长信息。
从解复用得到的数据流中可以获取时间戳信息,时间戳包括:PTS和DTS。
音频数据流的PTS和DTS是一样的,所以可以通过计算缓冲区内每一路音频数据流的首尾PTS或DTS的差值,来确定每一路音频数据流的时长。
视频数据流的DTS是连续的(PTS在一些情况下如在有前后参考的B帧时,是不连续的,因此视频数据流的首尾时间戳的差值最好是通过DTS来获取),所以可以通过计算缓冲区内每一路视频数据流的首尾DTS的差值,来确定每一路视频数据流的时长。
第一控制模块130,用于当每一路音频数据流及每一路视频数据流的时长均低于预设的下限值时,缓冲数据流;当至少有一路音频数据流或视频数据流的时长高于预设的下限值时,继续播放数据流。
关键帧提取模块160,用于当接收到用户的播放控制指示时,根据播放控制指示在缓冲区定位出用户所需要访问的关键帧,并对关键帧进行解码,得到用户所需访问的信息,其中播放控制指示包括在缓冲区查看快照指示、快进指示、快退指示中的任一项。
在缓冲区内实现查看快照,快进快退等操作,都需要获取关键帧信息,但这些关键帧的信息在媒体流中是无法获取的,只能对媒体流进行解复用后才能得到。
由于音视频数据的格式不同,同样时长的音频数据和视频数据,音频数据尺寸小,视频数据尺寸大。当媒体流从缓冲区流入到底层硬件缓冲时,通常会出现的情况是,更多的音频数据进入了底层硬件缓冲,留在缓冲区内的视频数据的时长远大于音频数据的时长。
本发明的实施例将缓冲区内每一路的音频数据流和每一路的视频数据流的时长与下限值进行比较,只有当所有的音频数据流和视频数据流的时长均低于下限值时,才会停止播放数据流,这就使得当缓冲区内的音频数据流较少时,只要视频数据流的时长不低于下限值就不会停止对数据流的播放,减少了底层硬件缓冲所带来的误差。
本发明在图4至图7所述的缓冲区管理装置可以由诸如机顶盒、数字电视一体机和手机电视等数字电视接收终端来实现。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,所述的存储介质可为磁碟、光盘、只读存储记忆体(Read-Only Memory,ROM)或随机存储记忆体(Random Access Memory,RAM)等。
以上所揭露的仅为本发明一种较佳实施例而已,当然不能以此来限定本发明之权利范围,本领域普通技术人员可以理解实现上述实施例的全部或部分流程,并依本发明权利要求所作的等同变化,仍属于发明所涵盖的范围。

Claims (10)

1.一种缓冲区中媒体流的管理方法,其特征在于,包括:
对媒体流进行解复用,得到对应的数据流,所述数据流包括:音频数据流和视频数据流;
获取每一路音频数据流及每一路视频数据流的时长信息;
当每一路音频数据流及每一路视频数据流的时长均低于预设的下限值时,停止播放所述数据流;
当至少有一路音频数据流或视频数据流的时长高于预设的下限值时,继续播放所述数据流。
2.如权利要求1所述的方法,其特征在于,所述获取缓冲区内的每一路音频数据流及每一路视频数据流的时长信息包括:
获取缓冲区内每一路音频数据流及每一路视频数据流的首尾时间戳信息;
通过计算所述获取的首尾时间戳的差值,确定每一路音频数据流及每一路视频数据流的时长。
3.如权利要求1或2所述的方法,其特征在于,所述获取缓冲区内的每一路音频数据流及每一路视频数据流的时长信息之后还包括:
当至少有一路音频数据流或视频数据流的时长高于预设的上限值时,播放所述数据流;
当每一路音频数据流及每一路视频数据流的时长均低于预设的上限值时,继续缓冲所述数据流。
4.如权利要求1或2所述的方法,其特征在于,所述方法还包括:
当每一路音频数据流及每一路视频数据流的时长均低于预设的下限值时,判断所述媒体流是否结束,若是,则播放完残留在缓冲区的数据流;若否,则停止播放数据流。
5.如权利要求1所述的方法,其特征在于,所述方法还包括:当接收到用户的播放控制指示时,根据所述播放控制指示在缓冲区定位出用户所需要访问的关键帧,并对所述关键帧进行解码,得到用户所需访问的信息,其中所述播放控制指示包括在缓冲区查看快照指示、快进指示、快退指示中的任一项。
6.一种缓冲区中媒体流的管理装置,其特征在于,包括:
解复用模块,用于对媒体流进行解复用,得到对应地数据流,所述数据流包括:音频数据流和视频数据流;
时长信息获取模块,用于获取缓冲区内的每一路音频数据流及每一路视频数据流的时长信息;
第一控制模块,用于当每一路音频数据流及每一路视频数据流的时长均低于预设的下限值时,停止播放所述数据流;当至少有一路音频数据流或视频数据流的时长高于预设的下限值时,继续播放所述数据流。
7.如权利要求6所述的装置,其特征在于,所述时长信息获取模块包括:
时间戳获取单元,用于获取缓冲区内每一路音频数据流及每一路视频数据流的首尾时间戳信息;
时长确定单元,用于通过计算所述获取的首尾时间戳的差值,确定每一路音频数据流及每一路视频数据流的时长。
8.如权利要求6或7所述的装置,其特征在于,所述装置还包括:
第二控制模块,用于当至少有一路音频数据流或视频数据流的时长高于预设的上限值时,播放所述数据流;当每一路音频数据流及每一路视频数据流的时长均低于预设的上限值时,继续缓冲所述数据流。
9.如权利要求6或7所述的装置,其特征在于,所述装置还包括:
判断模块,用于当缓冲区内每一路音频数据流及每一路视频数据流的时长均低于下限值时,判断所述媒体流是否结束,若是,则播放完残留在缓冲区的数据流;若否,则停止播放数据流。
10.如权利要求6所述的装置,其特征在于,所述装置还包括:
关键帧提取模块,用于当接收到用户的播放控制指示时,根据所述播放控制指示在缓冲区定位出用户所需要访问的关键帧,并对所述关键帧进行解码,得到用户所需访问的信息,其中所述播放控制指示包括在缓冲区查看快照指示、快进指示、快退指示中的任一项。
CN201210079687.3A 2012-03-23 2012-03-23 一种缓冲区中媒体流的管理方法及装置 Expired - Fee Related CN102630058B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201210079687.3A CN102630058B (zh) 2012-03-23 2012-03-23 一种缓冲区中媒体流的管理方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201210079687.3A CN102630058B (zh) 2012-03-23 2012-03-23 一种缓冲区中媒体流的管理方法及装置

Publications (2)

Publication Number Publication Date
CN102630058A true CN102630058A (zh) 2012-08-08
CN102630058B CN102630058B (zh) 2016-02-17

Family

ID=46588196

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201210079687.3A Expired - Fee Related CN102630058B (zh) 2012-03-23 2012-03-23 一种缓冲区中媒体流的管理方法及装置

Country Status (1)

Country Link
CN (1) CN102630058B (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107484009A (zh) * 2017-09-12 2017-12-15 上海脉淼信息科技有限公司 一种适用于网络直播的流媒体播放方法和装置
WO2021217435A1 (zh) * 2020-04-28 2021-11-04 青岛海信传媒网络技术有限公司 流媒体同步方法及显示设备

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20010025316A1 (en) * 2000-03-22 2001-09-27 Oh Ji Soo Data processing apparatus in a time-based billing video-on-demand system and method therefor
CN1859567A (zh) * 2006-03-07 2006-11-08 华为技术有限公司 一种数字电视解码方法和系统
CN101466044A (zh) * 2007-12-19 2009-06-24 康佳集团股份有限公司 一种流媒体音视频同步播放的方法及其系统
CN101582285A (zh) * 2009-07-02 2009-11-18 福州思迈特数码科技有限公司 录音高效播放的方法

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20010025316A1 (en) * 2000-03-22 2001-09-27 Oh Ji Soo Data processing apparatus in a time-based billing video-on-demand system and method therefor
CN1859567A (zh) * 2006-03-07 2006-11-08 华为技术有限公司 一种数字电视解码方法和系统
CN101466044A (zh) * 2007-12-19 2009-06-24 康佳集团股份有限公司 一种流媒体音视频同步播放的方法及其系统
CN101582285A (zh) * 2009-07-02 2009-11-18 福州思迈特数码科技有限公司 录音高效播放的方法

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107484009A (zh) * 2017-09-12 2017-12-15 上海脉淼信息科技有限公司 一种适用于网络直播的流媒体播放方法和装置
WO2021217435A1 (zh) * 2020-04-28 2021-11-04 青岛海信传媒网络技术有限公司 流媒体同步方法及显示设备

Also Published As

Publication number Publication date
CN102630058B (zh) 2016-02-17

Similar Documents

Publication Publication Date Title
CN100454996C (zh) 用于创建扩展功能数字视频盘的方法和装置
CN103856812B (zh) 一种视频播放方法及装置
CN100429942C (zh) 视频音频再生装置与视频音频再生方法
JP6226432B2 (ja) 同期化されたストリーム・パッキング
US10129587B2 (en) Fast switching of synchronized media using time-stamp management
KR101316579B1 (ko) Mp4 파일 구성 장치 및 복구 장치, mp4 파일 구성 방법 및 복구 방법
CN102215429A (zh) 一种用于移动电视的录制方法
KR100604831B1 (ko) 오디오에 부가 영상과 문자를 동기시켜 재생하는오디오/비디오 재생 장치 및 그 방법
KR20090039408A (ko) 컨텐츠의 줄거리 정보 제공 방법 및 장치
KR101711009B1 (ko) 영상 저장장치, 영상 재생장치, 영상 저장방법, 영상 제공방법, 저장매체 및 촬영장치
CN103841451A (zh) 多媒体播放方法、装置及终端
CN102630058A (zh) 一种缓冲区中媒体流的管理方法及装置
CN101836439A (zh) 运动图像解码装置
JP2016103714A (ja) 録画再生装置
CN101803378B (zh) 用于访问媒体文件格式的元数据的方法
CN103778929A (zh) 蓝光盘播放器和在蓝光盘播放器中显示字幕的方法
US9263090B2 (en) Image processing apparatus, image processing method, and program
KR100619994B1 (ko) 이동통신 단말기의 멀티미디어 재생 방법
CN105338411A (zh) 视频播放处理方法及系统
US20080298781A1 (en) Apparatus for recording audio-video data and method of recording audio-video data
JP2012049956A (ja) 運転記録装置に搭載可能な半導体集積回路およびその動作方法
JP4215075B2 (ja) 情報処理装置
US20150255119A1 (en) Display apparatus and method for editing and displaying recorded video content
JP2016116098A (ja) 録画再生装置
JP2005348078A (ja) 録画装置

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
CB02 Change of applicant information

Address after: 518000 Guangdong city of Shenzhen province Nanshan District Gao Xin Road Building A14, SKYWORTH

Applicant after: SHENZHEN SKYWORTH DIGITAL TECHNOLOGY Co.,Ltd.

Applicant after: SHENZHEN SKYWORTH SOFTWARE Co.,Ltd.

Address before: 518000 Guangdong city of Shenzhen province Nanshan District Gao Xin Road Building A14, SKYWORTH

Applicant before: SHENZHEN SKYWORTH DIGITAL TECHNOLOGY Co.,Ltd.

Applicant before: SHENZHEN SKYWORTH SOFTWARE Co.,Ltd.

COR Change of bibliographic data
C14 Grant of patent or utility model
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20160217