如何找出音频文件的文件类型



我正在使用Core-Audio/AudioToolbox(扩展音频文件服务)在OSX上读取音频文件。

对于我的特定应用程序,我需要找出我使用 ExtAudioFileOpenURL() 成功打开的文件是否是 CAF 文件。

不幸的是,我似乎错过了如何正确执行此操作,因为我无法从ExtAudioFileRef中检索AudioFileTypeID

(在编写这样的文件时,我可以通过将AudioFileTypeID传递给ExtAudioFileCreateWithURL来定义类型;反之亦然呢?

就像我的另一个问题一样,事实证明我必须使用普通的AudioAPI(而不是ExtAudio API)

static bool isCAF(const AudioFileID*file) {
  /* trying to read format (is it caf?) */
  UInt32 format=0;
  UInt32 formatSize=sizeof(format);
  AudioFileGetProperty (*file, kAudioFilePropertyFileFormat, &formatSize, &format);
  return (kAudioFileCAFType==format);
}

相关内容

  • 没有找到相关文章

最新更新