Вопрос

i'm using Core-Audio/AudioToolbox (Extended Audio File services) to read audio files on OSX.

for my specific application, i need to find out, whether the file i opened successfully using ExtAudioFileOpenURL() is a CAF-file.

unfortunately i seem to miss how to do this properly, as i cannot retrieve the AudioFileTypeID from an ExtAudioFileRef.

(when writing such a file, i can define the type by passing the AudioFileTypeID to ExtAudioFileCreateWithURL; what about the reverse?

Это было полезно?

Решение

like with my other question, it turned out that i have to use the normal AudioAPI (rather than 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);
}
Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top