域= AVFoundationErrorDomain,代码= -11828

时间:2019-03-26 14:56:57

标签: ios react-native avfoundation react-native-video amazon-cloudfront

我正在使用CloudFront中的流URL。

示例网址: https://d14nt81hc5bide.cloudfront.net/qyYj1PcUkYg2ALDfzAdhZAmb

在android上,它工作正常,但在iOS中显示: domain = AVFoundationErrorDomain,代码= -11828

从apple doc读取,错误代码11828为AVErrorFileFormatNotRecognized。 无法打开媒体,因为它不是公认的格式。

有人可以建议如何解决此错误吗?

3 个答案:

答案 0 :(得分:0)

如果URL或响应的标头不包含有关媒体容器格式的信息(mp4mov ...),AVFoundation可能会很挑剔,在这种情况下( URL中没有“文件扩展名”,响应标头中没有内容类型。
其他媒体库和播放器似乎愿意开始加载,然后通过检查传入的数据来猜测格式,这可能就是为什么在这种情况下它们起作用的原因。

不幸的是,至少就我所知,尚无(可靠的)方法以编程方式告诉AVFoundation预期的格式并继续进行下去。

答案 1 :(得分:0)

如您所述,由于AVFoundation无法识别您的媒体格式,因此会出现此错误。

将媒体文件上传到服务器时尝试declare your mime type

有关哑剧类型here的更多信息

  

更多信息:AWS streaming media content tutorial

答案 2 :(得分:0)

我别无选择,只能将CloudFront网址附加为.mp3。 然后适用于ios。