http://www.videojs.com looks nice. Let's play
[[ http://tools.wmflabs.org/hartman/mediawiki-dev/index.php?title=Player_demo | Get your demo here ! ]]
Blockers
===========
[ ] Support for audio player
[x] We need a separate skin mode for audio player
[x] The skin needs to be better sizable to small sizes
[ ] T121387 We need support for audio captioning. Either:
- we need to switch audio to video elements, so we have a surface to draw into. Downside. ipa pronunciation player 15px x 15px probably doesn't really fit this model
- create a new plugin, that takes the events from subtitles, then implement a transcript surface (put it in a centered 'modal'-ish bar. (see VoiceOver ui). More work, but likely more sustainable long term, when we have multiple forms of players.
[ ] Fix rendering of slider in small player (video.js error about number of elements in controls)
[ ] Fallback for Grade C browsers that don't support HTML5
- {T148586}
- Kultura outputs an `<img>` with a download link. JS converts it to `<video>`.
- We can probably add this fallback content to `<video>` which (by design) is ignored in modern browsers.
Former blockers, now fixed
===========
[x] Subtitle support
[x] T116154 Add support to WebVTT. See also [[ https://www.mediawiki.org/wiki/Extension:TimedMediaHandler/TimedTextRework | TimedText rework ]]
[x] Convert SRT to VTT from API (T111552) – using <https://github.com/captioning/captioning>
- Or run a bot and just skip flexibility for now
- [[ https://commons.wikimedia.org/wiki/Category:Files_with_closed_captioning | Commons has most of these ]], there are 1430'ish A/V files with one or more TimedText pages, 7300'ish total timed text files.
[x] link to file description page T132493
[x] Loading i18n files
- Needs RL'ifying
[x] Multi resolution support:
- https://github.com/kmoskwiak/videojs-resolution-switcher ( VideoJS 5+ support and greater support over deciding resoulutions. )
- Mostly done.
- https://github.com/kmoskwiak/videojs-resolution-switcher/issues/15
- Our labels/resolutions is different from how it is encoded in this plugin. Make this configurable inisde that plugin ?
- currently blocked on https://github.com/brion/ogv.js/issues/334
- https://github.com/streamroot/videojs-quality-picker might be a cleaner alternative ?
[x] play button on centre of player
- we won't do this, because for mwembed there is a request to have it off-center
[x] start from offset (slightly broken in multiple videos per page)
[x] Doing this with native media fragments
[x] Needs ogv.js support [[ https://github.com/brion/ogv.js/issues/381 | Upstream ticket ]]
[x] Add ogv.js tech plugin to Video.js
[x] Iframe embed support
- Doesn't work. <https://test2.wikipedia.org/w/index.php?title=File:Arborophila_brunneopectus_pair_feeding_-_Kaeng_Krachan.ogv&embedplayer=yes>.
- Height is broken on embedded player when using video.js.
- Advertise it on regular usage. Perhaps via plugin that adds an embed code panel: https://github.com/guardian/videojs-embed
Enhancements Kultura had
=======
TODO: create new tasks after Video.js becomes default
[ ] Make default resolution based on both thumbnail size + device pixel ratio (currently, only based on thumb size)
[ ] Remember user resolution override
[ ] Remember user last selected volume level <https://github.com/theonion/videojs-persistvolume>
[ ] Add a download button? (Native context menu "Save as.." might suffice, also download link exists on File info page)
[ ] End card showing title, author, etc (MediaViewer / Commons meta data) – <http://theonion.github.io/videojs-endcard/>
Ideas for later
=======
[ ] Related videos
[x] Replay button [[ https://gerrit.wikimedia.org/r/#/c/286761/ | ChangeID ]]
[ ] [[ http://stackoverflow.com/a/31570243 | Airplay ]] and [[ https://github.com/benjipott/video.js-chromecast | Chromecast ]] support
[ ] Poster for audio files (to essentially support adding audio underneath a thumbnail, e.g. in the infobox of a bird!)
[ ] Separate TMH playback technology so that Score extension can re-use the client-side player + maybe transcoding.
[ ] "Small thumbnail" mode T133500
- Use cases: Category pages, galleries, small thumbnail sizes.
- Currently (Kaltura mode) opens these in a dialog.
[ ] Smaller "play"button in case of small thumbnails?
[ ] Future options:
- Open in dialog with OOjs UI
- Or; Add support in MediaViewer {T77147}