gitextract_wtstfblr/ ├── .gitignore ├── .jshintrc ├── Gruntfile.js ├── LICENSE ├── README.md ├── bower.json ├── package.json ├── releases.md ├── samples/ │ ├── ajs-player.html │ ├── ajs-plugin-captions.html │ ├── ajs-plugin-editor.html │ ├── ajs-plugin-overlay.html │ ├── ajs-plugin-text-sync.html │ ├── ajs-plugin-timeline.html │ ├── ajs-plugin-watermark.html │ ├── ajs-webfont.html │ └── css/ │ ├── amalia-js-demo.css │ └── default.css ├── samples-data/ │ └── examples/ │ └── json/ │ ├── amalia-simple01.json │ ├── amalia01-ball.json │ ├── amalia01-events.json │ ├── amalia01-kf.json │ ├── amalia01-overlay.json │ └── amalia01-text.json ├── src/ │ ├── .jshintrc │ ├── LICENSE │ ├── THIRD_PARTY_LICENSES │ ├── assets/ │ │ ├── fonts/ │ │ │ └── ajs-webfont.afm │ │ ├── less/ │ │ │ ├── ajs-animations.less │ │ │ ├── ajs-webfont.less │ │ │ ├── default-style.less │ │ │ ├── default.less │ │ │ ├── player-custom-control-bar.less │ │ │ ├── player.less │ │ │ ├── plugin-captions.less │ │ │ ├── plugin-editor.less │ │ │ ├── plugin-menu-contextuel.less │ │ │ ├── plugin-overlay.less │ │ │ ├── plugin-selected-item-editor.less │ │ │ ├── plugin-storyboard.less │ │ │ ├── plugin-text-sync.less │ │ │ ├── plugin-timeline.less │ │ │ ├── plugin-watermark.less │ │ │ └── plugin.less │ │ └── sass/ │ │ ├── _ajs-animations.scss │ │ ├── _ajs-mixins.scss │ │ ├── _ajs-webfont.scss │ │ ├── _default-style.scss │ │ ├── _player-custom-control-bar.scss │ │ ├── _player.scss │ │ ├── _plugin-captions.scss │ │ ├── _plugin-editor.scss │ │ ├── _plugin-menu-contextuel.scss │ │ ├── _plugin-overlay.scss │ │ ├── _plugin-selected-item-editor.scss │ │ ├── _plugin-storyboard.scss │ │ ├── _plugin-text-sync.scss │ │ ├── _plugin-timeline.scss │ │ ├── _plugin-watermark.scss │ │ ├── _plugin.scss │ │ ├── _plugin_d3js_chart.scss │ │ └── main.scss │ ├── helpers/ │ │ ├── browser-feature-detection.js │ │ ├── html5-helper.js │ │ └── utilities-helper.js │ ├── i18n/ │ │ ├── player-error-message-en.js │ │ └── player-message-en.js │ ├── ina-player.js │ ├── log/ │ │ ├── .jshintrc │ │ └── log-handler.js │ ├── player/ │ │ ├── base-player.js │ │ ├── constants/ │ │ │ ├── player-error-code.js │ │ │ ├── player-event-type.js │ │ │ └── player-message.js │ │ ├── loader/ │ │ │ ├── base-loader.js │ │ │ ├── http-loader.js │ │ │ └── ws-loader.js │ │ ├── loaderBase.js │ │ ├── local-storage-manager.js │ │ ├── media-factory.js │ │ ├── media-type-dash-mpeg.js │ │ ├── media-type-manager.js │ │ ├── metadata/ │ │ │ ├── localisation-manager.js │ │ │ └── metadata-manager.js │ │ ├── parsers/ │ │ │ └── base-parser-metadata.js │ │ ├── player-html5.js │ │ ├── plugins/ │ │ │ ├── captions-base.js │ │ │ ├── context-menu-plugin.js │ │ │ ├── custom-control-bar.js │ │ │ ├── plugin-base-multi-blocks.js │ │ │ ├── plugin-base-simple-block.js │ │ │ ├── plugin-base.js │ │ │ ├── plugin-binding-manager.js │ │ │ └── plugin-manager.js │ │ ├── shortcuts-manager.js │ │ └── widgets/ │ │ ├── base-button.js │ │ ├── cast-button.js │ │ ├── channel-volume-control-bar.js │ │ ├── fullscreen-button.js │ │ ├── jog-shuttle-button.js │ │ ├── label.js │ │ ├── pause-button.js │ │ ├── play-button.js │ │ ├── progress-bar.js │ │ ├── time-label.js │ │ ├── volume-control-bar.js │ │ └── widget-base.js │ ├── player-map.js │ ├── plugins/ │ │ ├── captions/ │ │ │ └── captions.js │ │ ├── control-bar/ │ │ │ └── progress-bar.js │ │ ├── d3js-chart/ │ │ │ └── plugin-d3js-chart.js │ │ ├── editor/ │ │ │ ├── plugin-metadata-block-editor.js │ │ │ ├── plugin-metadata-item-editor.js │ │ │ ├── plugin-metadata-items-editor.js │ │ │ ├── plugin-metadata-items-ref-editor.js │ │ │ └── plugin-metadata-list-editor.js │ │ ├── overlay/ │ │ │ ├── draw-base.js │ │ │ ├── draw-ellipse.js │ │ │ ├── draw-rect.js │ │ │ ├── overlay.js │ │ │ └── spatials-data-parser.js │ │ ├── storyboard/ │ │ │ ├── base-frame-position-calculator.js │ │ │ └── plugin-storyboard.js │ │ ├── text-sync/ │ │ │ ├── component.js │ │ │ └── text-sync.js │ │ ├── timeline/ │ │ │ ├── base-component.js │ │ │ ├── cuepoints-component.js │ │ │ ├── default-configuration.js │ │ │ ├── focus-component.js │ │ │ ├── histogram-component.js │ │ │ ├── images-component.js │ │ │ ├── segments-component.js │ │ │ ├── tic-component.js │ │ │ ├── time-axis-component.js │ │ │ ├── timeline.js │ │ │ ├── visual-component.js │ │ │ └── zoom-component.js │ │ ├── watermark/ │ │ │ └── watermark.js │ │ └── yt-player/ │ │ └── yt-player.js │ └── utils/ │ ├── jquery-class.js │ ├── jquery-debouncedresize.js │ ├── jquery-knob.js │ ├── jquery.hotkeys.js │ ├── jquery.ui.touch-punch.js │ └── raphael_free_transform.js └── tests/ ├── .jshintrc ├── log/ │ ├── logHandler_test.html │ └── logHandler_test.js └── player/ ├── LoaderBase_test.html ├── LoaderBase_test.js ├── PlayerErrorCode_test.html ├── PlayerErrorCode_test.js └── data/ ├── VideoEntities.json └── VideoKeyframes.json