我正在使用CloudFront的流媒体网址。
示例网址:https://d14nt81hc5bide.cloudfront.net/qyYj1PcUkYg2ALDfzAdhZAmb
在Android上,它工作正常但在iOS中它说:domain = AVFoundationErrorDomain,code = -11828
从apple doc,错误代码11828是AVErrorFileFormatNotRecognized。媒体无法打开,因为它不是可识别的格式。
有人可以建议如何解决此错误?
如果URL或响应的标题不包含有关媒体容器格式的信息(mp4
,mov
,...),AVFoundation可能很挑剔,这就是这里的情况(URL中没有'文件扩展名',没有响应头中的内容类型)。
其他媒体库和玩家似乎愿意开始加载,然后通过检查传入的数据来猜测格式,这可能就是他们在这种情况下工作的原因。
不幸的是,至少据我所知,没有(可靠的)方法以编程方式告诉AVFoundation预期的格式并继续使用。
我没有其他选择,只能使我的CloudFront网址附加.mp3。然后它适用于ios。