HTML5视屏播放插件Video.js

HTML5视屏播放插件Video.js
video.js是一款基于HTML5的网络视频播放器。它支持HTML5和Flash视频,以及YouTube和Vimeo(通过插件)等流行网站视屏播放。支持在桌面和移动设备上播放视频,video.js 可以自动检测浏览器对 HTML5 的支持情况,如果不支持 HTML5 则自动使用 Flash 播放器,该视屏播放插件已经在成千上万的网站上被使用。

入门指南

快速开始

将下面的这些标签添加到您的HTML的<head>标签中

<link href="//vjs.zencdn.net/6.7/video-js.min.css" rel="stylesheet">
<script src="//vjs.zencdn.net/6.7/video.min.js"></script>

想使用最新版本的video.js和相关链接,请查看我们网站上的快速入门教程

在CDN vjs.zencdn.net上托管的Video.js版本中,我们包含一个Google Analytics(用于跟踪分析),用于跟踪从CDN加载的使用者的随机抽样(当前为1%)。这使我们能够(粗略地)看到哪些浏览器正在使用,以及其他有用的指标,比如操作系统和使用设备。如果不想停用分析功能,则可以通过在添加Video.js之前简单的声明以下全局内容即可:

<script>window.HELP_IMPROVE_VIDEOJS = false;</script>

或者,您也可以使用npm方式获取Video.js ,直接从GitHub下载,或者通过unpkg或cdnjs等其他CDN方式获取Video.js。这些方式获取的video.js版本不包括Google Analytics跟踪分析。

<!-- unpkg方式 -->
<link href="https://unpkg.com/video.js/dist/video-js.css" rel="stylesheet">
<script src="https://unpkg.com/video.js/dist/video.js"></script>

<!-- cdnjs方式 -->
<link href="https://cdnjs.cloudflare.com/ajax/libs/video.js/6.3.3/video-js.css" ref="stylesheet">
<script src="https://cdnjs.cloudflare.com/ajax/libs/video.js/6.3.3/video.js"></script>

接下来,使用video.js与创建<video>元素一样简单,但是有一个附加的data-setup属性,该属性必须有个值{},可以包含任何Video.js 选项 - 只要确保它包含有效的JSON!

<video
    id="my-player"
    class="video-js"
    controls
    preload="auto"
    poster="//vjs.zencdn.net/v/oceans.png"
    data-setup='{}'>
  <source src="//vjs.zencdn.net/v/oceans.mp4" type="video/mp4"></source>
  <source src="//vjs.zencdn.net/v/oceans.webm" type="video/webm"></source>
  <source src="//vjs.zencdn.net/v/oceans.ogv" type="video/ogg"></source>
  <p class="vjs-no-js">
    To view this video please enable JavaScript, and consider upgrading to a
    web browser that
    <a href="http://videojs.com/html5-video-support/" target="_blank">
      supports HTML5 video
    </a>
  </p>
</video>

当页面加载时,Video.js会找到这个元素并自动设置一个播放器。如果你不想使用自动设置,你可以忽略data-setup属性,并用videojs函数初始化<video>元素.该videojs函数还接受一个options对象和一个回调,当播放器准备好时,回调函数将被调用。

var options = {};
var player = videojs('my-player', options, function onPlayerReady() {
  videojs.log('Your player is ready!');

  // In this context, `this` is the player that was created by Video.js.
  this.play();

  // How about an event listener?
  this.on('ended', function() {
    videojs.log('Awww...over so soon?!');
  });
});

插件语言包选择

videojs对应的语言文件存放在lang/目录下,文件名称是标准语言代码,例如es.js是西班牙语,zh-CN.js是简体中文。

除了video.js提供的独立脚本,也可以通过API提供的addLanguage方式手动定义新语言。其需要两个参数 标准语言代码, 语言定义对象。如:

videojs.addLanguage('es', {
  Play: 'Reproducción',
  Pause: 'Pausa',
  'Current Time': 'Tiempo reproducido',
  'Duration Time': 'Duración total',
  'Remaining Time': 'Tiempo restante',
  ...
});

如果对象包含以前翻译过的字符串,addLanguage()将覆盖现有的翻译。然而,已经本地化的文本将不会在生成之后更新。

使用

videojs的有多个翻译在lang目录下,为需要支持的每种语言添加lang脚。

<script src="//example.com/path/to/video.min.js"></script>
<script src="//example.com/path/to/lang/es.js"></script>

除了向Video.js本身提供语言外,Player还可以通过以下languages选项为各个实例提供自定义语言支持:

// Provide a custom definition of Spanish to this player.
videojs('my-player', {
  languages: {
    es: {
      Play: 'Reproducir'
    }
  }
});

设置播放器语言

播放器使用的语言可以通过language选项来设置

// Set the language to Spanish for this player.
videojs('my-player', {
  language: 'es'
});

该播放器的语言方法可用于在实例化后设置语言(‘es’)。但是,这通常是没有用的,因为它不更新已经存在的文本。

确定播放器语言

播放器语言通过以下优先级确定:

  • 选项中指定的语言
  • 在播放器元素上由lang属性指定的
  • 由最近的带lang属性的父元素指定的语言,向上包括<html>元素。
  • 浏览器语言偏好设置;如果配置多个,则使用第一个语言。
  • 英语

内部语言选择

语言代码被认为是不区分大小写的(例如en-US== en-us)。
如果没有与子代码(例如en-us)匹配的语言代码,则使用可用的匹配的主代码(例如en)。

参考:video.js官方教程-英文版

the end

上一篇:   没有了