来自当知百科
跳转到: 导航搜索
  
AIFF
定 义

  AIFF是音频交换文件格式(Audio Interchange FileFormat)的英文缩写,是Apple公司开发的一种声音文件格式,被Macintosh平台及其应用程序所支持,NetscapeNavigator浏览器中的LiveAudio也支持AIFF格式,SGI及其它专业音频软件包也同样支持AIFF格式。AIFF支持ACE2、ACE8、MAC3和MAC6压缩,支持16位44.1kHz立体声。

  打开工具

  Acitve Movie

目录

简介

  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。

计算方式

  typedefstruct{
AIFF

  IDckID;/*chunkID*/

  longckSize;/*chunkSize*/

  charckData[];/*data*/

  }Chunk;

  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文件所有数据都存储在endian的格式,字节多字节值是储存与高阶(即最重要的)第一个字节。

文件结构

  AIFF文件一个收集了不同类型的格式,当中有一个需要共同大块其中包含重
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;

个人工具
名字空间

变换
查看
操作
导航
工具箱