private void InitalizePlugin()
{
this._ControllerFactory.HLSControllerReady += HLSControllerFactory_HLSControllerReady;
// register the scheme handler for HTTP so that we can get the initial playlist
this._MediaPlayer.MediaExtensionManager.RegisterSchemeHandler("Microsoft.HLSClient.HLSPlaylistHandler", "ms-hls:", _ControllerFactoryPropertySet);
this._MediaPlayer.MediaExtensionManager.RegisterSchemeHandler("Microsoft.HLSClient.HLSPlaylistHandler", "ms-hls-s:", _ControllerFactoryPropertySet);
// register both common MIME types
this.RegisterByteStreamHandler(".m3u8", "application/vnd.apple.mpegurl");
this.RegisterByteStreamHandler(".m3u8", "application/x-mpegurl");
this._MediaPlayer.SelectedAudioStreamChanged += MediaPlayer_SelectedAudioStreamChanged;
this._MediaPlayer.MediaLoading += MediaPlayer_MediaLoading;
this._MediaPlayer.MediaOpened += MediaPlayer_MediaOpened;
this._MediaPlayer.MediaClosed += MediaPlayer_MediaClosed;
this._MediaPlayer.SelectedCaptionChanged += MediaPlayer_SelectedCaptionChanged;
// Currently, the HLS SDK is not capable of handling the rapid-fire seek requests generated if
// seekWhileScrubbing is true, so turning it off by default. If the HLS SDK is updated to tolerate
// rapid-fire seek requests, this should be removed.
this._MediaPlayer.SeekWhileScrubbing = false;
}