我正在使用AVAssetExportSession来重新录制由Adobe Premiere CC编辑的视频,它在iPhone XR / XS上是特定的,我有exportSession.status失败并出现错误:
Error Domain = AVFoundationErrorDomain Code = -11821“无法解码”UserInfo = {NSLocalizedFailureReason =媒体数据无法解码。它可能已损坏。,NSLocalizedDescription =无法解码,NSUnderlyingError = 0x28338c4e0 {错误域= NSOSStatusErrorDomain代码= -16977“(null)”}}
该视频可以在原生iPhone播放器上播放。在其他设备(iPhone X,6,7,8)没有导出错误问题
我遇到了类似的问题。但我的视频是从网上下载的。
在我的代码中,我将质量设置“presetName:”从“AVAssetExportPresetMediumQuality”更改为“AVAssetExportPresetPassthrough”。
希望这可以帮助。
我遇到了同样的问题,完全相同的硬件和软件组合(由Adobe Premier导出的iPhone XS(和iPad Pro 11')/视频)。
它并不多,但在测试可能的解决方案时,我发现视频的最后是AVAssetExportSession编码很麻烦。
因此,例如,如果我将导出时间范围缩短4帧(或24 fps的~0.17秒),那么视频将被导出而没有问题。在某些情况下,缩短3帧似乎有效,但不可靠。缩短2 - 不起作用。
这是一个糟糕的解决方案,但我还没有找到更好的解决方案。