2

我使用 jwplayer.version = '5.10.2295' 和浏览器 chrome 25。

我的代码:

jwplayer('container').setup({
    file: 'path...',
    width: '300px',
    height: '100px',
    autostart: true,
    modes: [
        { type: 'html5' },
        { type: 'flash', src: 'path...' }
    ]
});

加载页面时,我的资源(mp4 视频文件)开始正确显示 - 没关系。但是对简单的 jwplayer JS API 方法没有反应,例如 jwplayer().stop()。有些控件不可用(播放、顶部、搜索),但“全屏模式”按钮和音量按钮一样有效。

而且最有趣的是,js api和控制按钮在视频开始播放后的几秒钟内可用(如果浏览器缓存被清除),然后交互没有响应。但是某些方法始终正确工作(例如 jwplayer().setFullscreen())。

ps 我看到了相关的问题,但答案对我来说不够深。

4

2 回答 2

2

我找到了解决方案。

我的视频文件在路径中没有指定的扩展名(我有'path/to/file'而不是'path/to/file.mp4'),这个事实破坏了jwPlayer的深处。我们需要指定我们操作的文件类型:

jwplayer('container').setup({
    file: 'path/to/file-with-no-extension',
    width: '300px',
    height: '100px',
    autostart: true,
    type: 'video',  //helps jwplayer to determine how to handle our resource with no extension
    modes: [
        { type: 'html5' },
        { type: 'flash', src: 'path...' }
    ]
});

这就是解决方案。

于 2012-12-12T10:10:36.813 回答
1

从http://www.longtailvideo.com/jw-player/download/下载 jwplayer6

将这些文件放入特定目录:-

  • 应用程序/资产/jwplayer/jwplayer.flash.swf
  • 供应商/资产/javascripts/jwplayer.js
  • 供应商/资产/javascripts/jwplayer.html5.js

然后在application.js中添加这些行

//= require jwplayer
//= require jwplayer.html5

在您正在播放视频的页面上,添加这些行

<script type="text/javascript">jwplayer.key="YOUR_JWPLAYER_KEY";</script>
<div id="video">Loading the player ...</div>
<script type="text/javascript">
jwplayer("video").setup({
    flashplayer: "<%=asset_path('jwplayer.flash.swf')%>",
    file: "<%= file_path %>",
    height: 360,
    width: 640,
    analytics: {
        enabled: false,
       cookies: false
   }
});

http://account.longtailvideo.com/#/home在这里您可以从获取您的许可证密钥部分注册时获得免费的自托管密钥。

于 2013-05-29T15:44:58.333 回答