Player: Fresh, near stock build of Strobe Media Playback and its underlying OSMF framework. Latest release, which is version 2.0. Only customization is to remove most of the visual assets from the build to reduce the swf file size since we don't use them.
Plugins: Plugins are externalized and loaded dynamically rather than built into the player. Can therefore be maintained independently. Also may be loaded only as needed. For the sake of this demo, all are loaded by default.
HLS: The plugin that we use for HLS playback has been updated to the latest version and externalized.
Subtitles: Adapted a Subtitles plugin concept from an open source project into one that is truly a self-contained plugin for Strobe. You may feed in multiple .srt sources (on initialization). It will display whichever source is selected. For the demo, I've hard coded a sample which demonstrates various subtitle content visuals. As you may observe, it doesn't care about the type of video.
Captions: Adobe Media Server comes packaged with a library which allows you to add captioning functionality to your OSMF player. It's just a matter of pointing it to your player. I created a simple plugin wrapper for this which wires everything up and exposes all of its configuration through the ExternalInterface to make them accessible to JavaScript. Documentation: https://helpx.adobe.com/adobe-media-server/dev/configure-closed-captioning.html#support_for_osmf