一区二区久久-一区二区三区www-一区二区三区久久-一区二区三区久久精品-麻豆国产一区二区在线观看-麻豆国产视频

使用 Silverlight Media Framework 構建自定義播放器

      流媒體已在網絡上無處不在。似乎所有人(從新聞站點到社交網絡再到隔壁的鄰居)都在享受在線視頻體驗。由于用戶群的不斷攀升,大多數站點需要以一種值得信賴、用戶友好的方式為其客戶提供高品質視頻,通常為高品質帶寬感知 視頻。

      在線媒體傳輸體驗的核心要素是播放器本身。播放器是用戶與之發生交互的介質,它可以驅使用戶獲得在線體驗的每一個要素。播放器如此備受關注,毫無疑問,基于 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)下載框架。您還需要下載平滑流式處理播放器開發工具包(iis.NET/expand/smoothplayer)并在使用 SMF 的任何項目中參考它。平滑流式處理播放器開發工具包不屬于 SMF,它是完全獨立的封閉源組件。不過,SMF 可以利用該工具包中的一組核心功能,特別是視頻播放器本身。在撰寫本文檔時,平滑流式處理播放器開發工具包為 beta 2 版本。

      SMF 包含大量 Microsoft .NET 程序集(如圖 1 所示),每個程序集都構成整個框架的不同功能部分。

 

圖 1 Silverlight Media Framework 程序集

      核心程序集是 Microsoft.SilverlightMediaFramework.dll,它由框架其余部分引用的眾多實用程序類和類型組成。使用 SMF 的任意部分時,也必須引用 Microsoft.SilverlightMediaFramework.dll 程序集。

      Microsoft.SilverlightMediaFramework.Data 命名空間提供幫助程序類,以使用播放器外部的數據以及封裝播放器內部的數據。該數據可以是任何格式的通用數據,但也可以是播放器自身的設置信息。Microsoft.SilverlightMediaFramework.Data.Settings 是另一個命名空間,用于顯示類型和處理播放器設置。

除了用于設置的數據以外,您最想要與之發生交互的 Data 命名空間中的類型是流外 DataClient 類,它可以從外部源檢索數據。如果您想要下載和使用播放器外部的數據,請引用此程序集。

      SMF 播放器包含穩健的 Microsoft.SilverlightMediaFramework.Logging 框架,該框架使用回調模式。在這種模式下,寫入日志記錄基礎結構會引發事件。您可以使用日志記錄系統注冊自己的回調方法,這些回調一旦激活,便會執行其他操作,如向 Web 服務發送信息或在文本框中顯示信息。如果您想要使用 SMF 的內置日志記錄工具,請引用此程序集。

      Microsoft.SilverlightMediaFramework.Player 程序集實現播放器本身。它還提供播放器所需的大量控件,如洗帶器、音量控件和時間線標記。默認的 SMF 播放器界面布局簡潔、雅致,對于任何需要 Silverlight 播放器的項目來說,都是一個良好的開端。但是,SMF 中定義的所有控件的核心都是控制模板概念,因此每個控件都可以使用 Expression Blend 或 Visual Studio 等工具作為主題。

      構建和引用 SMF

      SMF 作為單個.zip 文件下載,其中包含一個解決方案文件、每個輸出庫對應的項目,以及用于運行和驗證播放器自身的測試項目。

      SMF 依賴于平滑流式處理播放器開發工具包。要引用該工具包,請將平滑流式處理程序集(Microsoft.Web.Media.SmoothStreaming.dll)移到 SMF 項目的 /Lib 文件夾中。

      然后,在 Visual Studio 中打開 SMF 解決方案并進行構建,創建所有需要利用該框架的程序集。要確認是否一切都如期進行,請按 F5 開始進行調試。系統將構建該解決方案并執行 Microsoft.SilverlightMediaFramework.Test.Web 目標,向您顯示對“Big Buck Bunny”視頻進行流式處理的默認 SMF 播放器(參見圖 2)。注意,默認播放器是否已包含洗帶的位置元素、播放/停止/暫停按鈕、音量控件、全屏控件等。

 

圖 2 SMF 播放器和 Big Buck Bunny視頻

      下一步是創建自己的獨立 Silverlight 項目并利用其所包含的 SMF 功能。在 Visual Studio 中,單擊“文件”|“新建”|“項目”|“Silverlight 應用程序”。調用 SMFPlayerTest 解決方案,然后單擊“確定”。將彈出一個模式對話框,詢問您是否要將 Silverlight 應用程序托管到新的網站中。單擊“確定”,您將看到一個基本的 Silverlight 應用程序解決方案,該解決方案由兩個項目組成,分別是 SMFPlayerTest 和 SMFPlayerTest.Web。

      最后一步是從新建項目中引用平滑流式處理播放器開發工具包和 SMF 程序集。將輸出 SMF 程序集和平滑流式處理播放器開發工具包從 SMF 解決方案的 Debug 文件夾中復制并粘貼到新項目中(如圖 3 所示)。現在,新解決方案將包含利用 SMF 所需的所有程序集引用。

 

圖 3 引用所需的程序集

      顯示播放器

      要開始使用 SMF,請將 SMF 播放器的命名空間添加到 MainPage.xaml 頁中。這樣做可以確保所有引用都可以正確地解析: 

xmlns:p="clr-namespace:Microsoft.SilverlightMediaFramework.Player;assembly=Microsoft.SilverlightMediaFramework.Player"

NET技術使用 Silverlight Media Framework 構建自定義播放器,轉載需保留來源!

鄭重聲明:本文版權歸原作者所有,轉載文章僅為傳播更多信息之目的,如作者信息標記有誤,請第一時間聯系我們修改或刪除,多謝。

主站蜘蛛池模板: 国产夫妻久久 | 成年美女黄网站色大片软件 | 亚洲毛片视频 | 日本www视频在线观看 | 国产精品欧美韩国日本久久 | 免费在线精品视频 | 亚洲短视频在线观看 | 韩国亚洲伊人久久综合影院 | 久久怡红院国产精品 | 美国一级毛片∞ | 91日韩在线 | 久久亚洲福利 | 国产大臿蕉香蕉大视频 | 免费伦费一区二区三区四区 | 看全色黄大色黄大片色责看的 | 91精品啪国产在线观看免费牛牛 | 好吊操这里只有 | 亚洲经典激情春色另类 | 亚洲视频在线一区 | 国产精品欧美亚洲 | 综合免费一区二区三区 | 最近更新中文字幕第一页 | 亚洲国产精品久久久久秋霞小 | 日韩精品一区二区三区中文在线 | 黄色片视频在线播放 | 亚洲香蕉伊在人在线观看9 亚洲香蕉伊综合在人在线 亚洲香蕉影院 | 亚洲图区综合网 | 六月丁香激情 | 国产成人精品一区二三区 | 亚洲综合色网站 | 日韩美一区二区三区 | 91视频免费观看高清观看完整 | 看免费5xxaaa毛片 | 国产精品久久久久久久9999 | 国产成人亚洲综合一区 | 美女胸又大又黄www网站 | 中文字幕在线视频精品 | 欧美特黄a级高清免费大片 欧美特黄a级高清免费看片 | 精品日韩欧美一区二区三区在线播放 | 国产精品福利午夜h视频 | 五月婷婷婷婷婷 |