Как я могу записать аудио выход iPhone? (как звуки моего приложения) - PullRequest
4 голосов
/ 30 января 2010

Я хочу записать звук моего iPhone-приложения. Как будто кто-то играет на инструменте iPhone, и после этого вы можете услышать это.

Возможно ли это без микро?

1 Ответ

1 голос
/ 30 января 2010

Вы имеете в виду приложение, которое создаете сами? Если да, вы можете просто сохранить визуализированный сигнал (возможно, закодированный / сжатый для экономии места) для последующего воспроизведения. (см .: Расширенные службы аудиофайлов , он может записывать тот же AudioBufferList в файл, который вы будете воспроизводить на RemoteAudio Unit при воспроизведении аудио в приложении Instrument) *

[Редактировать: удалены комментарии по записи аудио выхода стороннего приложения ...]

С AVFoundation, которую вы используете в настоящее время, вы всегда работаете на уровне звуковых файлов. Ваш код никогда не видит фактический звуковой сигнал. Таким образом, вы не можете «захватить» аудиосигнал, который генерирует ваше приложение при его использовании. Кроме того, AVAudioPlayer не предоставляет никаких средств для получения окончательного сигнала. Если вы используете несколько проигрывателей AVAudio для воспроизведения нескольких звуков одновременно, вы также не сможете получить смешанный сигнал.

Увы, вам, вероятно, нужно использовать CoreAudio , который является гораздо более низким уровнем интерфейса.

Я хотел бы предложить альтернативный подход: вместо записи аудиовыхода, почему бы не записать последовательность действий вместе с их временем, которое приводит к воспроизведению звука? Запишите эту последовательность событий в файл и прочитайте ее обратно, чтобы воспроизвести «производительность» - это немного похоже на ваш собственный MIDI-секвенсор:)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...