Extension:TimedMediaHandler/VideoJS Player

This page is a translated version of the page Extension:TimedMediaHandler/VideoJS Player and the translation is 14% complete.
Outdated translations are marked like this.
新版播放器的預覽圖

The VideoJS Player is the video player for MediaWiki on Wikimedia projects.

它基于VideoJS,具有更现代、更快的UI,并兼容移动设备和HTML5。

播放器範例
Example audio player

There is both an audio and video player. You can find examples of both players on this page. Once launched you will see a control bar when interacting with the video.

The controls in order from left to right are:

  •  Play/pause control
  •  Volume control
  • Playback position
  • Remaining playback time
  •  Subtitle language selector and subtitle style controls
  •  Resolution selector
  •  Optional Picture-in-Picture control
  •  Fullscreen control
  •  Info button to take you to the file description page

Mouse and keyboard controls

  • Click the play icon above the thumbnail to begin playback of the media file.
  • Right click or middle click the thumbnail to open the file description page
  • Play/Pause the player with a single mouse click inside the player window
  • Double click the player window to enter or leave fullscreen mode
  • The following keyboard controls are available:
    k / spacebar-key
    Play/pause the media playback
    f-key
    Enter/Leave fullscreen
    m-key
    Mute the audio
  • The player is fully keyboard accessible using tab, enter and spacebar keys

已知問題

  • 有些檔案的字幕會失效。 我们放弃了在字幕中对wikicode标记的支持, 因此建议您重写这些字幕(T224258)。
  • Audio opens a dialog rather than displayed inline when there is a transcription. This is a deliberate change, that will in future allow us to display transcriptions for audio. Please see T246035.

视频播放器仍在开发中,但若您发现任何问题,请在讨论页上报告,或在Phabricator中存档。

Developers

Developers working on features that use the Video.js player will need to initialize and configure it appropriately. Below is an example of typical usage.

Basic Configuration Example

This is outdated and should be reworked to make use of our player wrappers, which apply consistent options and settings for videojs playback.
// The first argument can be a string ID or a <video> element
var player = videojs( 'my-player-id', {
    controls: true,
    autoplay: false,
    poster: "https://path/to/poster/image"
    sources: [ /* array of source files in various sizes and formats */ ]
} );

The sources can also be provided in the HTML ‎<video> element instead of in JS:

<video class="video-js">
  <source src="//vjs.zencdn.net/v/oceans.mp4" type="video/mp4">
  <source src="//vjs.zencdn.net/v/oceans.webm" type="video/webm">
</video>

Advanced configuration with Ogv.js support

If you need cross-platform playback of OGG or WebM files (many files in Commons are in these formats), you can use the Ogv.js plugin for Video.js, which is also included in TimedMediaHandler. Example configuration:

var player;

// Load the appropriate modules in ResourceLoader
mw.loader.using( 'ext.tmh.videojs-ogvjs' ).then( function () {
    // Load ogvjs if necessary; when this promise resolves,
    // all necessary code has been loaded
    return mw.OgvJsSupport.loadIfNeeded();
} ).then( function () {
    player = videojs( 'my-player-id', {
        controls: true,
        autoplay: false,
        poster: 'https://path/to/my/image',
        sources: [ /* array of sources */ ],
        
        // Ogv.js-specific configuration
        ogvjs: {
            base: mw.OgvJsSupport.basePath()
        }
    } );
} );