【问题标题】:FFMPEG&PHP: Videos modified by FFMPEG are not played in FirefoxFFMPEG&PHP:经过 FFMPEG 修改的视频无法在 Firefox 中播放
【发布时间】:2016-07-20 19:27:22
【问题描述】:

我使用此代码剪切一段视频

exec("ffmpeg -i ".$url." -ss ".$start." -to ".$end." -c copy ".$result);

这段代码效果很好,结果在谷歌浏览器和IE下播放,但是firefix报错

找不到支持的 mime 类型的视频。

$url 是源视频,在所有浏览器中播放。

视频格式为.mp4,播放器为浏览器的html5播放器。我该如何解决这个问题?

【问题讨论】:

  • 你有
  • 原始 .mp4 视频能否在 Firefox 中正确播放?你能分享一个演示这个问题的活生生的例子吗?

标签: php html video ffmpeg


【解决方案1】:

mp4 不受 Firefox 支持,除非存在 3rd 方编解码器来处理解码 - https://developer.mozilla.org/en-US/docs/Web/HTML/Supported_media_formats - 如果您想将 Firefox 作为目标,您还应该提供 Firefox 开箱即用支持的编码。

您可以使用canPlayType 功能查看您是否需要后备...

var obj = document.createElement('video');
if (obj.canPlayType('video/mp4') == 'probably') {
    // you are okay with mp4
} else {
    // try with video/webm or some other supported format
} 

您还应该通过header:确保响应包含正确的内容类型(mime 类型):

header('Content-type: video/mp4');

【讨论】:

  • 源MP4可以在火狐中播放,OP只是流复制一部分,所以是相同的编解码器和格式。
  • @Mulvya,视频是通过我网站的 CPanel 播放的。我的意思是,当我点击他们的文件,然后从菜单中选择 view 时,它们会在浏览器中播放,但其中一些没有通过我网站的 <video> 标记播放。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2016-04-20
  • 2019-12-05
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多