【发布时间】:2011-07-26 23:28:45
【问题描述】:
我想在 iPad 上播放 iOS 4.3 中的电影。当文件名具有文件扩展名时,我已成功使用 MPMoviePlayerController 和 AVPlayer 从远程 URL 加载文件。但是,当我使用不返回文件名(只是一个不可猜测的随机名称)的 CDN 时,MPMoviePlayerController 或 AVPlayer 似乎都无法应对。
有没有办法告诉任何一个播放器它确实是 x 类型的电影,它应该继续播放它?
MPMoviePlayerController 将从其状态更改通知中返回以下错误:
{
MPMoviePlayerPlaybackDidFinishReasonUserInfoKey = 1;
error = "Error Domain=MediaPlayerErrorDomain Code=-12847 \"This movie format is not supported.\" UserInfo=0x5b60030 {NSLocalizedDescription=This movie format is not supported.}";
}
我知道该文件是有效的 m4v 文件,因为当我重命名它时一切正常。
【问题讨论】:
-
+1 提出好问题 - 希望有人想出办法来实现这一点......
-
没有一个理想的解决方案,但我发现了一些可能对某些人有帮助的东西 - 如果您确保内容类型标题正确,那么如果没有文件扩展名,视频就会播放。因此,要在 MPMoviePlayerController 中播放视频,您需要 要么 正确的文件扩展名 或 正确的 mime 类型。我使用有效的文件扩展名和不正确的内容类型对其进行了测试,它仍然可以播放。
-
嗨@Michael,你解决这个问题了吗?我现在也在尝试,我可以知道它是如何工作的吗?
-
@Santo 如果您对私有 API 感到满意,请在下面查看我的答案
标签: iphone ios mpmovieplayercontroller avplayer