[英]AVAudioRecorder: Audio recording settings for iPad4 on iOS9
從iOS8升級到iOS9后,我正在開發的一個應用程序記錄了音頻,並開始在iPad4上無法記錄。
到目前為止使用的錄像機設置為:
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后,它開始失敗。
有人知道哪些設置可以在帶有iOS9的iPad4上運行嗎?
非常感謝。
EDIT1:
為了進行測試,我讓錄音在iPad4上使用它:
audioSegmentURL = ... (a URL with fileextension @"caf");
recorderSettings = @{ AVFormatIDKey: @(kAudioFormatAppleIMA4),
AVNumberOfChannelsKey: @(1),
AVSampleRateKey: @(16000.0)
};
錄音似乎有效。 但是,在錄制之后,我將幾個聲音片段附加在一起,這似乎在iPad4上失敗了。
所述組合物使用AVMutableComposition
具有多個AVMutableCompositionTrack
S,一個AVAssetExportSession
和輸出文件類型被設置為AVFileTypeAppleM4A
。
M4A
與帶有iOS9的iPad4上的IMA4
不兼容嗎?
您的比特率在第一個錄制設置字典中看起來不正確。 嘗試刪除AVEncoderBitRate鍵。 我不知道這是否重要,但是您可能只希望文件名以m4a結尾而不是mp4即可。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.