UNPKG

dashjs

Version:

A reference client implementation for the playback of MPEG DASH via Javascript and compliant browsers.

91 lines (84 loc) 3.55 kB
## Steps for using ControlBar.js with Dash.js ##### PLEASE NOTE: If you are having layout issues please make sure you have css class .control-icon-layout added to the correct buttons or copy the HTML snippet below. 1. **Import CSS and JS** ```html <link rel="stylesheet" href="../../contrib/akamai/controlbar/controlbar.css"> <script src="../../contrib/akamai/controlbar/ControlBar.js"></script> ``` 2. **Add HTML Snippet** ```html <div id="videoController" class="video-controller unselectable"> <div id="playPauseBtn" class="btn-play-pause" title="Play/Pause"> <span id="iconPlayPause" class="icon-play"></span> </div> <span id="videoTime" class="time-display">00:00:00</span> <div id="fullscreenBtn" class="btn-fullscreen control-icon-layout" title="Fullscreen"> <span class="icon-fullscreen-enter"></span> </div> <div id="bitrateListBtn" class="control-icon-layout" title="Bitrate List"> <span class="icon-bitrate"></span> </div> <input type="range" id="volumebar" class="volumebar" value="1" min="0" max="1" step=".01"/> <div id="muteBtn" class="btn-mute control-icon-layout" title="Mute"> <span id="iconMute" class="icon-mute-off"></span> </div> <div id="trackSwitchBtn" class="control-icon-layout" title="A/V Tracks"> <span class="icon-tracks"></span> </div> <div id="captionBtn" class="btn-caption control-icon-layout" title="Closed Caption"> <span class="icon-caption"></span> </div> <span id="videoDuration" class="duration-display">00:00:00</span> <div class="seekContainer"> <input type="range" id="seekbar" value="0" class="seekbar" min="0" step="0.01"/> </div> </div> ``` 3. **Create ControlBar.js** ```js player.attachView(video); var controlbar = new ControlBar(player); //Player is instance of Dash.js MediaPlayer; controlbar.initialize(); ``` 4. **Helpful API Call** ```js controlbar.reset(); controlbar.show(); controlbar.hide(); controlbar.disable(); controlbar.enable(); ``` --- #### Multiple instances To instantiate multiple players with control bars, set a suffix for every element id defined in the snippet and pass it in initialize method: ```html <div id="videoController_1" class="video-controller unselectable"> <div id="playPauseBtn_1" class="btn-play-pause" title="Play/Pause"> <span id="iconPlayPause_1" class="icon-play"></span> </div> <span id="videoTime_1" class="time-display">00:00:00</span> <div id="fullscreenBtn_1" class="btn-fullscreen control-icon-layout" title="Fullscreen"> <span class="icon-fullscreen-enter"></span> </div> <div id="bitrateListBtn_1" class="control-icon-layout" title="Bitrate List"> <span class="icon-bitrate"></span> </div> <input type="range" id="volumebar_1" class="volumebar" value="1" min="0" max="1" step=".01"/> <div id="muteBtn_1" class="btn-mute control-icon-layout" title="Mute"> <span id="iconMute_1" class="icon-mute-off"></span> </div> <div id="trackSwitchBtn_1" class="control-icon-layout" title="A/V Tracks"> <span class="icon-tracks"></span> </div> <div id="captionBtn_1" class="btn-caption control-icon-layout" title="Closed Caption"> <span class="icon-caption"></span> </div> <span id="videoDuration_1" class="duration-display">00:00:00</span> <div class="seekContainer"> <input type="range" id="seekbar_1" value="0" class="seekbar" min="0" step="0.01"/> </div> </div> ``` ```js controlbar.initialize('_1'); ```