mp4、AAC数据格式、解析文件的创建修改时间

AAC文件

资料:

http://blog.csdn.net/u013427969/article/details/53091594

http://blog.chinaunix.net/uid-26084833-id-3416600.html

http://blog.csdn.net/sunnylgz/article/details/7676340

AAC的音频文件格式有ADIF & ADTS:

ADIF:Audio Data Interchange Format 音频数据交换格式。这种格式的特征是可以确定的找到这个音频数据的开始,不需进行在音频数据流中间开始的解码,即它的解码必须在明确定义的开始处进行。故这种格式常用在磁盘文件中。

  ADTS:Audio Data Transport Stream 音频数据传输流。这种格式的特征是它是一个有同步字的比特流,解码可以在这个流中任何位置开始。它的特征类似于mp3数据流格式。

AAC的ADTS头文件信息介绍

http://blog.csdn.net/jay100500/article/details/52955232

http://blog.csdn.net/liukun321/article/details/25337425

http://blog.csdn.net/andyhuabing/article/details/40983423

.一加手机的录音文件是AAC格式的。

经过观察,这个音频文件格式为ADTS。对这种类型文件分析,可以参考下mp3文件的音频数据帧

---------------------------------------------------------------------------------------------------------------------------------------------

MP4文件格式

http://www.360doc.com/content/16/0304/16/6887512_539388342.shtml

http://blog.sina.com.cn/s/blog_48f93b530100jz4b.html

M4A文件头:

MP4文件中的所有数据都装在box(QuickTime中为atom)中,也就是说MP4文件由若干个box组成,每个box有类型和长度,可以将box理解为一个数据对象块。box中可以包含另一个box,这种box称为container box。一个MP4文件首先会有且只有一个“ftyp”类型的box,作为MP4格式的标志并包含关于文件的一些信息。

Box说明:

首先需要说明的是,box中的字节序为网络字节序,也就是大端字节序(Big-Endian),简单的说,就是一个32位的4字节整数存储方式为高位字节在内存的低端。

Box由header和body组成,

其中header统一指明box的大小和类型,

body根据类型有不同的意义和格式。

标准的box开头的4个字节(32位)为box size,该大小包括box header和box body整个box的大小,这样我们就可以在文件中定位各个box。

如果size为1,则表示这个box的大小为large size,真正的size值要在largesize域上得到。(实际上只有“mdat”类型的box才有可能用到large size。)如果size为0,表示该box为文件的最后一个box,文件结尾即为该box结尾。(同样只存在于“mdat”类型的box中。)

size后面紧跟的32位为box type,一般是4个字符,如“ftyp”、“moov”等,这些box type都是已经预定义好的,分别表示固定的意义。如果是“uuid”,表示该box为用户扩展类型。如果box type是未定义的,应该将其忽略。

box类型,增加一个wide类型。

后记mp4AACM4A文件格式解析

m4a(aac编码)就是mp4格式的音频内容

m4a同mp3一样,也是一种音频格式的文件,但一般普通的m4a文件扩展名通常是mp4,由于苹果的iTunes的原因,现在大多数的音乐软件都直接支持了m4a。

如果遇到有m4a音频格式的文件,可以安全地把只包含音频的.mp4 文件的扩展名改成.m4a,以便让它能在你喜欢的播放器里播放,反过来转换也可以。

随着苹果手机iPhone和平板iPad的流行,使得iPhone和iPad中支持的m4a格式文件如今流行了起来。M4A是MPEG-4音频标准的文件的扩展名。

在MPEG4标准中提到,普通的MPEG4文件扩展名是“.mp4”。自从Apple开始在它的iTunes以及iPod中使用“.m4a”以区别MPEG4的视频和音频文件以来,

“.m4a”这个扩展名开始被大家认识。

 

注:AAC文件就是不经封装的音频流。M4A文件就是以MPEG-4标准的封装格式进行封装的AAC

 ====================================

文件的创建、修改时间的解析,思路:

计算得到:

1904-01-01零点 到 1970-01-01零点经过的秒数

把从文件中解析得到的秒数 减去 上面的秒数

得到的值就可以使用ctime函数了。

原文地址:https://www.cnblogs.com/zhangxuan/p/8581223.html