我试图通过AVAssetReader和AVAssetWriter导出iCloud资产,但AVAssetReader无法使用该资产进行初始化。所有其他视频都工作正常。只有iCloud共享相册视频才会带来麻烦。AVAssetReader给我的错误在下面:
错误Domain=AVFoundationErrorDomain代码=-11800“操作无法完成”UserInfo={发生未知错误(-17507),无法完成NSLocalizedDescription=The操作,NSUnderlyingError=0x2812d8ae0 {错误Domain=NSOSStatusErrorDomain代码=-17507 "(null)"}}
为什么要修复它,或者有其他选择吗?
发布于 2021-03-26 15:17:50
在使用PHImageManager请求资产时,将PHVideoRequestOptions实例的deliveryMode属性设置为mediumQualityFormat或fastFormat可能是导致您遇到问题的原因。尝试使用auto或high quality,因为根据文档,导出时仅支持这些模式。
let videoRequestOptions = PHVideoRequestOptions()
videoRequestOptions.deliveryMode = .highQualityFormat
videoRequestOptions.isNetworkAccessAllowed = true
PHImageManager.default().requestAVAsset(forVideo: asset, options: videoRequestOptions) { (asset, audioMix, info) in
// Use the returned asset
}https://stackoverflow.com/questions/66488708
复制相似问题