视频无法在 iOS 设备上播放
Posted
技术标签:
【中文标题】视频无法在 iOS 设备上播放【英文标题】:Video not playing on iOS devices 【发布时间】:2015-04-23 09:51:05 【问题描述】:我创建了一个 Web 服务来列出用户的所有视频,我使用 Django 和 Django Rest Framework 来创建 Web 服务。视频的网址是这样的:
http://example.com/media/2015/04/uploadedFile_e0pmVxB.mov.
以下是来自网络服务的响应:
"status": 1,
"message": "successful",
"result": [
"user_id": 17,
"receiver_id": 27,
"video": "/media/2015/04/uploadedFile_e0pmVxB.mov",
"thumbnail": "/media/thumbnails/844702.jpeg",
"timestamp": "2015-04-23 09:02:27"
]
此视频 URL 在 android 设备、浏览器中有效,但在 ios 设备中无效。我尝试在 iOS 中使用不同的播放器,使用不同的视频编解码器,但仍然无法正常工作。这里缺少什么,我需要在 Web 服务中做些什么吗?
感谢任何帮助...
【问题讨论】:
【参考方案1】:问题是 apache 服务器不提供媒体文件。请尝试更改您的配置。
参考:Exception happened during processing of request from IOS Device
【讨论】:
【参考方案2】:Django 不能直接流式传输视频文件,iOS 需要这样才能播放它们。您需要确保您的代理服务器 (nginx/Apache) 正在处理媒体目录。
iOS 将发送一个Range
标头,因此只请求文件的一部分。因为 Django 会忽略这一点,它通常不会允许播放视频。
【讨论】:
我没有得到你试图解释的内容,这个视频适用于从同一个媒体文件夹访问的安卓设备(所以 apache 应该处理 meida 目录)。那么我应该怎么做才能让它工作。请解释一下。 如果您不使用 Apache 提供媒体文件夹,则此答案适用。你没有提到你是否是,但我想这个答案并不特别适用于你。但它确实适用于其他人,因为这是一个常见问题。【参考方案3】:尝试使用 H.264 编解码器将您的视频转换为 mp4。
【讨论】:
您的视频文件现在是 .mov,因此请尝试使用 H.264 编解码器将其转换为 .mp4 @JoeR.mov
可以是 H.264 编码的视频,这是 iPad 默认采用的。 .mov
和 .mp4
只需指定使用的容器即可。以上是关于视频无法在 iOS 设备上播放的主要内容,如果未能解决你的问题,请参考以下文章
YouTube iOS SDK:正确的 GTLQueryYouTube 参数以过滤出无法在移动设备上播放的视频?
YouTube iOS SDK:正确的 GTLQueryYouTube 参数以过滤出无法在移动设备上播放的视频?
我无法在某些 ios 设备(ipad 和 iphone)上播放 HTML5 视频
使用 admob 展示广告后,无法在 iOS 设备上的 ionic 应用程序的 iframe 内播放嵌入的 youtube 视频