? В любом случае, аудиооборудование не заботится о ваших потребностях - все, что оно знает, это попросить вас дать ему N сэмплов для воспроизведения (в режиме обратного вызова воспроизведения), когда это необходимо, или предоставить вам N сэмплов для обработки (в записи). Перезвони). Если вам нужно больше, вы должны накапливать и ждать, пока у вас будет достаточно.

роблема касается AudioUnits. Чтобы разработать приложение для изменения голоса для iPhone (с Objective-C xCode), я использую пример RemoteIO audioUnit с этого сайта:

http://atastypixel.com/blog/using-remoteio-audio-unit/

Буферы audioUnit имеют длину 256 выборок. Для моего проекта мне нужно больше (около 22050). На цитируемой странице сказано, что длина буферов audioUnit может быть отрегулирована следующим образом:

float aBufferLength = 0.005; // In seconds
AudioSessionSetProperty(kAudioSessionProperty_PreferredHardwareIOBufferDuration, 
                        sizeof(aBufferLength), &aBufferLength);

Теперь мой конкретный вопрос: приведенный выше код не подходит для упомянутого audioUnit, потому что AudioSession не используется, никогда не инициализируется и поэтому выдает ошибку. Есть ли другая возможность изменить длительность буфера, кроме «kAudioSessionProperty_PreferredHardwareIOBufferDuration»? Документация в этом случае не совсем полезна ... Заранее спасибо, Лукас.

Ответы на вопрос(1)

Ваш ответ на вопрос