CN105306973B - 一种视频倍速文件的生成方法 - Google Patents

一种视频倍速文件的生成方法 Download PDF

Info

Publication number
CN105306973B
CN105306973B CN201410334191.5A CN201410334191A CN105306973B CN 105306973 B CN105306973 B CN 105306973B CN 201410334191 A CN201410334191 A CN 201410334191A CN 105306973 B CN105306973 B CN 105306973B
Authority
CN
China
Prior art keywords
key frame
speed file
target speed
file
size
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.)
Expired - Fee Related
Application number
CN201410334191.5A
Other languages
English (en)
Other versions
CN105306973A (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.)
Beijing Hiliway Digital Systems Co ltd
Institute of Acoustics CAS
Original Assignee
Beijing Hiliway Digital Systems Co ltd
Institute of Acoustics CAS
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 Beijing Hiliway Digital Systems Co ltd, Institute of Acoustics CAS filed Critical Beijing Hiliway Digital Systems Co ltd
Priority to CN201410334191.5A priority Critical patent/CN105306973B/zh
Publication of CN105306973A publication Critical patent/CN105306973A/zh
Application granted granted Critical
Publication of CN105306973B publication Critical patent/CN105306973B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Television Signal Processing For Recording (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明公开一种视频倍速文件的生成方法;包括:对TS(数据流)原文件进行解析,获取到生成倍速文件所需的信息;根据原文件中所有关键帧的大小总和与目标倍速文件的大小的比例关系,判断选取哪些关键帧作为要填入目标倍速文件中的帧;修改所有选取的关键帧的内容,将修改后的关键帧填入目标倍速文件;修改目标倍速文件中TS包包头的连续计数字段,最终生成目标倍速文件。该方法适用于对TS文件进行倍速文件的生成,生成的倍速文件符合MPEG‑2和数字视频广播(DVB)标准,保证了文件与多媒体设备的兼容性。

Description

一种视频倍速文件的生成方法
技术领域
本发明涉及多媒体技术领域,尤其涉及一种视频倍速文件的生成方法。
背景技术
随着多媒体技术的发展,视频媒体技术也得到广泛应用,用户对视频媒体播放功能的需求也日益增加,快进快退等技术在视频文件播放中的实现得到了越来越多的关注。
对于本地视频媒体文件的快进快退操作,一般是以只播放关键帧的方式实现,这个过程中可以对关键帧进行提取生成倍速文件,这样用户在观看视频时,可以快速准确的定位到需要观看的内容。但这种方式下生成的倍速文件只针对于生成它的服务器有播放效果,不能兼容其他的多媒体播放设备。
DVB的TR101290测试标准是码流监测的一项主要内容,可以检验被监测的码流是否符合MPEG-2和DVB标准。根据DVB最新的TR101290测试标准将DVB/MPEG-2TS流的测试错误指示分为3个等级。3个等级错误中分别包括:PAT错误、连续计数错误、PMT错误等;PCR间隔错误、PCR抖动错误、PTS错误等;数据延迟错误、缓冲器错误等。上述方法未对要提取的关键帧进行某些字段的重新设置,生成的倍速文件会出现DVB的TR101290测试标准中的多个测试错误,不符合MPEG-2和DVB标准。
中国第CN103428213A号专利公开了一种多媒体文件的生成方法。该方法是根据接收的多媒体数据,从中获取待保存的关键帧数据,并对待保存的关键帧数据进行数据信息的设置,最后保存至倍速文件中从而生成倍速文件的。此方法可以保证文件与多媒体播放设备的兼容。但是该方法是每接收一次多媒体数据保存一部分关键帧,但若一次接收的数据中包含关键帧个数较多,有可能会造成生成的倍速文件中前面一部分都是视频关键帧,后面全是为了使文件满足倍速要求而插入的空包,倍速文件中视频数据不均匀,播放效果差,不适用于直接获取了完整的TS文件后再生成倍速文件;且此方法未对插入的空包进行任何设置,生成的倍速文件有可能会出现DVB的TR101290测试标准中PAT错误、PMT错误、PCR间隔错误等。
发明内容
本发明的目的在于克服现有生成视频倍速文件中存在的文件易出现DVB的TR101290测试标准中的多个测试错误,与多媒体播放设备不兼容的缺陷,从而提出一种符合DVB的TR101290测试标准的文件生成方法。
为实现上述目的,本发明提供了一种视频倍速文件的生成方法,该方法包括:
步骤1),解析TS原文件,获取生成倍速文件所需要的信息;
步骤2),根据原文件中所有关键帧的大小总和与目标倍速文件的大小的比例关系,判断选取哪些关键帧作为要填入目标倍速文件中的帧;
步骤3),修改所有选取的关键帧的内容,将修改后的关键帧填入目标倍速文件;
步骤4),修改目标倍速文件中各个类型TS包包头的连续计数字段。
上述技术方案中,所述步骤2)包括:
2-1),根据解析TS原文件所获取的信息,统计所有关键帧的大小和个数,计算目标倍速和所有关键帧大小的乘积;
2-2),将上述所得到的乘积与目标倍速文件的大小进行比较;
目标倍速文件的大小为TS原文件大小与目标倍速的商。如果所得乘积小于等于目标倍速文件的大小,转到步骤2-3);否则,转到步骤2-4)。
2-3),确定所有关键帧都为要填入到目标倍速文件中的帧,转入2-7);
2-4),根据所有关键帧的大小和个数计算每个关键帧的平均大小;
2-5),确定要填入目标倍速文件中的关键帧的个数;
将目标倍速文件的大小除以关键帧的平均大小,所得值即为要填入目标倍速文件中的关键帧的个数。
2-6),从所有关键帧中均匀的选取步骤2-5)确定个数的关键帧作为要填入目标倍速文件中的帧;
2-7),选择关键帧流程结束。
上述技术方案中,所述步骤3)包括:
步骤3-1),选择一个要填入目标倍速文件的关键帧;
步骤3-2),在要填入的关键帧之前填入一次PSI;
步骤3-3),修改要填入关键帧的PTS值和DTS值;
步骤3-4),将一次PSI填入到关键帧的帧尾;
步骤3-5),计算要插入的空包数;
步骤3-6),若上述所计算的空包数小于等于0,则要填入的关键帧后面不插入空包,转入步骤3-8),否则,转到步骤3-7);
步骤3-7),在要填入的关键帧后面插入步骤3-5)所述的空包数的空包,修改空包的内容;
步骤3-8),修改要填入的关键帧中含有PCR字段的TS包的PCR值;
步骤3-9),将修改后的要填入的关键帧填入目标倍速文件;
步骤3-10),判断此关键帧是否为所有选取的关键帧的最后一帧,如果判断结果是肯定的,流程结束,否则转入步骤3-1)。
本发明的优点在于:
1、本发明修改了填入目标文件中的关键帧中PTS值、DTS值和PCR值,保证了倍速文件的可用性以及与多媒体设备的兼容性;
2、本发明对每个要填入的关键帧后插入适量空包进行了码率调整,不仅保证了倍速文件与原文件的传输码率的一致性,也使得倍速文件中视频数据较为均匀,播放时不会出现较长时间的停顿;
3、本发明对要填入的关键帧后插入的空包设置PCR,并在空包中每隔0.5s插入一次PSI,使得生成的倍速文件满足DVB的TR101290测试标准。
附图说明
图1是本发明实施的一种视频倍速文件生成方法的流程图;
图2是本发明实施的判断选取哪些关键帧作为要填入目标倍速文件中的帧的流程图;
图3是本发明实施将选取的关键帧填入目标倍速文件的流程图;
图4是本发明实施的修改后的关键帧的格式。
具体实施方式
下面结合附图,对本发明的技术方案进行进一步的详细描述。
图1是一种视频倍速文件生成方法的流程图,具体包括:
S101,对读取的TS原文件进行解析,获取生成倍速文件所需的信息;
生成倍速文件所需的信息包括PSI、所有音频包在原文件中的包偏移位置、视频关键帧的数量、视频关键帧的大小及其帧头在TS原文件中的包偏移位置;其中关键帧是指I帧,或I帧和部分P帧,视频关键帧的大小等于此关键帧所含的包数与一个TS包所含的字节数(188Byte)的乘积。
S102,根据TS原文件中所有关键帧的大小总和与目标倍速文件的大小的比例关系,判断选取哪些关键帧作为要填入目标倍速文件中的帧;
S103,修改所有选取的关键帧的内容,将修改后的关键帧填入目标倍速文件;
S104,修改目标倍速文件中各个类型TS包包头的连续计数字段。
图2是本发明实施的判断选取哪些关键帧作为要填入目标倍速文件中的帧的流程图,具体包括:
S201,根据解析TS原文件所获取的信息,统计所有关键帧的大小和个数,计算目标倍速和所有关键帧大小的乘积;
S202,将上述所得到的乘积与目标倍速文件的大小进行比较;
目标倍速文件的大小为TS原文件大小与目标倍速的商。如果所得乘积小于等于目标倍速文件的大小,转到S203;否则,转到S204。
S203,确定所有关键帧都为要填入到目标倍速文件中的帧,转入S207;
S204,根据所有关键帧的大小和个数计算每个关键帧的平均大小;
S205,确定要填入目标倍速文件中的关键帧的个数;
将目标倍速文件的大小除以关键帧的平均大小,所得值即为要填入目标倍速文件中的关键帧的个数。
S206,从所有关键帧中均匀的选取这个个数的关键帧作为要填入目标倍速文件中的帧;
S207,选择关键帧流程结束。
图3是本发明实施的将选取的关键帧填入目标倍速文件的流程图。
S301,选择一个要填入目标倍速文件的关键帧;
S302,在要填入的关键帧之前填入一次PSI;
S303,修改要填入的关键帧的PTS值和DTS值;
如果要填入的关键帧是第一个要填入的关键帧,其PTS和DTS需要设置初值;如果是生成正向倍速文件,PTS和DTS可设置一个较小(接近于或等于0)的值;如果是生成负向倍速文件,则PTS和DTS可设置一个较大(接近于或等于PTS和DTS字段全为FF时的值)的值。
如果要填入的关键帧不是第一个要填入的关键帧,计算要填入的关键帧PTS和上一个已填入的关键帧的原有PTS值的差值,和目标倍速修改要填入关键帧的PTS值;DTS值的修改方法与PTS值的修改方法相同;
S304,将一次PSI填入到关键帧的帧尾;
S305,计算要插入的空包数;
首先计算要填入的关键帧和上一个已填入的关键帧修改后的PTS差值,根据这个差值和TS原文件的传输码率计算这两个关键帧帧头之间要传输的包数,然后将此包数减去要填入的关键帧的帧长得到要插入到已填入关键帧后面的空包数。
S306,若上述所计算的空包数小于等于0,则要填入的关键帧后面不插入空包,转入S308,否则,转到S307;
S307,在要填入的关键帧后面插入S305所述的空包数的空包,修改空包的内容;
对第一个空包设置PCR,根据TS源文件的传输码率和要设置的含PCR字段的TS包在目标倍速文件中的包序计算PCR值;填入的空包中每隔0.5s插入一次PSI、每隔40ms设置一次PCR;
S308,修改要填入的关键帧中含PCR字段的TS包的PCR值;
如果要填入的关键帧是第一个要填入的关键帧,且TS包是此关键帧中第一次出现含有PCR字段的TS包,其PCR需要设置初值;如果是生成正向倍速文件,PCR值可设置一个较小(接近于或等于0)的值;如果是生成负向倍速文件,PCR值可设置一个较大(接近于或等于包中PCR字段全为FF时的值)的值。
如果要填入的关键帧是第一个要填入的关键帧,但TS包不是此关键帧中第一次出现含有PCR字段的TS包,或者要填入的关键帧中不是第一个要填入的关键帧,根据TS原文件的传输码率和含PCR字段的TS包在目标倍速文件中的包序计算PCR值,并以此值修改此TS包中PCR字段。
S309,将修改后的要填入的关键帧填入目标倍速文件,修改后的要填入的关键帧的格式见图4;
S310,判断此关键帧是否为所有选取的关键帧的最后一帧,如果判断结果是肯定的,流程结束,否则转入步骤S301。
如果是生成正向倍速文件,将修改后的关键帧填入正向倍速文件的起始位置;如果生成负向倍速文件,则根据TS原文件大小和目标倍速,预先生成一个空文件,此空文件大小要大于等于TS原文件大小和目标倍速的商,然后将修改后的关键帧向前填入空文件的尾部;将每个选取的关键帧按照图3所示的流程填入到目标倍速文件中。
最后应说明,此处所描述的实例仅用于解释本发明,不能以此来限定本发明之权利范围。因此对于在本发明权利要求所作的等同变化,也视为本发明的保护范围。

Claims (2)

1.一种视频倍速文件的生成方法,包括:
步骤1),解析数据流原文件,获取生成倍速文件所需要的信息;
步骤2),根据原文件中所有关键帧的大小总和与目标倍速文件的大小的比例关系,判断选取哪些关键帧作为要填入目标倍速文件中的帧;
步骤3),修改所有选取的关键帧的内容,将修改后的关键帧填入目标倍速文件;
步骤4),修改目标倍速文件中数据流文件包包头的连续计数字段;
所述步骤2)包括:
2-1),根据解析数据流原文件所获取的信息,统计所有关键帧的大小和个数,计算目标倍速和所有关键帧大小的乘积;
2-2),将所得到的乘积与目标倍速文件的大小进行比较;
目标倍速文件的大小为数据流原文件大小与目标倍速的商;如果所得乘积小于等于目标倍速文件的大小,转到步骤2-3);否则,转到步骤2-4);
2-3),确定所有关键帧都为要填入到目标倍速文件中的帧,转入2-7);
2-4),根据所有关键帧的大小和个数计算每个关键帧的平均大小;
2-5),确定要填入目标倍速文件中的关键帧的个数;
将目标倍速文件的大小除以关键帧的平均大小,所得值即为要填入目标倍速文件中的关键帧的个数;
2-6),从所有关键帧中均匀的选取步骤2-5)确定个数的关键帧作为要填入目标倍速文件中的帧;
2-7),选择关键帧流程结束。
2.根据权利要求1所述的视频倍速文件的生成方法,其特征在于,所述步骤3)包括:
步骤3-1),选择一个要填入目标倍速文件的关键帧;
步骤3-2),在要填入的关键帧之前填入一次节目特殊信息;
步骤3-3),修改要填入关键帧的显示时间标签值和解码时间标签值;
步骤3-4),将一次节目特殊信息填入到关键帧的帧尾;
步骤3-5),计算要插入的空包数;
步骤3-6),若上述所计算的空包数小于等于0,则要填入的关键帧后面不插入空包,转入步骤3-8),否则,转到步骤3-7);
步骤3-7),在要填入的关键帧后面插入步骤3-5)所述的空包数的空包,修改空包的内容;
步骤3-8),修改要填入的关键帧中含有节目时钟参考字段的数据流包的节目时钟参考值;
步骤3-9),将修改后的关键帧填入目标倍速文件;
步骤3-10),判断此关键帧是否为所有选取的关键帧的最后一帧,如果判断结果是肯定的,流程结束,否则转入步骤3-1)。
CN201410334191.5A 2014-07-14 2014-07-14 一种视频倍速文件的生成方法 Expired - Fee Related CN105306973B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201410334191.5A CN105306973B (zh) 2014-07-14 2014-07-14 一种视频倍速文件的生成方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201410334191.5A CN105306973B (zh) 2014-07-14 2014-07-14 一种视频倍速文件的生成方法

Publications (2)

Publication Number Publication Date
CN105306973A CN105306973A (zh) 2016-02-03
CN105306973B true CN105306973B (zh) 2018-08-17

Family

ID=55203647

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201410334191.5A Expired - Fee Related CN105306973B (zh) 2014-07-14 2014-07-14 一种视频倍速文件的生成方法

Country Status (1)

Country Link
CN (1) CN105306973B (zh)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101409831A (zh) * 2008-07-10 2009-04-15 浙江师范大学 一种多媒体视频对象处理方法
CN101980533A (zh) * 2010-11-12 2011-02-23 中国华录集团有限公司 一种基于索引文件实现传输流文件特技模式功能的方法
CN103152607A (zh) * 2013-01-10 2013-06-12 上海思华科技股份有限公司 视频超快速粗编方法
CN103428213A (zh) * 2013-08-08 2013-12-04 深圳市同洲电子股份有限公司 一种多媒体文件生成的方法及多媒体设备
CN103686411A (zh) * 2013-12-11 2014-03-26 深圳Tcl新技术有限公司 视频的播放方法及多媒体设备

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7333712B2 (en) * 2002-02-14 2008-02-19 Koninklijke Philips Electronics N.V. Visual summary for scanning forwards and backwards in video content
CN101248668A (zh) * 2005-08-26 2008-08-20 汤姆森特许公司 使用时间分层的特技播放
CN101321265B (zh) * 2007-06-07 2011-03-16 中兴通讯股份有限公司 对等网络媒体点播跨帧播放方式的实现方法及系统
CN101257615A (zh) * 2007-10-25 2008-09-03 复旦大学 基于视频分割技术的流媒体分发和用户vcr操作方法
CN101521782B (zh) * 2008-12-30 2014-06-18 深圳市同洲电子股份有限公司 一种快进退浏览视频的方法、系统及多媒体设备
CN101478680B (zh) * 2008-12-31 2014-03-12 深圳市同洲电子股份有限公司 一种快进退视频文件的生成方法、系统及多媒体设备
CN101478681B (zh) * 2008-12-31 2014-07-30 深圳市同洲电子股份有限公司 一种快进退视频文件的生成方法、系统及多媒体设备
CN101635847B (zh) * 2009-09-02 2011-11-30 中兴通讯股份有限公司 一种流媒体的传输方法、视频播放装置及终端
CN102467940A (zh) * 2010-11-08 2012-05-23 安凯(广州)微电子技术有限公司 一种无索引视频文件快进快退方法、装置以及播放系统

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101409831A (zh) * 2008-07-10 2009-04-15 浙江师范大学 一种多媒体视频对象处理方法
CN101980533A (zh) * 2010-11-12 2011-02-23 中国华录集团有限公司 一种基于索引文件实现传输流文件特技模式功能的方法
CN103152607A (zh) * 2013-01-10 2013-06-12 上海思华科技股份有限公司 视频超快速粗编方法
CN103428213A (zh) * 2013-08-08 2013-12-04 深圳市同洲电子股份有限公司 一种多媒体文件生成的方法及多媒体设备
CN103686411A (zh) * 2013-12-11 2014-03-26 深圳Tcl新技术有限公司 视频的播放方法及多媒体设备

Also Published As

Publication number Publication date
CN105306973A (zh) 2016-02-03

Similar Documents

Publication Publication Date Title
CA2904115C (en) Transmission apparatus, transmission method, reception apparatus, and reception method
CN105916058B (zh) 一种流媒体缓冲播放方法、装置及显示设备
CN105611320B (zh) 收发媒体文件的方法以及使用该方法发送/接收的装置
CA2697765C (en) Method and apparatus for encoding metadata into a digital program stream
KR20110053177A (ko) 부분화에 기초한 적응적인 스트리밍 방법 및 장치
EP3258697B1 (en) Transmission apparatus, transmission method, reception apparatus, and reception method
KR20110053178A (ko) 적응적인 스트리밍 방법 및 장치
US8483053B2 (en) Information processing device, information processing method, program, and data structure
US20070211718A1 (en) Method of and apparatus for converting data stream format and method of and apparatus for recording data stream using the method and apparatus
CN105578308B (zh) 一种rtp组播直播与hls单播时移相结合的实现方法
JP5587779B2 (ja) メディアデータコンテナとメタデータコンテナとを有するファイルを格納し読み取るための装置及び方法
CN107277563A (zh) 一种生成和播放视频文件的方法、服务器及终端
CN103491430A (zh) 流媒体数据处理方法和电子设备
US20130209063A1 (en) Digital receiver and content processing method in digital receiver
US10028020B2 (en) File generating method and file generating apparatus
JP6957186B2 (ja) 情報処理装置、情報処理方法、プログラム、および記録媒体製造方法
KR101577815B1 (ko) 디지털 방송용 스트림 발생 장치 및 방법
CN105306973B (zh) 一种视频倍速文件的生成方法
CN103152607B (zh) 视频超快速粗编方法
EP2524502B1 (en) Method and apparatus for processing transport streams
JP2008252843A5 (zh)
CN103875252A (zh) 内容显示方法、内容同步方法、广播内容显示方法及显示装置
CN103297843A (zh) 一种用于mpeg ts文件回放的节目选择方法
US20090323719A1 (en) Methods and apparatus for transforming first transport stream of first format into second transport stream of second format by emulating arrival time stamp information
US20080235401A1 (en) Method of storing media data delivered through a network

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20180817

CF01 Termination of patent right due to non-payment of annual fee