AIF | 文件格式

来源:百度文库 编辑:神马文学网 时间:2024/04/27 17:57:34
文件类型 音频文件交换格式 (最常见的)
类别音频文件
常见度非常多见/天天都用
软件 可打开AIF文件的软件: Apple iTunes, Roxio Toast 10 Titanium, Nullsoft Winamp Media Player, Roxio Creator 2010, Apple QuickTime Player, Windows Media Player, Windows Media Player, Apple GarageBand.

描述 音频文件交换格式软件(AIFF)创建的音频格式文件;内部包含未经压缩的CD质量的音频信息,类似于一个.WAV文件; 通常用于存入标准CD音频。
苹果电脑公司开发的AIFF音频格式开发基础是电子艺界公司的.IFF 音频格式; 标准的AIFF音乐文件使用标准采样率为44.1KHz,16-bit,和有两个声道来支持立体声。
AIFF文件使用的扩展名就是.AIFF。
----------------------------------------------------------------------------
AIFF是音频交换文件格式(Audio Interchange File Format)的英文缩写,是Apple公司开发的一种声音文件格式,被Macintosh平台及其应用程序所支持,Netscape Navigator浏览器中的LiveAudio也支持AIFF格式,SGI及其它专业音频软件包也同样支持AIFF格式。AIFF支持ACE2、 ACE8、MAC3和MAC6压缩,支持16位44.1kHz立体声。
AIFF是音频交换文件格式(AudioInterchangeFileFormat)的英文缩写,AIFF是一种文件格式存储的数字音频(波形)的数据。AIFF支持各种比特决议,采样率和音频通道。是Apple公司开发的一种声音文件格式,被Macintosh平台及其应用程序所支持,NetscapeNavigator浏览器中的LiveAudio支持AIFF格式,SGI及专业音频软件包都支持AIFF格式。AIFF应用于个人电脑及其它电子音响设备以存储音乐数据。
AIFF是Apple苹果电脑上面的标准音频格式,属于QuickTime技术的一部分。
AIFF格式是一个C语言将被用来描述数据结构的文件。AIFF的常数在十进制值的一连串的数字,例如:123,0,100都是小数。AIFF的常数在十六进制位值之前加上0x-例如:0x0a,0x1,0x64。
1、char类型:8个字节。一个char类型可以包含的不仅仅是ASCII字符。它可以包含任意数量从128至127位
2、unsigned char类型:8个字节,无符号。包含任何数量从零发展到255位。
3、短型:16个字节,包含任何数目从32768到32767位。
4、长型:32个字节,包含任何数目从2147483648到2147483647位。
5、ID:32位的串连四个打印ASCII字符,不能先印刷字符,不允许尾随空格,禁止控制字符。
6、OS类型:32位。串连四个字符。
--------------------------------------------------------------------------
AIFF文件一个收集了不同类型的块的格式,当中有一个需要共同大块其中包含重要的参数描述的声波,如:AIFF文件的长度和采样率。AIFF文件声音数据块,其中包含的实际波形数据,如果波形数据长度大于0(即实际上是波形数据的形式)。在其他可选块都是界定标志,列出仪器参数,存储应用程序特定的信息。所有申请使用形式AIFF格式必须能够读取所需的2块,并可以选择有选择地忽略可选块。没有任何限制的命令块内的一种形式AIFF格式。最小的AIFF格式的文件,由一个单一的形式AIFF格式含有所需的2块,一个共同的大块和健全的数据块组成。
采样点和采样帧
AIFF采样点和采样帧样本点的相当于样品一个健全的某一时刻。每个样本点都被保存为一个线性,2's补值可从1到32位全(所确定的samplesize领域中的共同块)。如:每个样本点的一个8位的波形将是一个8位字节。因为大多数CPU的读写作业处理的8位字节,这是决定一个样本点应该是四舍五入的大小这是一个多8时,存储在AIFF格式。这使得AIFF格式更容易阅读到内存中。
如果AIFF文件的ADC产生一个采样点从1到8位全,一个采样点应存放在一个AIFF格式作为一个8位字节。如果AIFF文件的ADC产生一个采样点从9至16位宽,一个采样点应存放在一个AIFF格式作为一个16位字节。如果AIFF文件的ADC产生一个采样点从17日至24位元宽,抽样点应存放在一个AIFF格式三个字节。如果AIFF文件的ADC产生一个采样点从25到32位全,一个采样点应存放在一个AIFF格式为32位。
此外,数据位应该是左对齐,与任何剩余位清零。如:在12位的采样点下必须被保存为一个16位字。这些12位应该是左对齐,并位0至3应设置为0。
为多声道的声音(例如,一个立体声波形),单从采样点的每个通道交错。假定一个立体声(即第2通道)波形。不是储存的所有采样点的左声道,然后储存的所有采样点的右声道未来,“组合”的两个频道采样点在一起。要将存储第一个样本点的左声道,储存第二采样点在左侧通道。
----------------------------------------------------------------------
AIFF的主块描述基本参数的波形数据,如采样率,位分辨率,以及如何多渠道的数字音频存储的形式AIFF格式。
定义commonid 通信/*chunkid 共同大块*/
typedef结构(
chunkid;
chunksize;
numchannels;
numsampleframes;
samplesize;
samplerate;
)commonchunk;
在chunksize领域的字节数的大块。这还不包括8个字节使用的ID和大小领域。为了共同的大块,chunksize始终1长度18因为没有领域的可变长度(但保持兼容性与未来可能的扩展,如果chunksize是18,这些额外的字节作为垫字节)。numchannels包含一些音频通道的声音。值为1意味着单声道声音,2指立体声,4是指四个声道等等任何数目的音频通道均可作为代表参加。为多声道的声音,单一样本点从每个通道都交错。实际波形数据存储在另一大块,声音数据块。numsampleframes包含一些示例框架。这不一定是相同的字节数,也没有一些采样点的声音数据块(除非处理一个单一的波形)。在samplesize是位数在每个样本点,可以是任何数目从1到32。samplerate在采样率上的声音是要发挥在样本帧每秒。
声音数据块
声音数据块包含实际的抽样框
计算方式
#defineCommonID'COMM'/*ckIDforCommonChunk*/
typedefstruct{
IDckID;
longckSize;
shortnumChannels;
unsignedlongnumSampleFrames;
shortsampleSize;
extendedsampleRate;
}CommonChunk;
采样点数据块
每个样本点的抽样框是一种线性,2的补充价值。样本点是从1到32位元宽,所确定的sampleSize参数共同块。样本点都储存在一个不可分割的连续字节。之一8位全样本点都存储在一个字节,9至16位宽度的样本点都储存在两个字节,17至24位宽度的样本点都储存在第3字节,和25至32位的全样本保存在4字节。当宽度的采样点小于多种8位,样本点数据是离开的理由,其余位清零。一个例子说明了情况如下。一个由12位采样点,储存离开两个字节。其余位设置为0。
抽样框数据块
样本帧存储contiguously为了增加时间。样本点的抽样框包装在一起,不存在未使用的字节之间。同样,抽样框包装在一起,没有垫字节。
标记块
标记块包含标记,职位的声音数据。标记可用于何种用途的数据申请。
计算方式:
typedefstruct{
MarkerIdid;
unsignedlongposition;
pstringmarkerName;
}Marker;
ID是唯一识别的标记内表格AIFF格式。的ID可以是任何积极的非零整数,只要没有其他标记在同一个表格AIFF格式具有相同的编号。
标记块格式如下所示:
#defineMarkerID'MARK'/*ckIDforMarkerChunk*/
typedefstruct{
IDckID;
longckSize;
unsignedshortnumMarkers;
MarkerMarkers[];
}MarkerChunk;