流媒體已在網路上無處不在。似乎所有人(從新聞網站到社交網路再到隔壁的鄰居)都在享受線上視 頻體驗。由於使用者群的不斷攀升,大多數網站需要以一種值得信賴、方便使用的方式為其客戶提供高品質 視頻,通常為高品質頻寬感知 視頻。
線上媒體傳輸體驗的核心要素是播放器本身。播放器是使用者與之發生互動的介質,它可以驅使使用者獲 得線上體驗的每一個要素。播放器如此備受關注,毫無疑問,基於 Web 的現代媒體播放器在實現時勢必 要比幾年前的老款播放器複雜得多。因此,開發人員需要一個穩健的架構來構建播放器。
Silverlight Media Framework (SMF) 是一個開源項目,由 Microsoft 在 2009 年 Microsoft 專業 開發人員大會上發布。此項目是一個可擴充的、具備高度伸縮性的 Silverlight 視頻架構,它直接解決 了開發人員和設計人員的需求,為其提供了穩定的核心來建立自己的播放器。Silverlight Media Framework 的核心代碼已根據從 NBC Olympics 和 Sunday Night Football Web 視頻項目中所學的課程 經過最佳化。
本文將介紹 SMF 的基本要素,示範如何將 SMF 整合到您自己的播放器項目中,並通過一個簡單項目 向您逐步介紹如何使用 SMF 打造自訂播放器體驗。我將向您展示如何使用 SMF 的日誌記錄、設定和事 件處理功能。最後,我將建立一個播放器應用程式,該應用程式會在當前的視頻播完後顯示建議您日後觀 看的視頻。
SMF 入門
開始前,您需要先從 Codeplex (smf.codeplex.com) 下載架構。您還需要下載Smooth Streaming播放器開 發工具包 (iis.net/expand/smoothplayer) 並在使用 SMF 的任何項目中參考它。Smooth Streaming播放器開 發工具包不屬於 SMF,它是完全獨立的封閉源組件。不過,SMF 可以利用該工具包中的一組核心功能,特 別是視頻播放器本身。在撰寫本文檔時,Smooth Streaming播放器開發套件為 beta 2 版本。
SMF 包含大量 Microsoft .NET 程式集(如圖 1 所示),每個程式集都構成整個架構的不同功能部分 。
圖 1 Silverlight Media Framework 程式集