1

我正在使用 AVAssetExportSession 重新导出由 Adob​​e Premiere CC 编辑的视频,它特定于 iPhone XR/XS,我的 exportSession.status 失败并出现错误:

错误域=AVFoundationErrorDomain 代码=-11821 “无法解码” UserInfo={NSLocalizedFailureReason=媒体数据无法解码。它可能已损坏。,NSLocalizedDescription=无法解码,NSUnderlyingError=0x28338c4e0 {Error Domain=NSOSStatusErrorDomain Code=-16977 “(null)”}}

该视频可以在原生 iPhone 播放器上很好地播放。在其他设备(iPhone X、6、7、8)上没有导出错误问题

4

2 回答 2

1

我遇到了类似的问题。但是我的视频是从网上下载的。

在我的代码中,我将质量设置“presetName:”从“AVAssetExportPresetMediumQuality”更改为“AVAssetExportPresetPassthrough”。

希望这可以帮助。

于 2019-03-20T07:22:03.613 回答
0

我遇到了同样的问题,硬件和软件的组合完全相同(iPhone XS(和 iPad Pro 11'')/Adobe Premier 导出的视频)。

数量不多,但在测试可能的解决方案期间,我发现 AVAssetExportSession 在视频的最后出现编码问题。

因此,例如,如果我将导出时间范围缩短 4 帧(或 24 fps 上约 0.17 秒),那么视频将毫无问题地导出。在某些情况下,缩短 3 帧似乎有效,但并不可靠。缩短 2 - 不起作用。

这是一个糟糕的解决方案,但我还没有找到更好的解决方案。

于 2019-04-10T14:59:03.243 回答