1

我想使用具有设置偏移量的 jwplayer6 播放 HLS 流。我的代码如下所示:

plist = [
{
    file: '/uploads/index.m3u8',
    main: true
}
];

jwplayer("fftv_player").setup({
  playlist: plist,
  height: 312,
  width: 554,
  primary: 'flash',
  autostart: true
});

jwplayer("fftv_player").onPlaylistItem(function (obj) {
  if (jwplayer("fftv_player").getPlaylistItem().main){
    jwplayer("fftv_player").seek(20);
  }
});

我的项目总是从一开始就开始播放的问题。如果我在控制台类型:jwplayer("fftv_player").seek(20)项目从 20 秒开始播放。为什么会这样?

4

1 回答 1

1

我们正在尝试 onPlaylistItem(index).seek(seconds) 但这不起作用。这仅适用于活动播放列表项,当然-仅适用于第一个文件。

我们正在尝试为每个播放列表项目使用带有搜索按钮的预加载播放列表。我们使用包含更多文件的播放列表,用户可以转到特定文件并再次单击调用的按钮:

jwplayer().onPlaylistItem(<index_file>).seek(seconds);

这会跳转到秒,但不会跳转到正确的播放列表项。

使用“playListItem”进行先前的测试,播放器跳转到正确的文件,但从头开始,而不是寻找秒。(但只能在 html5 模式下工作,而不是 Flash)。

现在我们已经测试了这段代码

<a onclick='var only_once =false;jwplayer().playlistItem(1);jwplayer().onPlay(function () {  
if (only_once == false) {
        only_once = true;
          jwplayer().seek(60);
    }
});' class="btn">HLS play 2nd file at 1 min</a>

但此解决方案仅适用于 Flash 模式和 iOS,不适用于 Safari(html 5 模式)和 Android > 4.1(带有 androidhls 选项)。

于 2014-08-27T10:45:55.333 回答