前面2篇文章已经介绍了文件创建和初始化的两个api,下面我要学习的是:音频文件打开与关闭的API,这些API是所谓的常用API。
1,AudioFileOpenURL的功能:
打开url所指定的一个已经存在的音频文件。
2,函数原型:
3,调用实例:
XThrowIfError(AudioFileOpenURL(sourceURL, 0x01/*fsRdPerm*/, 0/*inFileTypeHint*/, &myInfo.mAudioFile), "AudioFileOpen failed");
此处要说明的是:myInfo.mAudioFile,在传入的时候,可以是一个未经初始化的变量,文件打开成功后,会有一个正确的值。
4,AudioFileOpenWithCallbacks:
看到这个函数的原型,我感觉我受惊了,因为所谓的Open,竟然没有文件的URL,下面是它的原型,
参数简介:
inClientData:根据官方文档,它指的是各种回调的一个参数,并且这个参数包含回调所有需要的信息,真心感觉奇怪。从另外一个角度讲,它是内存中的一块音频数据,所以局限性应该不小。
后面几个参数我也不想再继续说了,这个函数估计很少人能使用到,希望用到过这个函数的人,和我交流一下心得。
5,AudioFileClose
对音频文件的操作,AudioFileCloseAPI算是最简单的了,只有一个参数。其作用是关闭音频文件。
其函数原型如下:
参数解析:inAudioFile,音频文件的id。