2012-03-05 4 views
0

웨이브, mp3 및 aiff 파일의 데이터를 읽고이 데이터를 fft에 사용하고 싶습니다. AudioToolbox Framework는 좋아 보이지만 다른 기능이 많이 있으며 혼란 스럽습니다.AudioToolbox Framework로 오디오 파일을 읽으려면 어떻게해야합니까?

기능 목록을 도와 주시겠습니까? 그래서 numberOfFrames, channel, sampleRate, bitRate 및 array를 audioData로 가져와야합니다.

감사합니다.

답변

1

파일을로드하고 속성 및 읽기를 얻어야합니다.

ExtAudioFileRef myfile; 
ExtAudioFileOpenURL(yourURL, &myfile); 

// after you get a AudioStreamBasicDescription 
AudioStreamBasicDescription desc={0}; 
ExtAudioFileGetProperty(myfile, kExtAudioFileProperty_FileDataFormat, sizeof(AudioStreamBasicDescription), &desc); 
AudioBufferList *ioData = CreateAudioBuffer(desc); 
UInt32 nbFrames = 512; 
while(nbFrames != 0) 
{ 
    nbFrames = 512; 
    ExtAudioFileRead(myfile, &nbFrames, ioData); 
    WorkWithFrame(ioData, nbFrames); 
} 

ExtAudioFileDispose(myfile); 

데이터 malloc 및 WorkWithFrames를 사용하여 CreateAudioBuffer를 작성해야합니다.

도움이 될 수 있기를 바랍니다.

관련 문제