我想用RPScreenRecorder录制屏幕截图,但发生了崩溃。
var channelLayout = AudioChannelLayout()
channelLayout.mChannelLayoutTag = kAudioChannelLayoutTag_MPEG_5_1_D
let audioOutputSettings = [
AVNumberOfChannelsKey : 6,
AVFormatIDKey : kAudioFormatMPEG4AAC_HE,
AVSampleRateKey : 44100,
AVChannelLayoutKey : NSData(bytes: &channelLayout, length: MemoryLayout.size(ofValue: channelLayout))
] as [String : Any]
let audioInput = AVAssetWriterInput(mediaType: .audio, outputSettings: audioOutputSettings)
appAudioInput = AVAssetWriterInput(mediaType: .audio, outputSettings: audioOutputSettings)
*由于未捕获异常'NSInvalidArgumentException'而终止应用程序,原因:'*** -[AVAssetWriterInput initWithMediaType:outputSettings:sourceFormatHint:] 6不是格式ID'aach'的有效通道数。 使用 kAudioFormatProperty_AvailableEncodeNumberChannels () 来枚举给定格式的可用通道数。
我曾试过用1、2、3、6来计算通道数。
如何使用kAudioFormatProperty_AvailableEncodeNumberChannels来枚举给定格式的可用通道数?