javascript - MediaElement.js - Flash 视频在完全加载之前不会播放

标签 javascript flash video video-streaming m4v

我遇到一个问题,MediaElement.js(我的 Flash 视频播放器)在视频完全加载之前不会播放我的 .m4V 视频文件(使用 ffmpeg 编码)。

我已经用各种第三方视频文件进行了测试,这些文件似乎在完全加载之前就可以立即播放。只有我的文件没有:(

当使用 html5 视频解决方案播放时,它们会立即播放,而不是在 flash 后备上。

这可能与视频编码的设置有关吗?我看不出任何其他原因。

代码:

<video id="player1" src='BriefTour.m4v' type="video/mp4" preload="none"></video>

<script>
var videoPlayer = MediaElement('player1',{
  success:function(me){me.play();}              
});
</script>

如您所见,我没有指定任何选项,播放器处于默认设置。

希望有人以前遇到过这个问题并能帮助我!

最佳答案

当您编码自己的视频并使用 FFmpeg 时,我建议使用“qt-faststart”。

这是一个包含在 FFmpeg 中的有用工具,它可以重新排列带有 H.264 视频的文件,“这样 moov 原子就在数据前面,从而促进网络流式传输”。基本上,它允许网络电影在完全下载之前开始播放。

使用以下 ffmpeg 目录启用它:

cd ~/ffmpeg
make tools/qt-faststart

用法(在你的 ffmpeg 编码之后):

qt-faststart input.foo output.foo

这应该允许您的播放器在视频仍在下载时播放它。

关于javascript - MediaElement.js - Flash 视频在完全加载之前不会播放,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5058917/

相关文章:

ruby-on-rails-3 - 请求文件头信息

android - 播放视频后如何返回

javascript - 使用 php 将 sql 转为 html

javascript - Emstripten 可以编译 iostream 库吗?

javascript - 从 javascript 中函数的属性返回串联字符串

flash - 捕获 Flash URLLoader 错误

flash - XFL - 什么是 ./bin/*.dat 文件?

python - 如何在 flash 网页上运行 PyQt4?

javascript - div 下的可滚动 div

javascript - 调整大小时的全屏背景视频宽高比