Im Использование MixerHostAudio для загрузки нескольких аудиофайлов одновременно.
Я не могу загрузить все файлы в память, потому что приложение ломается!
Может ли кто-нибудь помочь мне реализовать алгоритм для буферизации этих файлов?
Или хотя бы указать мне пример?
Мне удалось продвинуться так далеко:
Я закрепил код, по которому вызывается вызов функции рендеринга:
UInt32 numberOfPacketsToRead = (UInt32) totalFramesInFile;
result = ExtAudioFileRead (audioFileObject, &numberOfPacketsToRead, bufferList);
free (bufferList);
if (noErr != result) {
[self printErrorMessage: @"ExtAudioFileRead failure - " withStatus: result];
// If reading from the file failed, then free the memory for the sound buffer.
free (soundStructArray[audioFile].audioDataLeft);
soundStructArray[audioFile].audioDataLeft = 0;
if (2 == channelCount) {
free (soundStructArray[audioFile].audioDataRight);
soundStructArray[audioFile].audioDataRight = 0;
}
ExtAudioFileDispose (audioFileObject);
return;
}
--- СЕЙЧАС Я пропускаю только часть, когда буферизация закончена, и я могу сказать программе получить следующий блок ....
Есть идеи?
Спасибо
Hernan