AVAssetWriter错误-12743添加HDR元数据
创始人
2024-11-12 20:30:13
0

错误代码-12743表示AVAssetWriter无法添加HDR元数据。要解决此问题,您可以尝试以下解决方法:

  1. 检查是否支持HDR:在使用AVAssetWriter之前,首先检查设备是否支持HDR。您可以使用AVCaptureDevice类的isHDRVideoSupported属性来确定设备是否支持HDR。如果设备不支持HDR,则无法添加HDR元数据。
if let device = AVCaptureDevice.default(for: .video), device.isHDRVideoSupported {
    // HDR is supported
} else {
    // HDR is not supported
}
  1. 检查输出格式:确保您设置的输出格式支持HDR。您可以使用AVCaptureVideoDataOutput的availableVideoCodecTypes属性获取设备支持的视频编解码器类型,并确保选择的编码器支持HDR。
let videoDataOutput = AVCaptureVideoDataOutput()
let availableCodecs = videoDataOutput.availableVideoCodecTypes
// Check if any codec supports HDR
let hdrSupportedCodecs = availableCodecs.filter { codec in
    let supportsHDR = codec.supportsHDR
    return supportsHDR
}
// Select a codec that supports HDR
let selectedCodec = hdrSupportedCodecs.first
// Set the selected codec to output settings
videoDataOutput.setSampleBufferDelegate(self, queue: DispatchQueue.main)
videoDataOutput.videoSettings = [kCVPixelBufferPixelFormatTypeKey as String: kCVPixelFormatType_32BGRA,
                                 AVVideoCodecKey: selectedCodec]
  1. 更新AVAssetWriter配置:如果您已经确认设备支持HDR并且选择了支持HDR的编码器,但仍然无法添加HDR元数据,可能是因为AVAssetWriter的配置不正确。请确保在创建AVAssetWriter之前正确配置它,包括设置输出URL,输出文件类型和输出设置。
let writer = try AVAssetWriter(outputURL: outputURL, fileType: .mov)
let outputSettings = [
    AVVideoCodecKey: selectedCodec,
    AVVideoCompressionPropertiesKey: [
        // Set HDR metadata
        AVVideoHDRMetadataKey: hdrMetadata
    ]
]
let videoInput = AVAssetWriterInput(mediaType: .video, outputSettings: outputSettings)
writer.add(videoInput)

请注意,上述代码示例仅供参考,并且可能需要根据您的具体需求进行适当的修改。

相关内容

热门资讯

六分钟学习!微信小程序开发(外... 六分钟学习!微信小程序开发(外挂)本来有辅助教程(哔哩哔哩)1、微信小程序开发免费辅助多个强度级别选...
第一分钟手筋!蜀山四川血战辅助... 第一分钟手筋!蜀山四川血战辅助(外挂)一直是有辅助教程(哔哩哔哩)所有人都在同一条线上,像星星一样排...
9分钟法门!贵州闲来辅助软件怎... 9分钟法门!贵州闲来辅助软件怎么样(外挂)确实是有辅助教程(哔哩哔哩)1、上手简单,内置详细流程视频...
第4分钟诀窍!边锋嘉兴红十辅助... 第4分钟诀窍!边锋嘉兴红十辅助(外挂)一直真的是有辅助神器(哔哩哔哩)1、超多福利:超高返利,海量正...
第8分钟手筋!边锋干瞪眼技巧(... 第8分钟手筋!边锋干瞪眼技巧(外挂)一直有辅助软件(哔哩哔哩)1)边锋干瞪眼技巧免费钻石:进一步探索...
9分钟办法!789大菠萝攻略(... 9分钟办法!789大菠萝攻略(外挂)切实存在有辅助方法(哔哩哔哩)暗藏猫腻,小编详细说明789大菠萝...
第2分钟演示!朱雀开心罗松怎么... 第2分钟演示!朱雀开心罗松怎么开挂(外挂)竟然有辅助技巧(哔哩哔哩);1、玩家可以在朱雀开心罗松怎么...
1分钟操作!pokemmo辅助... 1分钟操作!pokemmo辅助脚本(外挂)本来是真的有辅助软件(哔哩哔哩)所有人都在同一条线上,像星...
一分钟练习!开心泉州小程序辅助... 一分钟练习!开心泉州小程序辅助哪里查看(外挂)总是有辅助神器(哔哩哔哩)1、完成开心泉州小程序辅助哪...
四分钟法门!宜宾微信微乐辅助小... 四分钟法门!宜宾微信微乐辅助小程序(外挂)一直一直总是有辅助app(哔哩哔哩)1、宜宾微信微乐辅助小...