小编Ann*_*tas的帖子

超过 2 个通道的 AVAssetWriterInput

有人知道如何使用具有 2 个以上通道的 AVAssetWriterInput init 吗?

我正在尝试初始化一个音频输入,以这种方式在 AVAssetWriter 之后添加它:

let audioInput = AVAssetWriterInput(mediaType: AVMediaTypeAudio, outputSettings: audioOutputSettings)
Run Code Online (Sandbox Code Playgroud)

assetWriter.add(audioInput)

assetWriter.startWriting()

但是当我使用包含大于 2 的通道键数的 audioOutputSettings 字典初始化 audioInput 时它会崩溃。错误是:

Terminating app due to uncaught exception ‘NSInvalidArgumentException’, reason: ’*** -[AVAssetWriterInput initWithMediaType:outputSettings:sourceFormatHint:] 6 is not a valid channel count for Format ID ‘aac ’. Use kAudioFormatProperty_AvailableEncodeNumberChannels (<AudioToolbox/AudioFormat.h>) to enumerate available channel counts for a given format.

avfoundation ios avassetwriter avassetexportsession swift

4
推荐指数
1
解决办法
1700
查看次数