Приложение Я работаю над звуками записи и начал не записывать на iPad4 после обновления с iOS8 до iOS9.AVAudioRecorder: Настройки аудиозаписи для iPad4 на iOS9
настройки рекордера, используемые до сих пор являются:
audioSegmentURL = ... (a URL with fileextension @"mp4");
recorderSettings = @{ AVFormatIDKey: @(kAudioFormatMPEG4AAC),
AVEncoderAudioQualityKey: @(AVAudioQualityMin),
AVEncoderBitRateKey: @(8),
AVNumberOfChannelsKey: @(1),
AVSampleRateKey: @(11025.0)
};
Это инициализация AVAudioRecorder
:
NSError *err;
AVAudioRecorder *audioRecorder = [[AVAudioRecorder alloc] initWithURL:audioSegmentURL settings:recorderSettings error:&err];
Этот вызов, кажется, чтобы преуспеть, err
является nil
.
Вызов к prepareToRecord
возвращается NO
:
BOOL res = [audioRecorder prepareToRecord];
К сожалению, у меня нет в iPad4. Проблема не возникает на iPad Mini2. (У меня также есть iPad Air, но это не поддерживает аппаратное кодирование AAC и использует разные настройки записи.)
Это работало на iOS8. Он начал сбой после обновления iPad4 до iOS9.
Знает ли кто-нибудь, какие настройки работают на iPad4 с iOS9?
Большое спасибо.
EDIT1:
Для теста я позволил использовать аудиозапись этого на iPad4:
audioSegmentURL = ... (a URL with fileextension @"caf");
recorderSettings = @{ AVFormatIDKey: @(kAudioFormatAppleIMA4),
AVNumberOfChannelsKey: @(1),
AVSampleRateKey: @(16000.0)
};
Запись казалось работать. Тем не менее, после записи я добавляю несколько звуковых фрагментов вместе, и это, казалось, не срабатывало на iPad4.
Композиция использует AVMutableComposition
, который имеет несколько AVMutableCompositionTrack
с, AVAssetExportSession
и выход Filetype установлен в AVFileTypeAppleM4A
.
M4A
несовместим с IMA4
на iPad4 с iOS9?
Спасибо за подсказку - вещи выглядят более перспективными при удалении битрейта. Раньше я пытался с M4A, но это привело к проблемам на последующих этапах обработки. Я бы не удивился, если несколько вопросов влияют друг на друга, и мне нужно разобраться один за другим. –
Тесты показали, что ключ битрейта действительно вызвал икоту с iOS9. Удаление плохого значения заставило его работать. –