CN103491430B - 流媒体数据处理方法和电子设备 - Google Patents
流媒体数据处理方法和电子设备 Download PDFInfo
- Publication number
- CN103491430B CN103491430B CN201210193367.0A CN201210193367A CN103491430B CN 103491430 B CN103491430 B CN 103491430B CN 201210193367 A CN201210193367 A CN 201210193367A CN 103491430 B CN103491430 B CN 103491430B
- Authority
- CN
- China
- Prior art keywords
- flow section
- transmission flow
- transmission
- time
- program
- 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.)
- Active
Links
Landscapes
- Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
Abstract
提供了一种流媒体数据处理方法和电子设备。该方法包括:当接收启动或搜索指令时,接收节目的传输流片段,所述传输流片段具有预定的时间长度;解码并播放接收的传输流片段;当检测到第一预定条件时,确定与该预定条件有关的第一传输流片段;获取该第一传输流片段在节目的播放列表中的位置,从而确定该第一传输流片段相对于节目的起始时间;以及接收该第一传输流片段,并且在解码所述第一传输流片段中的基本流数据时,将每个基本流数据的播放时间戳加上该起始时间,从而使得每个基本流数据具有相对于整个节目的正确的时间戳。
Description
技术领域
本发明涉及电子设备的领域,更具体地,本发明涉及一种数据处理方法、检测方法和电子设备。
背景技术
随着电子产品和网络的发展,在线播放已经变得越来越普遍。不同厂家提出了不同的流媒体标准,例如,HTTP Live Streaming(HLS)是Apple公司提出的一套流媒体标准,但目前只有Apple生产的设备上完全支持。因此,对于非Apple的设备,也已经提出一种流媒体标准是Android Honeycomb(Android v3.0,v3.1,v3.2,v4.01),其已经有一个HLS的实现框架,但是有很多关键问题没有解决。
其中主要的问题有:
问题1:HLS有潜在的三种不连续(DISCONTINUITY):1)遇到m3u8中的标签DISCONTINUITY;2)带宽切换;3)搜索操作。当HLS的DISCONTINUITY发生时,音视频的规格和播放时间戳(PTS)时间会发生跳变,HLS要求播放引擎能够处理传输流(TS流)的这种不连续性。Android中的Stagefright播放引擎无法处理视频时间戳的不连续性,从而可能导致音视频不同步或播放进度错误。
问题2:Android中的Stagefright播放引擎在播放HLS时搜索响应时间过长。
为此,期望提供一种流媒体数据处理方法和电子设备,其能够在出现不连续的情况下以正确的时间戳来处理流媒体数据,并且快速响应播放/搜索操作。
发明内容
根据本发明一个实施例,提供一种流媒体数据处理方法,应用于电子设备,该方法包括:
当接收启动或搜索指令时,接收节目的传输流片段,所述传输流片段具有预定的时间长度;
解码并播放接收的传输流片段;
当检测到第一预定条件时,确定与该预定条件有关的第一传输流片段;
获取该第一传输流片段在节目的播放列表中的位置,从而确定该第一传输流片段相对于节目的起始时间;以及
接收该第一传输流片段,并且在解码所述第一传输流片段中的基本流数据时,将每个基本流数据的播放时间戳加上该起始时间,从而使得每个基本流数据具有相对于整个节目的正确的时间戳。
优选地,所述第一预定条件包括:
播放传输流片段时检测到索引文件中的不连续标签;
播放传输流片段时检测到带宽切换;或者
播放传输流片段时检测到搜索操作。
优选地,确定与该预定条件有关的第一传输流片段包括:
当播放传输流片段时检测到索引文件中的不连续标签时,确定当前播放的传输流片段为第一传输流片段;
当播放传输流片段时检测到带宽切换时,确定当前播放的传输流片段为第一传输流片段;以及
当播放传输流片段时检测到搜索操作时,确定搜索操作指定的新播放位置处的传输流片段为第一传输流片段。
优选地,获取该第一传输流片段在播放列表中的位置,从而确定该第一传输流片段相对于节目的起始时间包括:
获取该第一传输流片段在播放列表中的位置,确定在该播放列表中在该第一传输流片段之前的传输流片段的数量;
将该第一传输流片段之前的所有传输流片段的时间长度求和,获得一总和时间;以及
将该总和时间设为该第一传输流片段相对于节目的起始时间。
优选地,所述的数据处理方法还包括:
记录该起始时间,作为后续的传输流片段中的基本流数据的时间戳校准时间。
优选地,传输流分组以预定单位大小预先进行分割,并且当接收启动或搜索指令时,按照所述预定单位大小的整数倍接收分割后的传输流片段,并且解码和播放接收的分割后的传输流片段。
优选地,所述数据处理方法还包括:
当进行搜索操作后,确定搜索操作指定的新播放位置处的传输流片段为第一传输流片段;
获取与该第一传输流片段对应的起始时间;以及
从获取的起始时间开始播放节目。
根据本发明另一实施例,提供了一种电子设备,包括:
接收单元,配置为当接收启动或搜索指令时,接收节目的传输流片段,所述传输流片段具有预定的时间长度;
解码播放单元,配置为解码并播放接收的传输流片段;
传输流片段确定单元,配置为当检测到第一预定条件时,确定与该预定条件有关的第一传输流片段;
起始时间确定单元,配置为获取该第一传输流片段在节目的播放列表中的位置,从而确定该第一传输流片段相对于节目的起始时间;以及
时间戳校正单元,配置为通过所述接收单元接收该第一传输流片段,并且在通过所述解码播放单元解码所述第一传输流片段中的基本流数据时,将每个基本流数据的播放时间戳加上该起始时间,从而使得每个基本流数据具有相对于整个节目的正确的时间戳。
优选地,所述第一预定条件包括:
播放传输流片段时检测到索引文件中的不连续标签;
播放传输流片段时检测到带宽切换;或者
播放传输流片段时检测到搜索操作。
优选地,所述传输流片段确定单元进一步配置为:
当播放传输流片段时检测到索引文件中的不连续标签时,确定当前播放的传输流片段为第一传输流片段;
当播放传输流片段时检测到带宽切换时,确定当前播放的传输流片段为第一传输流片段;以及
当播放传输流片段时检测到搜索操作时,确定搜索操作指定的新播放位置处的传输流片段为第一传输流片段。
优选地,所述起始时间确定单元进一步配置为:
获取该第一传输流片段在播放列表中的位置,确定在该播放列表中在该第一传输流片段之前的传输流片段的数量;
将该第一传输流片段之前的所有传输流片段的时间长度求和,获得一总和时间;以及
将该总和时间设为该第一传输流片段相对于节目的起始时间。
优选地,所述电子设备还包括记录单元,配置为记录该起始时间,作为后续的传输流片段中的基本流数据的时间戳校准时间。
优选地,传输流分组以预定单位大小预先进行分割,当接收启动或搜索指令时,所述接收单元按照所述预定单位大小的整数倍接收分割后的传输流片段,并且所述解码播放单元解码和播放接收的分割后的传输流片段。
优选地,所述传输流片段确定单元进一步配置为当进行搜索操作后,确定搜索操作指定的新播放位置处的传输流片段为第一传输流片段,所述起始时间确定单元进一步配置为获取与该第一传输流片段对应的起始时间,以及所述解码播放单元进一步配置为从获取的起始时间开始播放节目。
利用根据本发明实施例的流媒体数据处理方法和电子设备,能够在出现不连续的情况下以正确的时间戳来处理流媒体数据,并且快速响应搜索操作。
附图说明
图1是根据本发明实施例的流媒体数据处理方法的流程图;
图2是根据本发明实施例的电子设备的框图。
具体实施方式
下面,将参考附图详细描述根据本发明实施例的流媒体数据处理方法和电子设备。需要说明的是,本发明的流媒体处理方法主要是针对Android平台下的HLS框架。
在描述根据本发明实施例的流媒体数据处理方法和电子设备之前,首先对现有的流媒体播放技术进行简单介绍。
在现有的流系统中,主要包括以下几个组成单元。
ES流(Elementary Stream):也叫基本码流,包含视频、音频或数据的连续码流。
PES流(Packet Elementary Stream):也叫打包的基本码流,是将基本的码流ES流根据需要分成长度不等的数据包,并加上包头就形成了打包的基本码流PES流。
TS流(Transport Stream):也叫传输流,是由固定长度为188字节的包组成,含有独立时基的一个或多个program,一个program又可以包含多个视频、音频、和文字信息的ES流;每个ES流会有不同的PID标示。
节目由多个传输流(TS)片段构成。在播放节目时,首先在本地接收TS片段,然后对该TS片段进行解码,获得PES数据,将PES数据去掉报头就获得ES数据,将ES数据在解码器中进行解码就可以获得一帧一帧的视频数据。需要注意的是,在现有技术中,因为每个ES具有的PTS(播放时间戳)只是指示与前一帧的相对时间的时间标记(即,例如指示与前一帧间隔几秒),所以当出现不连续状况时,该PTS指示的相对时间将不正确,从而导致音视频不同步或播放进度错误。
为此,根据本发明实施例的流媒体数据处理方法100包括:
步骤S101:当接收启动或搜索指令时,接收节目的传输流片段,所述传输流片段具有预定的时间长度。
在一个实施例中,在该步骤中,例如针对某个视频内容,当用户输入开始播放指令时,在本地开始接收对应该视频内容的节目的传输流(TS)片段,每个传输流片段具有预定的时间长度,例如1分钟。在另一实施例中,用户可以对要播放的内容进行搜索,并且在搜索后的位置开始播放。
步骤S102:解码并播放接收的传输流片段。
在一个实施例中,在该步骤中,只要一个TS片段接收完成,就可以开始对其进行解码。如后面提到的,在另一实施例中,当TS片段划分为更小的片时,则不需要等待一个TS片段接收完成,而只需要在最小单位的片接收完成时,就可以开始解码。当解码包括编码的视频数据、音频数据和其它数据(如字幕数据、控制数据等)的ES数据流时,可以获得视频数据、音频数据和其它数据,并且在播放时,根据ES中的PTS标记来控制视频数据的显示、音频数据的输出以及其它数据的输出。
步骤S103:当检测到第一预定条件时,确定与该预定条件有关的第一传输流片段。
在该步骤中,如果检测到第一预定条件,例如播放传输流片段时检测到索引文件中的不连续标签,播放传输流片段时检测到带宽切换,或者播放传输流片段时检测到搜索操作,则意味着从解码器输出的音视频的规格和PTS时间会发生跳变。此时,如果继续根据当前ES中的PTS显示音视频内容,则可能导致音视频内容不同步或者播放进度错误。
举例来说,当检测到带宽切换操作时,由于带宽发生变化,则接收TS片段的比特率改变,此时音视频的输出比特率也改变,如果仍然按照之前的PTS时间输出,则将导致音视频内容的不同步。
因此,针对这样的情况,需要确定出现这样的情况时的第一传输流片段。
步骤S104:获取该第一传输流片段在节目的播放列表中的位置,从而确定该第一传输流片段相对于节目的起始时间。
在该步骤中,检测该第一传输流片段在节目的播放列表中的位置,也就是说,因为节目是由多个TS片段组成,所以需要检测该第一传输流片段在整个TS片段中的位置,从而确定该第一传输流片段相对于节目的起始时间,也就是说,相对于整个节目的绝对时间,而不是相对于前一TS的偏移时间。
步骤S105:接收该第一传输流片段,并且在解码所述第一传输流片段中的基本流数据时,将每个基本流数据的播放时间戳加上该起始时间,从而使得每个基本流数据具有相对于整个节目的正确的时间戳。
在该步骤中,因为在处理第一传输流片段时出现不连续,所以需要接收该第一传输流片段。在接收该第一传输流片段后,因为已经获得该第一传输流片段在整个节目中的绝对时间位置作为该第一传输流片段的起始时间,所以在解码该第一传输流片段中的各个ES流数据时,可以将各个ES流数据的PTS加上该起始时间,从而使得每个ES流数据具有相对于整个节目的正确的时间戳,而与之前的TS流片段没有关联。
具体来说,例如,当播放传输流片段时检测到索引文件中的不连续标签时,确定当前播放的传输流片段为第一传输流片段。或者,当播放传输流片段时检测到带宽切换时,确定当前播放的传输流片段为第一传输流片段。或者,当播放传输流片段时检测到搜索操作时,确定搜索操作指定的新播放位置处的传输流片段为第一传输流片段。
然后,获取该第一传输流片段在播放列表中的位置,确定在该播放列表中在该第一传输流片段之前的传输流片段的数量。例如,根据该第一传输流片段的段号,确定其在播放列表中的位置。然后,可以确定在该第一传输流片段之前的传输流片段的数量。
此后,可以将该第一传输流片段之前的所有传输流片段的时间长度求和,获得一总和时间。因为每个传输流片段的时间长度是预先可知的,所以通过将之前的所有传输流片段的时间长度进行加法操作,就可以获得在该第一传输流片段之前的总时间长度。然后,将该总和时间设为该第一传输流片段相对于节目的起始时间。也就是说,无论发生什么不连续的情况,只要从该起始时间开始播放该第一传输流片段,就可以使得第一传输流片段正确地播放。
然后,还可以将该起始时间记录在该第一传输流片段的属性信息中,作为后续相关的传输流片段中的基本流数据的时间戳校准时间。例如,该第一传输流片段的下一个传输流片段可以参考该第一传输流片段中记录的起始时间信息,将该起始时间加上该第一传输流片段的时间长度,就可以获得自身相对于整个节目的绝对时间位置,从而该下一个传输流片段中的基本流数据也可以获得相对于整个节目的绝对时间位置,而不是与该第一传输流片段的相对时间位置。
在另一实施例中,传输流分组以预定单位大小预先进行分割,并且当接收启动或搜索指令时,按照所述预定单位大小的整数倍接收分割后的传输流片段,并且解码和播放接收的分割后的传输流片段。
具体来说,根据HLS的规定,TS片段可以加密或者不加密,当TS片段加密时,根据前面描述的实施例的方式,可以对加密的TS片段下载完成后进行解密,并且进行解码和播放。
另一方面,当TS片段不加密时,则可以对没有加密的节目进行优化,对其进行进一步分片,然后进行下载。具体来说,因为TS有效数据包的最小单位是188字节,因此启动或搜索后下载的第一个TS片段按照188的整数倍(如1倍、10倍、或100倍等)个字节进行分片下载并缓冲,从而可以使得在整个TS片段下载完成之前就可以将获得的ES数据输入解码器中解码并播放。这样,可以更快地、更实时地播放节目内容,从而提高用户的使用体验。
在进行搜索的实施例中,当进行搜索操作后,确定搜索操作指定的新播放位置处的传输流片段为第一传输流片段。然后根据上面的方式,获取与该第一传输流片段对应的起始时间,并且从获取的起始时间开始播放节目。
此外,在现有技术中,当搜索发生以后,缓存中的数据失效被清空,此时基准PTS也被清空。如果依赖于基准PTS,将无法在上次搜索完成前再次进行搜索。然而,根据本实施例的方法,因为指示相对时间位置的PTS已经校正为现对于整个节目的绝对时间位置的PTS,所以可以消除TS之间的PTS依赖,使得只需要计算处TS段号就可以完成搜索。
此外,在搜索操作时,也可以根据TS片段加密或不加密,在TS片段下载完成后进行解码播放或对TS片段进行分片下载并解码播放。
因此,根据本发明实施例的流媒体处理方法,可以获得每个TS片段相对于节目的绝对时间位置,从而不需要依靠指示与之前TS片段的相对时间位置的播放时间戳来进行播放。因此,可以通过用绝对时间位置校正后的播放时间戳来正确地播放节目,而不管出现何种不连续的情况。此外,还可以任意地进行搜索操作,而不管之前的搜索操作是否完成。
另外,当TS片段为不加密的TS片段时,可以将TS片段划分为更小的片进行下载和解码播放,从而能够更快地响应播放操作。
因此,利用根据本发明实施例的流媒体数据处理方法,能够在出现不连续的情况下以正确的时间戳来处理流媒体数据,并且快速响应播放/搜索操作。
根据本发明另一实施例,提供了一种电子设备200,包括:
接收单元201,配置为当接收启动或搜索指令时,接收节目的传输流片段,所述传输流片段具有预定的时间长度;
解码播放单元202,配置为解码并播放接收的传输流片段;
传输流片段确定单元203,配置为当检测到第一预定条件时,确定与该预定条件有关的第一传输流片段;
起始时间确定单元204,配置为获取该第一传输流片段在节目的播放列表中的位置,从而确定该第一传输流片段相对于节目的起始时间;以及
时间戳校正单元205,配置为通过所述接收单元201接收该第一传输流片段,并且在通过所述解码播放单元202解码所述第一传输流片段中的基本流数据时,将每个基本流数据的播放时间戳加上该起始时间,从而使得每个基本流数据具有相对于整个节目的正确的时间戳。
优选地,所述第一预定条件包括:
播放传输流片段时检测到索引文件中的不连续标签;
播放传输流片段时检测到带宽切换;或者
播放传输流片段时检测到搜索操作。
优选地,所述传输流片段确定单元203进一步配置为:
当播放传输流片段时检测到索引文件中的不连续标签时,确定当前播放的传输流片段为第一传输流片段;
当播放传输流片段时检测到带宽切换时,确定当前播放的传输流片段为第一传输流片段;以及
当播放传输流片段时检测到搜索操作时,确定搜索操作指定的新播放位置处的传输流片段为第一传输流片段。
优选地,所述起始时间确定单元204进一步配置为:
获取该第一传输流片段在播放列表中的位置,确定在该播放列表中在该第一传输流片段之前的传输流片段的数量;
将该第一传输流片段之前的所有传输流片段的时间长度求和,获得一总和时间;以及
将该总和时间设为该第一传输流片段相对于节目的起始时间。
优选地,所述电子设备200还包括记录单元206,配置为记录该起始时间,作为后续的传输流片段中的基本流数据的时间戳校准时间。
优选地,传输流分组以预定单位大小预先进行分割,当接收启动或搜索指令时,所述接收单元201按照所述预定单位大小的整数倍接收分割后的传输流片段,并且所述解码播放单元202解码和播放接收的分割后的传输流片段。
优选地,所述传输流片段确定单元203进一步配置为当进行搜索操作后,确定搜索操作指定的新播放位置处的传输流片段为第一传输流片段,所述起始时间确定单元204进一步配置为获取与该第一传输流片段对应的起始时间,以及所述解码播放单元202进一步配置为从获取的起始时间开始播放节目。
可以理解,根据本实施例的电子设备200可以是专用或通用计算机,其通过执行程序执行上面所述的流媒体数据处理方法。
因此,利用根据本发明实施例的电子设备,能够在出现不连续的情况下以正确的时间戳来处理流媒体数据,并且快速响应播放/搜索操作。
应用实施例一
当在诸如智能手机的电子设备上应用根据本发明实施例的流媒体数据处理方法时,如果用户选择在线观看电影,该电子设备可以根据自身的网络带宽情况自动选择某个传输比特率来接收该电影的传输流数据,并进行解码以获得音视频数据,并且进行播放。
在播放过程中,如果当前的网络带宽情况发生改变,例如由于信号不好,导致传输带宽下降,则该电子设备检测出现带宽变化的传输流片段,并且接收该传输流片段,并且根据上述实施例中的方法,计算该传输流片段的相对于整个节目的绝对时间位置,从而在该传输流片段接收完成并进行解码播放时,能够使得该传输流片段中的音视频数据同步,并且与之前的播放进度相符,从而使得用户能够流畅地观看电影,而不会受网络带宽变化的影响,从而极大地提高用户体验。
应用实施例二
当在诸如智能手机的电子设备上应用根据本发明实施例的流媒体数据处理方法时,如果用户选择在线观看电影,该电子设备可以根据自身的网络带宽情况自动选择某个传输比特率来接收该电影的传输流数据,并进行解码以获得音视频数据,并且进行播放。
在播放过程中,如果用户对当前内容不感兴趣,希望拖动到后面直接进行观看,用户可以进行搜索操作,例如将播放按钮拖动到某个位置。此时,该电子设备可以检测当前播放按钮的位置所对应的传输流片段,并且计算该传输流片段的相对于整个节目的绝对时间位置,从而在该传输流片段接收完成并进行解码播放时,能够使得该传输流片段中的音视频数据同步,从而使得用户能够根据需要自由地选择希望观看的位置,从而极大地提高用户体验。
应用实施例三
当在诸如智能手机的电子设备上应用根据本发明实施例的流媒体数据处理方法时,如果用户选择在线观看电影,该电子设备可以根据自身的网络带宽情况自动选择某个传输比特率来接收该电影的传输流数据,并进行解码以获得音视频数据,并且进行播放。
在播放过程中,如果用户对当前内容不感兴趣,希望拖动到后面直接进行观看,用户可以进行搜索操作,例如将播放按钮拖动到某个位置。此时,还可以给用户提供快速观看的选项。即,根据上面描述的方法,当用户选择快速观看时,该电子设备可以检测当前播放按钮的位置所对应的传输流片段,并且计算该传输流片段的相对于整个节目的绝对时间位置。然后,该电子设备将该传输流片段分给成更小的单元,从而在该一个单元收完成后,就能够立即进行解码播放,从而使得用户能够根据需要更快地观看期望的内容,从而极大地提高用户体验。
需要说明的是,在本说明书中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
最后,还需要说明的是,上述一系列处理不仅包括以这里所述的顺序按时间序列执行的处理,而且包括并行或分别地、而不是按时间顺序执行的处理。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到本发明可借助软件加必需的硬件平台的方式来实现,当然也可以全部通过硬件来实施。基于这样的理解,本发明的技术方案对背景技术做出贡献的全部或者部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例或者实施例的某些部分所述的方法。
以上对本发明进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。
Claims (14)
1.一种流媒体数据处理方法,应用于电子设备,该方法包括:
当接收启动或搜索指令时,接收节目的传输流片段,所述传输流片段具有预定的时间长度;
解码并播放接收的传输流片段;
当检测到第一预定条件时,确定与该预定条件有关的第一传输流片段;
获取该第一传输流片段在节目的播放列表中的位置,从而确定该第一传输流片段相对于节目的起始时间;以及
接收该第一传输流片段,并且在解码所述第一传输流片段中的基本流数据时,将每个基本流数据的播放时间戳加上该起始时间,从而使得每个基本流数据具有相对于整个节目的正确的时间戳。
2.如权利要求1所述的数据处理方法,其中所述第一预定条件包括:
播放传输流片段时检测到索引文件中的不连续标签;
播放传输流片段时检测到带宽切换;或者
播放传输流片段时检测到搜索操作。
3.如权利要求2所述的数据处理方法,其中确定与该预定条件有关的第一传输流片段包括:
当播放传输流片段时检测到索引文件中的不连续标签时,确定当前播放的传输流片段为第一传输流片段;
当播放传输流片段时检测到带宽切换时,确定当前播放的传输流片段为第一传输流片段;以及
当播放传输流片段时检测到搜索操作时,确定搜索操作指定的新播放位置处的传输流片段为第一传输流片段。
4.如权利要求1所述的数据处理方法,其中获取该第一传输流片段在播放列表中的位置,从而确定该第一传输流片段相对于节目的起始时间包括:
获取该第一传输流片段在播放列表中的位置,确定在该播放列表中在该第一传输流片段之前的传输流片段的数量;
将该第一传输流片段之前的所有传输流片段的时间长度求和,获得一总和时间;以及
将该总和时间设为该第一传输流片段相对于节目的起始时间。
5.如权利要求1所述的数据处理方法,还包括:
记录该起始时间,作为后续的传输流片段中的基本流数据的时间戳校准时间。
6.如权利要求1所述的数据处理方法,其中传输流分组以预定单位大小预先进行分割,并且当接收启动或搜索指令时,按照所述预定单位大小的整数倍接收分割后的传输流片段,并且解码和播放接收的分割后的传输流片段。
7.如权利要求1所述的数据处理方法,还包括:
当进行搜索操作后,确定搜索操作指定的新播放位置处的传输流片段为第一传输流片段;
获取与该第一传输流片段对应的起始时间;以及
从获取的起始时间开始播放节目。
8.一种电子设备,包括:
接收单元,配置为当接收启动或搜索指令时,接收节目的传输流片段,所述传输流片段具有预定的时间长度;
解码播放单元,配置为解码并播放接收的传输流片段;
传输流片段确定单元,配置为当检测到第一预定条件时,确定与该预定条件有关的第一传输流片段;
起始时间确定单元,配置为获取该第一传输流片段在节目的播放列表中的位置,从而确定该第一传输流片段相对于节目的起始时间;以及
时间戳校正单元,配置为通过所述接收单元接收该第一传输流片段,并且在通过所述解码播放单元解码所述第一传输流片段中的基本流数据时,将每个基本流数据的播放时间戳加上该起始时间,从而使得每个基本流数据具有相对于整个节目的正确的时间戳。
9.如权利要求8所述的电子设备,其中所述第一预定条件包括:
播放传输流片段时检测到索引文件中的不连续标签;
播放传输流片段时检测到带宽切换;或者
播放传输流片段时检测到搜索操作。
10.如权利要求9所述的电子设备,其中所述传输流片段确定单元进一步配置为:
当播放传输流片段时检测到索引文件中的不连续标签时,确定当前播放的传输流片段为第一传输流片段;
当播放传输流片段时检测到带宽切换时,确定当前播放的传输流片段为第一传输流片段;以及
当播放传输流片段时检测到搜索操作时,确定搜索操作指定的新播放位置处的传输流片段为第一传输流片段。
11.如权利要求8所述的电子设备,其中所述起始时间确定单元进一步配置为:
获取该第一传输流片段在播放列表中的位置,确定在该播放列表中在该第一传输流片段之前的传输流片段的数量;
将该第一传输流片段之前的所有传输流片段的时间长度求和,获得一总和时间;以及
将该总和时间设为该第一传输流片段相对于节目的起始时间。
12.如权利要求8所述的电子设备,还包括记录单元,配置为记录该起始时间,作为后续的传输流片段中的基本流数据的时间戳校准时间。
13.如权利要求8所述的电子设备,其中传输流分组以预定单位大小预先进行分割,当接收启动或搜索指令时,所述接收单元按照所述预定单位大小的整数倍接收分割后的传输流片段,并且所述解码播放单元解码和播放接收的分割后的传输流片段。
14.如权利要求8所述的电子设备,其中所述传输流片段确定单元进一步配置为当进行搜索操作后,确定搜索操作指定的新播放位置处的传输流片段为第一传输流片段,所述起始时间确定单元进一步配置为获取与该第一传输流片段对应的起始时间,以及所述解码播放单元进一步配置为从获取的起始时间开始播放节目。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201210193367.0A CN103491430B (zh) | 2012-06-12 | 2012-06-12 | 流媒体数据处理方法和电子设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201210193367.0A CN103491430B (zh) | 2012-06-12 | 2012-06-12 | 流媒体数据处理方法和电子设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN103491430A CN103491430A (zh) | 2014-01-01 |
CN103491430B true CN103491430B (zh) | 2016-12-14 |
Family
ID=49831342
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201210193367.0A Active CN103491430B (zh) | 2012-06-12 | 2012-06-12 | 流媒体数据处理方法和电子设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN103491430B (zh) |
Families Citing this family (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9794618B2 (en) * | 2015-02-12 | 2017-10-17 | Harman International Industries, Incorporated | Media content playback system and method |
CN106470352B (zh) * | 2015-08-18 | 2020-04-07 | 中兴通讯股份有限公司 | 直播频道播放方法、装置及系统 |
CN105847977A (zh) * | 2016-03-28 | 2016-08-10 | 乐视控股(北京)有限公司 | 流媒体文件处理方法及装置 |
CN106331840B (zh) * | 2016-08-31 | 2019-05-21 | 青岛海信宽带多媒体技术有限公司 | 一种基于hls协议的音视频的跳转播放方法及装置 |
EP3510782A1 (en) * | 2016-09-08 | 2019-07-17 | InterDigital CE Patent Holdings | Method and apparatus for multimedia content distribution |
CN110545472B (zh) * | 2019-09-04 | 2021-04-16 | 北京字节跳动网络技术有限公司 | 视频数据的处理方法、装置、电子设备及计算机可读介质 |
CN114257864B (zh) * | 2022-02-24 | 2023-02-03 | 易方信息科技股份有限公司 | 一种基于HLS格式视频源场景下播放器的seek方法及装置 |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN100450163C (zh) * | 2006-11-30 | 2009-01-07 | 中兴通讯股份有限公司 | 一种移动多媒体广播视音频同步播放的方法 |
CN101489122B (zh) * | 2008-01-15 | 2011-04-13 | 华为技术有限公司 | 实现传输流时间映射的方法、装置及系统 |
CN101631228B (zh) * | 2008-07-18 | 2011-04-06 | 中国科学院声学研究所 | 一种支持dvb cas的网络时移电视实现方法及其系统 |
WO2011068784A1 (en) * | 2009-12-01 | 2011-06-09 | Azuki Systems, Inc. | Method and system for secure and reliable video streaming with rate adaptation |
CN102004760B (zh) * | 2010-11-03 | 2013-08-14 | 深圳市龙视传媒有限公司 | 多媒体文件的存储和播放方法、相关装置及系统 |
-
2012
- 2012-06-12 CN CN201210193367.0A patent/CN103491430B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
CN103491430A (zh) | 2014-01-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103491430B (zh) | 流媒体数据处理方法和电子设备 | |
US8931024B2 (en) | Receiving apparatus and subtitle processing method | |
US20030095790A1 (en) | Methods and apparatus for generating navigation information on the fly | |
JP2008510345A (ja) | ビデオ又はオーディオデータのストリームからのコンテンツ選択 | |
JP6384119B2 (ja) | 受信装置、および送信装置、並びにデータ処理方法 | |
JP2005311550A (ja) | デジタル放送受信装置及び方法 | |
US8706741B2 (en) | Information processing apparatus and play list display method | |
US20150215564A1 (en) | Methods and apparatus for creation of a reference time index for audio/video programming | |
JP2004297628A (ja) | ストリーム切替装置およびその装置にコンテンツを提供する装置 | |
US20180027285A1 (en) | Decoding device, reception device, transmission device, transmission/reception system, decoding method, and storage medium having decoding program stored therein | |
JP2006067280A (ja) | 広告受信機と広告受信システム | |
JP2006270299A (ja) | Cm検出装置およびcm検出方法 | |
JP2015026920A (ja) | コンテンツ録画・再生装置 | |
US8887225B2 (en) | Method and apparatus for reproducing broadcast content, and method and apparatus for providing broadcast content | |
CN101500144A (zh) | 显示控制装置和显示控制方法 | |
JP5672409B1 (ja) | 受信装置、およびデータ処理方法 | |
JP5874870B1 (ja) | 受信装置、および送信装置、並びにデータ処理方法 | |
JP2008211274A (ja) | 映像受信機およびブロードバンド番組検索システム | |
US7400566B2 (en) | Method of sequentially recording programs using calculated reception ending times | |
US20160029074A1 (en) | Apparatus and Method for Processing Program Content Recoding | |
JP4882782B2 (ja) | 字幕放送表示システム及び放送受信装置 | |
JP5672411B1 (ja) | 受信装置、およびデータ処理方法 | |
KR102435049B1 (ko) | 셋탑박스 및 그 동작 방법 | |
JP4546395B2 (ja) | 放送受信制御方法および放送受信装置 | |
JP2000013759A (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 | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant |