CN101917609B - 嵌入式流媒体文件格式识别方法 - Google Patents

嵌入式流媒体文件格式识别方法 Download PDF

Info

Publication number
CN101917609B
CN101917609B CN2010102533407A CN201010253340A CN101917609B CN 101917609 B CN101917609 B CN 101917609B CN 2010102533407 A CN2010102533407 A CN 2010102533407A CN 201010253340 A CN201010253340 A CN 201010253340A CN 101917609 B CN101917609 B CN 101917609B
Authority
CN
China
Prior art keywords
file
byte
files
media file
streaming media
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
Application number
CN2010102533407A
Other languages
English (en)
Other versions
CN101917609A (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.)
Sichuan Changhong Electric Co Ltd
Original Assignee
Sichuan Changhong Electric 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 Sichuan Changhong Electric Co Ltd filed Critical Sichuan Changhong Electric Co Ltd
Priority to CN2010102533407A priority Critical patent/CN101917609B/zh
Publication of CN101917609A publication Critical patent/CN101917609A/zh
Application granted granted Critical
Publication of CN101917609B publication Critical patent/CN101917609B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Abstract

本发明涉及嵌入式流媒体文件,具体的说是涉及一种嵌入式流媒体文件格式识别方法。本发明公开了一种嵌入式流媒体文件格式识别方法,解决在采用传统技术对流媒体文件格式进行识别时,可能由于流媒体文件后缀名与实际格式不符合,导致后续无法播放的问题。其技术方案的要点可概括为:通过研究当前网络环境下存在的流媒体文件,发现每种流媒体文件封装格式都有一组或一个特征值。通过将这些特征值与文件开始512个字节内的某些位数据进行比较,从而确定流媒体文件的封装格式。本发明的有益效果是:确定流媒体文件格式,避免出现由于后缀名与实际格式不符的情况,适用于流媒体文件格式识别。

Description

嵌入式流媒体文件格式识别方法
技术领域
本发明涉及嵌入式流媒体文件,具体的说是涉及一种嵌入式流媒体文件格式识别方法。
背景技术
网络电视作为三网融合下的一个终端产品,自然也就带有流媒体播放器功能。网络中存在的流媒体文件封装格式种类繁多,每种封装格式有独有的数据组织规范,即在播放流媒体文件时,每种封装格式就对应着一个文件解析器。每种流媒体文件封装格式都会有一个或两个后缀名与之对应,所以在传统技术中,一般是根据流媒体文件后缀名来判断出流媒体文件封装格式,再选择对应格式的文件解析器解析;但是在实际操作中,还存在不少文件后缀名与实际文件封装格式不匹配的流媒体文件。如果按照传统的方法进行流媒体文件解析,必然会导致出错,造成无法播放的问题。
发明内容
本发明所要解决的技术问题是:提供一种嵌入式流媒体文件格式识别方法,解决在采用传统技术对流媒体文件格式进行识别时,可能由于流媒体文件后缀名与实际格式不符合,导致后续无法播放的问题。
本发明解决上述技术问题所采用的技术方案是:嵌入式流媒体文件格式识别方法,包括以下步骤:
a.读取流媒体文件的前512个字节数据,取前4个字节数据按照地址由低到高的顺序排列成一个32位数;
b.将此32位数与RM文件、AVI文件、MKV文件、WMV文件、PS文件的文件特征值分别进行比较,如果与其中的某一个文件特征值相等,则该文件特征值对应的文件格式即为该流媒体文件的格式,否则,执行步骤c;
c.将此32位数与0XFFFFFF00作与运算,判断运算后的结果是否为0X464C5600,如果是,则该流媒体文件的格式即为FLV,否则执行步骤d;
d.取第5个字节至第8个字节的数据按照地址由低到高的顺序再生成一个32位数,并将该32位数与MP4文件的文件特征值进行比较,如果相等,则该流媒体文件的格式即为MP4,否则执行步骤e;
e.判断读取的512个字节数据中第n个字节的值与TS文件的文件特征值是否相等,如果相等则执行步骤f,否则该流媒体文件的格式无法识别,1≤n≤192;
f.判断第n个字节后第188个字节的值是否与TS文件的文件特征值相等,如果相等,则该流媒体文件的格式为TS;否则,判断第n个字节后第192个字节的值是否与TS文件的文件特征值相等,如果相等,则该流媒体文件的格式为M2TS,否则该流媒体文件的格式无法识别。
本发明的有益效果是:通过取流媒体文件的前512个字节数据与各个文件格式的文件特征码进行比较,从而确定流媒体文件格式,避免出现由于后缀名与实际格式不符的情况。
具体实施方式
下面结合实施例对本发明作进一步的描述。
本发明提出了一种嵌入式流媒体文件格式识别方法,解决在采用传统技术对流媒体文件格式进行识别时,可能由于流媒体文件后缀名与实际格式不符合的情况,导致后续无法播放的问题。通过研究当前网络环境下存在的流媒体文件,发现每种流媒体文件封装格式都有一组或一个特征值。本发明提出的方法,就是通过将这些特征值与文件开始512个字节内的某些位数据进行比较,从而确定流媒体文件的封装格式。
其具体实现方式如下:
1.嵌入式流媒体文件格式识别方法,其特征在于:包括以下步骤:
a.读取流媒体文件的前512个字节数据,取前4个字节数据按照地址由低到高的顺序排列成一个32位数;
b.将此32位数与RM文件、AVI文件、MKV文件、WMV文件、PS文件的文件特征值分别进行比较,如果与其中的某一个文件特征值相等,则该文件特征值对应的文件格式即为该流媒体文件的格式,否则,执行步骤c;
c.将此32位数与0XFFFFFF00作与运算,判断运算后的结果是否为0X464C5600,如果是,则该流媒体文件的格式即为FLV,否则执行步骤d;
d.取第5个字节至第8个字节的数据按照地址由低到高的顺序再生成一个32位数,并将该32位数与MP4文件的文件特征值进行比较,如果相等,则该流媒体文件的格式即为MP4,否则执行步骤e;
e.判断读取的512个字节数据中第n个字节的值与TS文件的文件特征值是否相等,如果相等则执行步骤f,否则该流媒体文件的格式无法识别,1≤n≤192;
f.判断第n个字节后第188个字节的值是否与TS文件的文件特征值相等,如果相等,则该流媒体文件的格式为TS;否则,判断第n个字节后第192个字节的值是否与TS文件的文件特征值相等,如果相等,则该流媒体文件的格式为M2TS,否则该流媒体文件的格式无法识别。
实施例:
如需识别当前某一流媒体文件的格式,首先需要读取该流媒体文件的头512字节数据,取前4个字节数据按照地址从高到低顺序生成一个32位数A,接下来提取RM文件、AVI文件、MKV文件、WMV文件、PS文件的文件特征值分别与A进行比较,如果发现RM文件的文件特征值与A相等,则该流媒体文件的格式即为RM格式。而如果这些文件特征值与A均不相等,则就要考虑是否为FLV格式的可能性,即将A与0XFFFFFF00作与运算,判断运算后的结果是否为0X464C5600,如果是,则该流媒体文件的格式即为FLV,否则就要考虑是否为MP4格式的可能性:那么,需要从这512个字节中取第5个字节至第8个字节的数据按照地址由低到高的顺序再生成一个32位数B,并将B与MP4文件的文件特征值进行比较,如果相等,则该流媒体文件的格式即为MP4,否则就要考虑是否为TS格式或M2TS格式的可能性:判断读取的512个字节数据中第1个字节的值与TS文件的文件特征值是否相等,如果相等还要判断第1个字节后的第188个字节(即第189个字节)的值与TS文件的文件特征值是否相等,只有两个条件都符合了,才能判定该流媒体文件的格式为TS格式,如果不为TS格式就要判断是否为M2TS格式判断第1个字节后的192个字节(即第193个字节)的值与M2TS文件的文件特征值是否相等,只有第1个字节和第192个字节均与M2TS文件的文件特征值相等了才能判定该流媒体文件格式为M2TS。如果仍然不能判定流媒体文件的格式,则需要读取512个字节数据中第2个字节的值判断是否与TS文件的文件特征值相等,再判断第2个字节后的188个字节(即第190个字节)是否与TS文件的文件特征值相等,第2个字节后的192个字节(即第194个字节)的值与M2TS文件的文件特征值是否相等…如此循环,直至读取到第192个字节、及第380个字节、第384个字节仍然无法判断格式,则说明该流媒体文件的格式无法识别。

Claims (1)

1.嵌入式流媒体文件格式识别方法,其特征在于:包括以下步骤:
a.读取流媒体文件的前512个字节数据,取前4个字节数据按照地址由低到高的顺序排列成一个32位数;
b.将此32位数与RM文件、AVI文件、MKV文件、WMV文件、PS文件的文件特征值分别进行比较,如果与其中的某一个文件特征值相等,则该文件特征值对应的文件格式即为该流媒体文件的格式,否则,执行步骤c;
c.将此32位数与0XFFFFFF00作与运算,判断运算后的结果是否为0X464C5600,如果是,则该流媒体文件的格式即为FLV,否则执行步骤d;
d.取第5个字节至第8个字节的数据按照地址由低到高的顺序再生成一个32位数,并将该32位数与MP4文件的文件特征值进行比较,如果相等,则该流媒体文件的格式即为MP4,否则执行步骤e;
e.判断读取的512个字节数据中第n个字节的值与TS文件的文件特征值是否相等,如果相等则执行步骤f,否则该流媒体文件的格式无法识别,1≤n≤192;
f.判断第n个字节后第188个字节的值是否与TS文件的文件特征值相等,如果相等,则该流媒体文件的格式为TS;否则,判断第n个字节后第192个字节的值是否与TS文件的文件特征值相等,如果相等,则该流媒体文件的格式为M2TS,否则该流媒体文件的格式无法识别。
CN2010102533407A 2010-08-13 2010-08-13 嵌入式流媒体文件格式识别方法 Active CN101917609B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN2010102533407A CN101917609B (zh) 2010-08-13 2010-08-13 嵌入式流媒体文件格式识别方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN2010102533407A CN101917609B (zh) 2010-08-13 2010-08-13 嵌入式流媒体文件格式识别方法

Publications (2)

Publication Number Publication Date
CN101917609A CN101917609A (zh) 2010-12-15
CN101917609B true CN101917609B (zh) 2012-05-30

Family

ID=43324977

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2010102533407A Active CN101917609B (zh) 2010-08-13 2010-08-13 嵌入式流媒体文件格式识别方法

Country Status (1)

Country Link
CN (1) CN101917609B (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103473088B (zh) * 2013-08-30 2018-01-02 北京远特科技股份有限公司 一种单片机在线升级方法和系统
CN114501116A (zh) * 2022-01-19 2022-05-13 深圳力维智联技术有限公司 一种基于规则模型的音视频流解封装方法和系统

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1991821A (zh) * 2005-12-30 2007-07-04 英业达股份有限公司 文件格式识别系统及方法
CN101079803A (zh) * 2006-05-26 2007-11-28 海尔集团公司 家庭网络控制系统
CN101094243A (zh) * 2007-05-31 2007-12-26 广东中大讯通软件科技有限公司 基于UPnP的不同类型设备间的多媒体适配系统及多媒体内容适配方法
US20090319536A1 (en) * 2006-09-01 2009-12-24 Pacbyte Software Pty Limited Method and system for transmitting a data file over a data network

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1991821A (zh) * 2005-12-30 2007-07-04 英业达股份有限公司 文件格式识别系统及方法
CN101079803A (zh) * 2006-05-26 2007-11-28 海尔集团公司 家庭网络控制系统
US20090319536A1 (en) * 2006-09-01 2009-12-24 Pacbyte Software Pty Limited Method and system for transmitting a data file over a data network
CN101094243A (zh) * 2007-05-31 2007-12-26 广东中大讯通软件科技有限公司 基于UPnP的不同类型设备间的多媒体适配系统及多媒体内容适配方法

Also Published As

Publication number Publication date
CN101917609A (zh) 2010-12-15

Similar Documents

Publication Publication Date Title
CN102419713A (zh) 基于nandflash的机顶盒的软件升级方法
CN102354292A (zh) 主、备数据库记录一致性校验方法及系统
CN102243699A (zh) 一种恶意代码检测方法及系统
CN103353878A (zh) 将多种格式的文档显示在网页中的方法
CN102937903B (zh) 一种基于特征匹配的打包文件更新方法
JP2010279031A5 (zh)
CN101917609B (zh) 嵌入式流媒体文件格式识别方法
CN106407038A (zh) 一种碎片文件的数据恢复方法
CN102118539A (zh) 一种多媒体播放终端及其文件拖动播放方法和装置
CN105447168A (zh) Mp4格式的碎片文件恢复与重组的方法
CN103531246A (zh) 快速以读代写的存储器纠错方法
WO2015000943A3 (fr) Procédé de mise à disposition par un compteur électrique de données compressées
CN109992801B (zh) 一种基于pads软件的pcb更新方法
CN106777061B (zh) 基于网页文本和图像的信息隐藏系统、方法及提取方法
CN105550254A (zh) 一种icd信息自动生成icd信息数据库的方法
CN104301682A (zh) 一种监控视频碎片的恢复方法和装置
CN101777077B (zh) 嵌入式设备文件系统实现方法
CN102857834B (zh) 读取视频进度的方法
CN106547810A (zh) 一种流量存储快速索引的方法和系统
CN103226532A (zh) 数据处理系统和方法
CN106802833A (zh) 一种生产者消费者模式优化方法和系统
CN103325155A (zh) 基于can总线的高效数据记录方法
CN102855265A (zh) 浏览和下载网页图片系统
CN102014112B (zh) 一种基于mac/ip地址分类统计的硬件实现方法
CN105354100A (zh) 一种修复希捷硬盘p表的方法

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