提问人:Adeel Abbas 提问时间:12/1/2022 更新时间:12/1/2022 访问量:81
AVAssetWriter 不适用于 AVAudioSession 的视频聊天模式(仅限 iPhone 14 Pro)
AVAssetWriter not working with videoChat mode of AVAudioSession (iPhone 14 Pro only)
问:
我有一个视频会议应用程序,我们正在将 AVAudioSession 设置为 videoChat,以便我们可以获得回声消除。
let options: AVAudioSession.CategoryOptions = [.mixWithOthers , .defaultToSpeaker, .allowBluetooth]
try session.setCategory(.playAndRecord, mode: .videoChat, options: options)
我还想使用 AVAssetWriter API 对音频样本进行本地录制。AssertWriter 的设置如下:
let audioAssetWriter = try AVAssetWriter(outputURL: fileURL, fileType: .m4a)
let settings: [String: Any] = [
AVFormatIDKey: Int(kAudioFormatMPEG4AAC),
AVSampleRateKey: Int(audioParameters.samplingRate),
AVEncoderBitRateKey: Int(audioParameters.bitrate),
AVNumberOfChannelsKey: Int(audioParameters.channels),
AVEncoderAudioQualityKey: AVAudioQuality.max.rawValue
]
let assetWriterAudioInput = AVAssetWriterInput(mediaType: .audio, outputSettings: settings)
assetWriterAudioInput.expectsMediaDataInRealTime = true
audioAssetWriter.add(assetWriterAudioInput)
我在 iPhone 14 Pro 上看到了这一点,
assetWriterAudioInput.append()
正在失败。在 iPhone 13 和更旧的设备上一切正常。
还有其他人在 iPhone 14 Pro 上看到这个问题吗?
答: 暂无答案
评论
AVAssetWriterInput
outputSettings
AVAssetWriter.status
AVAssetWriter.error
AVCaptureAudioDataOutput.recommendedAudioSettingsForAssetWriter(writingTo: .m4a)
AVAssetWriterInput
-11800 = AVErrorUnknown