【问题标题】:MPMoviePlayer unable to play video stream from a url without extensionMPMoviePlayer 无法从没有扩展名的 url 播放视频流
【发布时间】:2011-03-29 05:00:16
【问题描述】:

我正在尝试使用 MPMoviePlayer(例如:http://localhost/api?file_id=2313mk)从 url 播放视频(mp4)文件,但无法正常工作,想知道是否有任何解决方案。

很少做如下测试:
1) 在电脑浏览器中播放网址:SUCCESS
2) 在 iphone(4.2+) 浏览器/ MPMoviePlayer 中播放网址:FAILED
3) 复制文件并重命名,然后从带有扩展名的新网址(例如:http://localhost/video.mp4)在 iphone 浏览器/MPMoviePlayer 中播放:SUCCESS
4) 检查 Content-Type(video/mp4) 的标头:EXISTS

不带扩展名的 url 响应标头:(例如:http://localhost/api?file_id=2313mk)

接受 HTTP/1.1 200 下载 日期:2011 年 3 月 29 日星期二 04:48:03 GMT 服务器:阿帕奇 内容传输编码:二进制 内容长度:24897567 保活:超时=15,最大值=100 连接:保持活动 内容类型:视频/mp4

带有扩展名的 url 的响应标头:(例如:http://localhost/video.mp4)

HTTP/1.1 200 正常 日期:2011 年 3 月 29 日星期二 04:11:19 GMT 服务器:Apache/2.2.17 (Unix) mod_ssl/2.2.17 OpenSSL/0.9.8l DAV/2 PHP/5.3.4 最后修改时间:格林威治标准时间 2011 年 3 月 18 日星期五 05:38:16 Etag:“d1b78c-17be81f-49ebb2f458200” 接受范围:字节 内容长度:24897567 保活:超时=5,最大值=100 连接:保持活动 内容类型:视频/mp4

【问题讨论】:

标签: iphone url video video-streaming mpmovieplayer


【解决方案1】:

【讨论】:

【解决方案2】:

您的测试结果表明 “video/mp4” MIME 类型无法识别。无论 Content-Type 为何,都会播放带有文件扩展名的视频,因为已知扩展名“mov”属于电影文件:

http://developer.apple.com/library/ios/#documentation/Miscellaneous/Conceptual/iPhoneOSTechOverview/MediaLayer/MediaLayer.html#//apple_ref/doc/uid/TP40007898-CH9-SW6

你能改变 Content-Type 吗?

【讨论】:

  • Content-Type 实际上看起来是正确的,但是你为什么/建议改变什么?
  • 对不起,我只做了“下载和播放”或 HTTP 实时流。第一个基于文件扩展名工作,第二个工作在服务器开始发送正确的 MIME 类型后工作。还没有完成动态下载(还),但我想我会尝试“video/mpeg”或“video/quicktime”。我的意思是,在服务器端更改 mime 类型。
猜你喜欢
  • 2021-05-01
  • 2018-11-15
  • 2017-01-01
  • 1970-01-01
  • 2019-12-26
  • 2016-02-25
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多