Error Domain=AVFoundationErrorDo

2020-05-28  本文已影响0人  天空中的球

在调试视频时出现黑屏的情况,然后发现是 AVPlayerItemStatusFailed 的,通过打印 item.error 得到 Error Domain=AVFoundationErrorDomain Code=-11850 "操作停止" 的错误提示。

基本上网络上给出的都是 Domain=AVFoundationErrorDomain Code=-11850操作停止如何解决 的解答,通过联系服务商进行了解决,如果自己处理视频的请自行联系服务端人员解决。

然而我这边不一样,我发现是 是 AVPlayerItem 初始化用法不同

[AVPlayerItem playerItemWithAsset:asset];
[[AVPlayerItem alloc] initWithURL:localVideoUrl];

用了前者,发现就是有这个问题,后者没有。

进一步发现是我们项目中,用了AVURLAssetPreferPreciseDurationAndTimingKey这个 key . 这个key对应的value是一个布尔值, 用来表明资源是否需要为时长的精确展示,以及随机时间内容的读取进行提前准备.

然而实际告诉以上不同,都不是。

+ (NSURL *)fileURLWithPath:(NSString *)path; 
+ (nullable instancetype)URLWithString:(NSString *)URLString

前者会自动带上 file:// 的前缀的,所以一般我们作如下区别

我这边是引用本地的链接,所以应该是自己用 fileURLWithPath, 问题到此才找到答案的。

上一篇 下一篇

猜你喜欢

热点阅读