HTML 5 Open Video Player
The BBB is seeking to create an online video player using HTML5 and JavaScript.
Project Description
Inspired by Popcorn.js the BBB is looking to develop a video player using HTML5 and JavaScript. Extending on the basic video capabilities of play/pause/stop/volume, this player will be skinnable for consistent viewing across web browsers, and a large focus will be placed on accessibility in the form of subtitles and screen reader compatibility as well as social networking interaction. Complete information can be seen at the BBB's developer centre.
Project Leader(s)
Project Contributor(s)
TBA
Project Details
Below is a listing of project details.
Core Fuctionality
- Play/Pause/Stop
- Variable Volume/Mute
- Seeking, visible time codes, total duration
- Flash fallback if HTML5 is not fully supported
- Player resizing, ability for fullscreen
- Multiple codec support (mp4/h264, vp6), browser dependant?
- Completely customizable visuals through CSS
- Accessibility (Keyboard-only, screen-reader support)
- Internationalization (driven from config file)
Extensible Required Features
- Ratings (mature content, violence, sexuality)
- Support multiple streaming methods (rtmp, rtmpt, rtsp, http)
- Support multiple streaming speeds (low, medium, high)
- Subtitles support in TTXT
- Audio description playback – detect the MP4 audio track specific to Audio description
- Statistics : IP, onLoad, start, reached 25%, 50%, 75%, 90%, 100%, CC_ON, CC_OFF, AD_ON, AD_OFF (must be sent to NFB server)
- JSON, AMF support to interact with the NFB video management environment.
- Watermark overlay on the video.
- Source hiding : Provide the user with an ObjectID in order to hide the real address of the film in order to prevent downloads.
- Like feature. Within the player, users should have the ability to “like” a film. If the user is log in to the site, this features should populate his profile. If the user is not logged in, then it’s a simple add to build “most liked” film lists.
Optional Features
- Message overlay on load, pause/stop, end
- Message overlay at specific in and out point
- Recommendation at 90% of the film: once the film reaches the 90% mark, related films should be suggested with thumbnails, titles and duration. This needs to appear as a layer over the video
- Follow feature: The follow features means the user will be notified every time there is a comment on the film. This should be linked to the user profile, hence the user must be authenticated.
- Google translation: Give users the ability to get the machine translation from Google based on the subtitles of the film.
Page & Player Interaction
- Visual bookmarking
- Video chaptering
- Video assembly from multiple chapters of multiple videos
Releases
- 0.1
- Video chapter creation
- Video chapter playback
- Sequential video chapter playback
- JSON Serialization and Deserialization for Bookmark objects
- Dynamic DOM creation (Bookmark objects)
- Working demo
- 0.2
- TBA
Functionality | Assigned To | GitHub Branch | Last Updated | Blog | Demo |
TTXT Subtitle Parsing and Loading | Steven | TTXTSubs | November 10, 2010 | Blog | TTXT Demo |
Fix Event Overriding so that Video.js and BBB.js can respond to the same event | Steven | Seems to have resolved. | November 10, 2010 | - | Subtitling and Chapter Control both use timeupdate |
Add HTML5 local storage to BBB.js to simulate storage environment | Kevin | - | - | - | - |
Watermark overlay | Kevin | - | - | - | - |
Like Feature | Kevin | - | - | - | - |
Research into src hiding techniques | Kevin | - | - | - | - |
Reactor Library for JS Best Practices | Steven | RefactorToJSON | November 10, 2010 | Blog | - |
Settings File Implementation | Steven | - | - | - | - |
Test Suite Framework | Steven | testSuite | November 10, 2010 | Blog | Test Demos |
Fix: Need to distinguish subtitles by movie | - | - | - | - | - |
Remote Querying of Chapter Information (JSON formatted array) | Steven | remoteQuery | November 13, 2010 | - | - |
Source Code
Project News
- 10/22/10 - Release 0.1