遠程教學課程開發平臺關鍵技術

遠程教學課程開發平臺關鍵技術

石景山教育信息網
石家莊陸軍指揮學院教育技術中心 張建泉 王志強 支兵

前言

隨着互聯網的迅猛發展,在互聯網上的各種應用應運而生。遠程教育是目前網絡應用的一個重要發展方向。基於計算機網絡技術和多媒體技術的現代遠程教育,是傳統學校教育功能的延伸,也是網絡環境下信息資源共享服務的一個重要方面,遠程教育實現了教學資源的共享。現代遠程教育打破了傳統教學模式中的時間與空間等條件的限制,是構建終身學習體系的主要手段。特別是在軍事方面,武器裝備的技術含量越來越高,相對應對人的素質要求也越來越高,爲了使武器與人更好的有機結合,採用遠程教學模式學習高新技術武器裝備的使用以及理論知識,充分利用網絡共享信息資源和教學資源,使用者可以在任何時間利用網絡接受培訓,查找資料,對於提高使用者的技能,具有非常重要的意義。

遠程教育的核心是教學資源的建設,網絡課程開發平臺是多媒體遠程教學系統中的重要組成部分,它爲整個遠程教育提供基礎的教學課程開發環境和工具,以降低開發網絡課程的技術要求,簡化部署網絡課程的難度。網絡課程一般都是基於WWW和流媒體機制的,必須整合一個使用方便、功能強大供廣大教師進行網絡課程開發的工具,這個工具就是課程開發平臺。

網絡課程開發平臺涉及許多問題,如:WEB數據庫、多層架構、教學資源的管理和重用等問題,而本文着重考慮在技術實現過程中的關鍵問題,即如何在開發的平臺或工具中集成所見即所得網頁編輯、流媒體文件編輯問題。下面我們就這兩個關鍵問題進行探討。


流媒體技術

遠程教學課程,特別是在線培訓性質的課程,音視頻媒體的重要性是不言而喻的,實現窄帶網絡的音視頻傳輸最好的解決方案就是流式媒體的傳輸方式,流媒體技術是使音頻和視頻形成穩定和連續的傳輸流和回放流的一系列技術、方法和協議的總稱。我們這裏講的流媒體是指在網絡中基於時間的連續實時傳輸流式數據,允許播放器立即開始表現數據,而不用等到所有數據下載完成再來播放,是相對於傳統的下載之後播放而言的。

目前比較流行的流式媒體技術是美國Real Network公司的RealPlay產品和微軟的Windows Media技術,Internet上許多音視頻點播站點都採用這兩種產品。微軟公司近年來推出的Windows Media技術,以其方便性、先進性、集成性、低費用等特點,逐漸佔領市場,

Windows Media技術是一種能適應多種網絡帶寬的流式多媒體信息的發佈平臺,提供包括流媒體的製作、發佈、播放和管理的解決方案,而且其成套產品集成在Windows 2000 Server 中。

流媒體包括媒體服務器和客戶端播放器,以及相應的製作工具,Real公司產品的服務器是Real Server,客戶端播放器是Real Player。微軟公司的Windows media 技術的服務器是 Windows Media 服務器,播放器是 Windows Media Player 。

流式傳輸方式是將視音頻等多媒體文件經過特殊的壓縮方式分成一個個壓縮包,由視頻服務器向用戶計算機連續傳送。通過流方式進行傳輸,客戶可以邊接收邊播放,使時延大大減少。在採用流式傳輸方式的系統中,用戶不必像非流式播放那樣等到整個文件全部下載完畢後才能看到當中的內容,而是隻需經過幾秒或幾十秒的緩衝延時即可在用戶的計算機上利用相應的播放器進行觀看。

Windows Media 技術的核心是ASF(Advanced Stream Format),ASF是一種包含音頻、視頻、圖像以及控制命令、腳本等多媒體信息在內數據格式,以數據包的形式通過網絡傳輸。ASF 內容可以是一個 .asf 文件或 Windows Media 編碼器生成的實況流。處於通過網絡傳送過程中的 ASF 內容稱爲 ASF 流。ASF 不但最適於通過網絡發送多媒體流,也同樣適於在本地播放。任何壓縮 - 解壓縮運算法則(編解碼器)都可用以編碼 ASF 流,在 ASF 流中存儲的信息可用於幫助客戶決定應使用何種編解碼器解壓縮流。另外,ASF 流可按任何基礎網絡傳輸協議傳輸。

當創建和維護 Windows Media 內容時,可以選擇向內容中添加一些特性和功能:索引和標記、腳本命令、播放列表。索引和標記使內容可以被搜索,對來自 Windows Media 服務器的 .asf 文件單播提供快進、倒帶和搜索功能,瀏覽器通過標記可以快速地跳轉到指定的位置,給信息的快速瀏覽提供了相當便利的手段。播放列表以指定順序顯示多個 Windows Media 內容片段。腳本命令通過 Web 鏈接和相關內容主題使用戶體驗更高的交互性,在ASF流中添加URL類型的描述(Script),當播放器播放到該ASF文件時的Script位置時,播放器會自動地啓動Internet瀏覽器並連接到指定的URL,這種增強功能使得視頻和相應的課程內容相關聯。


流媒體文件的編輯

微軟公司在提供流媒體系統產品的同時提供了用於進行應用開發的SDK,利用SDK我們可以將音視頻編碼、ASF文件的編輯等功能集成到自己的應用程序中。根據不同的開發需要,微軟提供了不同的SDK ,有:Windows Media Servics SDK,用於開發單播或多播流媒體管理程序,單播和多播是描述客戶如何從 Windows Media 服務器接收數據包,單播是客戶端與服務器之間的點到點連接,多播是通過啓用多播網絡傳遞的內容流,網絡中的所有客戶端共享同一流;Windows Media Encoder SDK,用於提供配置或控制 Windows Media Encoder 的編程接口;Windows Media Format SDK 用於開發讀寫、編輯asf文件的程序。其中,我們使用 Windows Media Format SDK,現在的版本是7.0,Windows Media Format SDK 8.0微軟正在開發測試中。

Windows Media Format SDK 7.0主要特徵有以下幾個方面:支持讀寫、編輯Windows Media 音頻、視頻、腳本等文件,應用程序可以直接工作在Windows Media 格式,同時支持標記、索引、腳本命令等高級編輯功能,支持實時地將多媒體內容以Windows Media格式壓縮編碼和在Internet上發佈。

利用Windows Media Format SDK,可以完成三項關鍵任務,一是將沒有壓縮的媒體數據製作成Windows Media格式的文件;二是編輯Windows Media格式的流媒體文件;三是讀取Windows Media格式文件播放輸出。相對應,提供三個主要編程對象,其接口界面爲IWMWriter, IWMMetadataEditor 和 IWMReader 。

利用Windows Media Format SDK進行應用程序開發,需要使用Visual C++ 6.0 或以上版本。在應用開發中關鍵有以下幾點:

在頭文件聲明中要有 #include "wmsdk.h"。必須連接Wmvcore.lib 和 WMStub.lib 庫,頭文件wmsdk.h 和Wmvcore.lib 和 WMStub.lib庫由SDK提供。

再一關鍵點是向Windows Media 文件寫入數據。通過調用WMCreateWriter來創建IWMWriter對象,然後調用SetProfile方法定義配置,之後調用SetOutputFilename方法設置輸出文件,調用 BeginWriting開始寫入數據,重複調用WriteSample方法,直到完成,最後調用 Flush 方法寫入緩衝區的數據並更新索引文件,調用EndWriting方法來結束寫入文件操作。

另一比較重要的內容是寫入Windows Media Script 文件,Windows Media 文件的腳本命令由兩部份字符串組成,一部分是腳本命令類型,另一部分是參數。腳本命令有如下幾種類型:URL,FILENAME,CAPTION,EVENT,OPENEVENT。URL腳本命令由Media Player向瀏覽器發送URL,如果Media Player控件是嵌入在網頁中,可以在網頁中增加幀的方法使URL與該幀相關,即URL所指信息資源在該幀中表現。FILENAME是指向其它Media文件的URL。 CAPTION 是指Media Player的標題,支持標準的HTML格式。EVENT 和OPENEVENT是開發者自己定義的事件和觸發的動作,例如插入廣告等。向Windows Media文件寫入腳本命令是通過調用WriteSample 方法來實現的。

最後說明如何索引Index Windows Media 文件。通過WMCreateIndexer 來創建IWMIndexer對象,調用StartIndexing 方法開始索引文件,當調用OnStatus 方法返回WMT_CLOSED消息時表示索引完成。

Windows Media Format SDK可以從微軟網站下載,包括SDK使用幫助、程序實例以及編程所用到的頭文件和函數庫。


所見即所得網頁編輯

微軟Dynamic HTML (DHTML) Editing Component 允許WEB或應用程序開發者在應用程序中增加所見即所得(WYSIWYG) 動態HTML 編輯的能力,這個編輯控件使用Microsoft‘s Component Object Model (COM)技術提供存取編輯網頁能力,它提供強大的編輯能力,對網頁文字格式、表格、圖象、超級鏈接等進行編輯,可以選擇任何一種語言來進行開發,包括Visual Basic, Visual Basic Scripting Edition (VBScript), JScript, C, C++等語言。

DHTML Editing Component有如下特點:

支持多次的 undo/redo,可以使用剪切,複製和粘貼命令,網頁元素可以通過拖拉來移動位置或改變大小。支持文字格式編輯,包括字體樣式、顏色、大小等。支持絕對定位,用戶可以使用樣式表。可以插入圖象和表格,可以定義超級鏈接,可以在當前網頁查找文字,可以打開、保存文件,可以使用DOM存取文檔對象。

DHTML Editing Component有兩種使用方式,一是DHTML Editing Component document object ,如果使用的是C或C++開發語言,可以使用OLE來創建和操縱DHTML component對象,這種方式涉及到許多底層的開發工作,開發者需要熟悉OLE接口的編程。另一種方式是DHTML Editing control,它是ActiveX 控件版本,這種方式提供許多高層特徵,它封裝了許多功能,開發者可以直接調用其功能方法,完成網頁編輯功能,在Visual Basic, Visual C++, and Visual J++環境中可以使用這種方式,降低了開發難度。這兩種方式都提供了豐富的編輯能力,提供了許多編輯網頁相關的屬性設置和方法命令,開發者可以自行設計一個界面,通過菜單、工具條等直觀方式來執行特定的編輯功能,如文字編輯,可以建立文字編輯有關的工具條,粗體、斜體、對齊工具條。

這個控件提供編輯和瀏覽兩種模式,根據不同需要可以設置採用哪種模式。在編輯模式狀態下,我們可以進行網頁各元素的編輯。在瀏覽模式狀態下,我們可以瀏覽所編輯的網頁。

DHTML Editing Component 使用前必須在系統中註冊,在Visual Basic的控件欄中增加該控件,就可以直接拖到表單中使用,另外也可以編程方式創建該控件實例,該控件的progID可以查閱SDK 的幫助文檔。

下面介紹該控件的主要功能命令。調用LoadDocument方法可以打開已經存在的網頁,調用SaveDocument方法保存所編輯的網頁。調用 ExecCommand 方法對所選中的網頁元素執行格式編輯命令,ExecCommand 方法也支持向網頁中插入新的元素,包括插入表格、圖象、超級鏈接,這些命令通常與用戶界面的工具條或菜單命令相連接。用於網頁編輯的命令有:DECMD_BOLD命令作用是將選中的文字變爲粗體,DECMD_CUT、DECMD_COPY、DECMD_PASTE、DECMD_DELETE的作用是剪切、複製、粘貼、刪除所選中的元素,DECMD_HYPERLINK作用是在所選中的元素上做超級鏈接,DECMD_IMAGE作用是在插入點插入圖象,DECMD_INSERTTABLE的作用是插入一個表格,DECMD_INSERTROW、DECMD_INSERTCOL、DECMD_INSERTCELL的作用是插入行、列、單元格,DECMD_UNDO、DECMD_REDO的作用是撤消、重做操作。用戶也可以工作在HTML源代碼狀態,這個控件的DocumentHTML 屬性包含了網頁的全部HTML文本,你可以通過程序來修改它。

如何獲得這個控件?該控件的最新版本已經和 MS Internet Explorer 5.0 一起發佈,在安裝IE5的同時就安裝了這個控件,包括DHTML Editing Component control(Dhtmled.ocx)和document object dll (Triedit.dll),以前的版本有一個SDK,是和MS Internet Explorer 4.1兼容的。微軟網站提供了該控件的詳細資料,包括這個控件對象的各種屬性和方法,以及如何使用這個控件,同時提供幾種開發語言的例子源代碼下載。

採用這個控件我們就可以在自己的應用程序中集成所見即所得網頁編輯能力,更方便的完成網頁製作任務,降低了底層開發的難度。

五、遠程教學課程開發平臺解決方案

課程開發平臺是遠程教學中的一個重要組成部分,它直接涉及到如何將課程資源包括教師授課視頻、相關圖象及文字資料等以WEB方式提供給遠程用戶,我們的解決方案是提供一個平臺,該平臺集成了製作課程網站所需要的功能,給教師一個使用簡便的一體化的課程開發工具,主要有以下幾個部分。

流媒體處理部分。主要功能是對多媒體進行壓縮編碼、編輯等處理,將AVI等格式的視頻轉換成ASF格式的流媒體,對ASF文件進行編輯,插入標記、索引、腳本命令等,將圖片等內容與視頻合成,在指定的時間插入URL等命令,使授課視頻流與講義同步起來,便於遠程用戶在線學習。這一部分主要採用微軟提供的 Windows Media SDK 來解決。

數據庫處理部分。本開發平臺採用WEB數據庫來存儲信息資料,包括講義、相關資料等內容,採用多層結構,系統提供幾個模板,系統按模板自動從數據庫中取出信息資料形成完整的網頁,這樣減少了教師的操作難度,教師只要將信息資料存入數據庫中,系統就能夠生成相應的網頁。這一部分通過ODBC和ACCESS 或 SQL SERVER數據庫來解決。

網頁編輯部分。主要功能是製作或修改網頁,與課程有關的信息資料通過數據庫能夠自動生成網頁,但如果對網頁有特殊的要求,就要自己動手製作或修改生成的網頁, 本平臺集成了所見即所得網頁編輯功能,直觀、簡便、功能強大,能夠達到遠程教學的要求。這一部分主要採用DHTML Editing control來解決。

問題解答庫部分。在遠程用戶的學習過程中,難免會遇到與課程相關的疑難問題,本平臺提供問題解答庫,採用數據庫方式,教師只需要維護該數據庫,遠程用戶通過網頁就可以檢索該數據庫,尋求疑難問題的解決方法。

作業及測試部分。爲了鞏固學習效果,每一個單元教師佈置一定的練習題和自測題,這一部分採用WEB數據庫方式來解決。

另外該平臺還有課程相關資料部分、課程大綱部分、討論交流部分等。

六、結束語

利用網絡進行遠程的培訓學習更加充分的利用了網絡信息資源。本文探討了如何在應用程序中集成流媒體編輯和所見即所得網頁編輯功能,並給出了技術實現的方法,最後給出了該平臺的主要組成部分。本論文的研究是在遠程教育支撐平臺的研究過程中進行的,該項目已經取得了初步成果。如何在課程開發平臺中更好的體現教學設計,採用什麼樣的學習模型更能提高教學效果,如何更好的組織、管理、共享教學資源,這些問題是本文進一步需要深入研究的。









發佈了35 篇原創文章 · 獲贊 0 · 訪問量 8萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章