Note:

If you want to create a new page for developers, you should create it on the Moodle Developer Resource site.

HTML5 player: Difference between revisions

From MoodleDocs
No edit summary
(→‎Candidates: Add Flowplayer HTML5 data.)
Line 33: Line 33:
* Video.JS
* Video.JS
* Projekktor
* Projekktor
* ??? Are there other alternatives?
* ?Are there other alternatives?




Line 43: Line 43:
! Projekktor
! Projekktor
|-
|-
! Usable Player
! Usability
| Good
|-
|-
! Accessible Player:
! Accessible Player:
|
|-
|-
!
!
* Keyboard control
* Keyboard control
| Yes
|-
|-
!
!
* Subtitles
* Subtitles support
| Yes
|-
|-
!
!
* Touch interface
* Touch interface
| Yes
|-
|-
! Appearance:
! Appearance:
|
|-
|-
!
!
* Skins
* Skins
| Yes (via CSS)
|-
|-
!
!
* CSS customisation
* CSS customisation
| Yes
|-
|-
! Mobile platforms:
! Mobile platforms:
|
|-
|-
!
!
* iOS
* iOS
|
|-
|-
!
!
* Android
* Android
|
|-
|-
! Streaming protocols:
! Streaming protocols:
|
|-
|-
!
!
* RTMP
* RTMP
| Yes
|-
|-
!
!
* Adaptive HTTP
* Adaptive HTTP
| HLS
|-
|-
! Audio player
! Audio player
| No
|-
|-
! style="border-bottom: 2px solid;" | Embedding support
! style="border-bottom: 2px solid;" | Embedding support
| Yes (configurable)
|-
|-
! License
! License
| GPL v3 (with additional terms)
|-
|-
! JS library
! JS library
| jQuery
|-
|-
! Plugins infrastructure
! Plugins infrastructure
| No
|-
|-
! Flash fallback player
! Flash fallback player
| Flowplayer Flash
|-
|-
! API
! API
| Yes (plus window.flowplayer object)
|-
|-
|}
|}
Line 99: Line 120:


'''Pros:'''
'''Pros:'''
* Good looking player, resembles existing flash flowplayer in Moodle (with "functional" skin)
* Extensive customisation (via CSS3 skins and configuration object)
* Streaming support (RTMP, HLS)
* Good accessibility features
* Configurable embedding functionality
* Existing flash flowplayer can be configured for fallback (the appearance of player will not be affected).


'''Cons:'''
'''Cons:'''
* Require jQuery for functioning
* Flowplayer logo remains on screen


'''Technical notes (lessons learned from the prototypes)'''
'''Technical notes (lessons learned from the prototypes)'''
'''Outstanding work from the prototype'''


'''Missing features'''
'''Missing features'''
* Plugins infrastructure
* No audio support


=== Video.JS ===
=== Video.JS ===

Revision as of 16:46, 24 February 2014

Note: This page is a work-in-progress. Feedback and suggested improvements are welcome. Please join the discussion on moodle.org or use the page comments.

HTML5 Player with flash fallback
Project state In Development
Tracker issue https://tracker.moodle.org/browse/MDL-38158
Discussion https://moodle.org/mod/forum/discuss.php?d=222753#p1105373
Assignee Ruslan Kabalin

Template:Moodle 2.x

Project goals

The purpose of this document is to choose HTML5 with flash fallback for integration in Moodle.

The aim of this change is to reach a consistent look of the player among different platforms and browsers, as well as making sure that video will play regardless browser native support of the given format. Another aim is to improve accessibility and usability, enhance customisation.

Considerations

  • Usability of the player - is it easy to use it and intuitively understand how to use controls?
  • Accessibility of the player - possibility of keyboard navigation, subtitles support?
  • Appearance of the player - can its interface be modified, themes support?
  • Consistency among browsers - does player look the same?
  • Audio support - can player handle HTML5 <audio> tag?
  • Mobile platforms support - can player also work on iOS and Android?
  • Streaming media support (including adaptive-bitrate delivery) - can player handle RTMP, Apple HLS, Adobe HDS, Microsoft HSS?
  • Plugins support - can we use community plugins easily?
  • Embedding support - so users could post media content outside Moodle, if permitted.
  • Maintainability of the links between the player and Moodle - how much work will we need to do every time we upgrade?

Candidates

  • Flowplayer HTML5
  • Video.JS
  • Projekktor
  • ?Are there other alternatives?


Flowplayer HTML5 Video.JS Projekktor
Usability Good
Accessible Player:
  • Keyboard control
Yes
  • Subtitles support
Yes
  • Touch interface
Yes
Appearance:
  • Skins
Yes (via CSS)
  • CSS customisation
Yes
Mobile platforms:
  • iOS
  • Android
Streaming protocols:
  • RTMP
Yes
  • Adaptive HTTP
HLS
Audio player No
Embedding support Yes (configurable)
License GPL v3 (with additional terms)
JS library jQuery
Plugins infrastructure No
Flash fallback player Flowplayer Flash
API Yes (plus window.flowplayer object)

Flowplayer HTML5

Pros:

  • Good looking player, resembles existing flash flowplayer in Moodle (with "functional" skin)
  • Extensive customisation (via CSS3 skins and configuration object)
  • Streaming support (RTMP, HLS)
  • Good accessibility features
  • Configurable embedding functionality
  • Existing flash flowplayer can be configured for fallback (the appearance of player will not be affected).

Cons:

  • Require jQuery for functioning
  • Flowplayer logo remains on screen

Technical notes (lessons learned from the prototypes)

Missing features

  • Plugins infrastructure
  • No audio support

Video.JS

Pros:

Cons:

Technical notes (lessons learned from the prototypes)

Outstanding work from the prototype

Missing features

Projekktor

Pros:

Cons:

Technical notes (lessons learned from the prototypes)

Outstanding work from the prototype

Missing features

Sub Tasks

Mock-Ups/Prototypes

Related Tracker Issues

Useful links