/// <summary> /// This method Register the Smooth Streaming component . /// </summary> public bool RegisterSmoothStreaming() { bool bResult = false; bResult = true; // Smooth Streaming initialization // Init SMOOTH Manager if (smoothStreamingManager != null) { smoothStreamingManager.ManifestReadyEvent -= SmoothStreamingManager_ManifestReadyEvent; smoothStreamingManager.AdaptiveSourceStatusUpdatedEvent -= SmoothStreamingManager_AdaptiveSourceStatusUpdatedEvent; smoothStreamingManager = null; } smoothStreamingManager = Microsoft.Media.AdaptiveStreaming.AdaptiveSourceManager.GetDefault() as Microsoft.Media.AdaptiveStreaming.AdaptiveSourceManager; if(extension==null) extension = new Windows.Media.MediaExtensionManager(); if ((smoothStreamingManager != null) && (extension != null)) { PropertySet ssps = new PropertySet(); ssps["{A5CE1DE8-1D00-427B-ACEF-FB9A3C93DE2D}"] = smoothStreamingManager; extension.RegisterByteStreamHandler("Microsoft.Media.AdaptiveStreaming.SmoothByteStreamHandler", ".ism", "text/xml", ssps); extension.RegisterByteStreamHandler("Microsoft.Media.AdaptiveStreaming.SmoothByteStreamHandler", ".ism", "application/vnd.ms-sstr+xml", ssps); extension.RegisterByteStreamHandler("Microsoft.Media.AdaptiveStreaming.SmoothByteStreamHandler", ".isml", "text/xml", ssps); extension.RegisterByteStreamHandler("Microsoft.Media.AdaptiveStreaming.SmoothByteStreamHandler", ".isml", "application/vnd.ms-sstr+xml", ssps); extension.RegisterSchemeHandler("Microsoft.Media.AdaptiveStreaming.SmoothSchemeHandler", "ms-sstr:", ssps); extension.RegisterSchemeHandler("Microsoft.Media.AdaptiveStreaming.SmoothSchemeHandler", "ms-sstrs:", ssps); smoothStreamingManager.ManifestReadyEvent += SmoothStreamingManager_ManifestReadyEvent; smoothStreamingManager.AdaptiveSourceStatusUpdatedEvent += SmoothStreamingManager_AdaptiveSourceStatusUpdatedEvent; bResult = true; } return bResult; }
/// <summary> /// This method Unregister the Smooth Streaming component . /// </summary> public bool UnregisterSmoothStreaming() { bool bResult = false; if (smoothStreamingManager != null) { smoothStreamingManager.ManifestReadyEvent -= SmoothStreamingManager_ManifestReadyEvent; smoothStreamingManager.AdaptiveSourceStatusUpdatedEvent -= SmoothStreamingManager_AdaptiveSourceStatusUpdatedEvent; smoothStreamingManager = null; } return bResult; }