論高壓縮比網絡課件的生成及傳輸系研究
摘要:從高校普遍實際使用的演講型課件特點出發,設計了一套全新的網上教學系統,用可以人工動態控制的PowerPoint文檔來取代MPEG-1 的視頻格式,并將教師的講解聲音用G.723.1算法來壓縮從而得到一種新的流媒體格式課件,滿足了在窄帶網絡上的實時傳輸。
關鍵詞:網絡課件;壓縮;PowerPoint;G.723.1算法
1、應用背景
隨著教育事業的不斷發展以及網絡的不斷普及,網上教育應運而生。但是,網上教育也面臨著巨大的挑戰,課件制作是其中的一個關鍵所在。網上教育是多媒體結合的一種教育,多媒體意味著文件數據量大、要求帶寬高,盡管高速寬帶網絡可以從根本上解決這個問題,但其由于各種原因,短期內還不能大范圍普及。現有的公眾網只能提供33.3Kbps~56Kbps的窄帶。所以,在現有的條件下,以保持多媒體質量盡量少的降低為前提,減小多媒體文件數據量的大小, 實現多媒體技術,是比較現實的方法。
本系統設計了一套全新的網上教學系統用來滿足在窄帶網絡上進行網絡實時教學的需求。這種課件格式為流媒體格式,可以滿足在窄帶網絡上實時傳輸,并且在本地播放時可以保留快進,快退等基本的媒體播放屬性。
2、系統原理簡介
一般網絡課件的制作是將教師講課實況信息錄制后作為視頻保存。實際上,教師授課時每堂課一般只需30個左右的PowerPoint幻燈片,屏幕上的畫面變化非常小。基于此,我們設計了一個新的方案:將課件中的各種信息分開來傳輸,而不是象現在的課件那樣,將很多的信息合在一起傳輸。經過分析,可以將課件的內容分為如下幾部分: PowerPoint文件(PPT);鼠標信息;鍵盤信息;聲音信息。PPT文件是一個比較小的文件,一般在幾百K左右。所以可以設計一個客戶機-服務器模式的系統,在服務器端實現對PowerPoint文件的控制,捕獲鼠標,鍵盤及聲音信息,將它們封裝并傳輸到客戶端;客戶端系統接收還原這些信息來控制 PPT文件的播放。其中PPT文件是在鼠標,鍵盤和聲音信息之前傳輸的,實時傳輸的實際上只有鼠標信息,鍵盤的翻頁信息和語音信息。這些信息的量和視頻信息比起來就少得多了,僅過這樣的設計和處理,可以實現在窄帶上的實時傳輸。
3、系統的具體實現
為了實現上述的目標,服務器軟件需要在服務器端捕獲鼠標,鍵盤及聲音信息并將以上三者相同步,而且還可以將這些的信息向網絡發送或者將這些信息在本地上保存為一種特定格式的包封文件,其結構如圖一所示。同樣,客戶端程序需要解析從網絡傳來的服務器信息或播放本地這種特定格式文件。
接下來詳細討論各部分的實現。
3.1 音頻的處理
3.1.1 聲音的錄制與播放
人耳能聽到的聲音,最高頻率是20000Hz,而語音頻率一般在4000Hz以下,教師講課的課件,其音頻部分主要是語音。為提高壓縮比,本系統只處理了語音信息。
微軟公司提供的Direct中的DirectSound組件性能與兼容性比較好。因此,我們選用了DirectX作為開發包,來實現PCM聲音的錄制與播放。
3.1.2 G.723.1語音壓縮
本系統研究的一個重要方面就是高壓縮比傳輸,所以主要工作之一便是選取一個合適的語音壓縮算法來壓縮教師的講解聲音。
目前語音壓縮的算法非常多,本系統選用G.723.1算法,主要是從通用性和效率兩方面綜合考慮的結果。G.723.1是ITU的一個標準,所以選用 G.723.1作為語音的壓縮算法,其通用性是可以保證。另一方面,G.723.1的壓縮效率可以滿足本系統的要求,最終的碼率是6.3Kbit/s或 5.3Kbit/s。
我們把由ITU組織提供的標準G.723.1算法的源程序改寫為一個標準的Win32動態連接庫。該庫向外導出 CG7231Coder和CG7231Decoder 兩個C++庫,分別實現了G.723.1的編碼與解碼。實現CG7231Coder類的對象時,只需調用Coder成員函數來進行語音編碼。該函數的第一個參數是,指向被編碼的PCM數據。該數據是8KHz,16位單聲道的30ms的PCM數據,共480個字節。該函數的第二個參數是,用于接受當前被編碼后的壓縮數據,因為我們固定采用了6.3Kbit/s的比特率,所以該參數所指的緩沖區應為24個字節。經過我們改寫后的G.723.1的編碼算法具有以下特征:低通濾波,噪聲平滑,恒定的6.3Kbit/s比特率。我們可以通過相關參數變量來改變上述特征。解碼器也具備同編碼器一樣的功能
ITU組織提供了G.723.1的算法有兩種實現形式:整點和浮點。整點算法比較簡單,易于實現,但是整點算法對計算機的硬件要求極高。而浮點算法的速度遠遠高于整點算法,所以在本系統中使用了浮點算法,這樣,服務器軟件可以在配置較低的機器也可以正常運行。
3.2 視頻的處理
通過前面的分析可知,在設計中我們取消了視頻,采用直接控制PowerPoint Viewer程序來播放教師所用的PPT教案,所以系統的視頻部分是建立在Microsoft公司的PowerPoint Viewer軟件基礎之上的。PowerPoint Viewer本身是一個獨立的應用軟件,其主要功能是用來播放由Microsoft公司PowerPoint軟件制作的幻燈片。我們現在所設計的系統是一個課件的生成工具,同時它也可以實現網上的實時授課。它之所以和PowerPoint Viewer聯系在一起,是因為本軟件利用了PowerPoint的PPT文件作為教師的電子教案。
在用PowerPoint Viewer程序播放PowerPoint文檔時,教師可以通過鼠標和鍵盤兩類控制信息來控制該文檔的行為(例如:向前,向后翻頁)。下面將分別討論這兩類控制信息的接管控制以及對PowerPoint Viewer的控制。
3.2.1 鍵盤信息的處理
在教師的講課過程中, PowerPoint文檔是以幻燈片模式來播放的,而且對它的控制行為并不是很多,一般只有簡單的向前翻、向后翻頁,縮小或放大播放窗口,結束放映等控制動作;谏鲜隹紤],我們通過設計了一個類庫來控制PowerPoint Viewer程序前后翻頁,而不是通過PowerPoint Viewer的默認控制鍵(例如:通過空格鍵,鼠標左鍵向前翻頁)。
該動態連接庫向外提供了一系列函數用來控制Power Point Viewer程序。在獲得PowerPoint Viewer進程中用來播放PowerPoint文檔的窗口句柄后,將發送到播放窗口的消息作了兩方面的改變。一是將默認的PowerPoint Viewer的鍵盤控制消息改變為其他的PowerPoint Viewer不可以識別的鍵盤消息,實現了對PowerPoint Viewer的鍵盤屏蔽。另一方面將自定義的消息改變到PowerPoint Viewer可以識別的控制命令,實現了所謂的客戶程序可以控制PowerPoint Viewer的行為(例如:前后翻頁等)。最后,我們還將安裝一個動態連接庫到PowerPoint Viewer進程的內部,通過對PowerPoint Viewer進程的內部控制,實現了鼠標的控制以及播放窗口的全屏與窗口模式之間的切換、窗口的移動;PowerPoint文檔的前后翻頁;以及在播放窗口的指定位置中繪畫用來代表教師教鞭的鼠標及鼠標右鍵的快捷菜單。
3.2.2鼠標消息的處理
首先,我們來看一下鼠標消息在默認的 PowerPoint Viewer程序中有什么樣的作用。在Windows的程序設計中,鼠標器可以產生三十多個消息,但是通過分析研究發現, PowerPoint Viewer程序只是處理了幾個鼠標消息—WM_LBUTTONDBLCLK、WM_LBUTTONDOWN、WM_LBUTTONUP、 WM_RBUTTONDOWN。上述的幾個鼠標消息的默認動作行為有三種:一是激活PowerPoint文檔的播放窗口,二是使得PowerPoint文檔向下翻一頁,三是彈出一個快捷菜單以供用戶選擇。
鼠標消息與鍵盤消息,我們將其分開處理,這樣做是因為:第一,如果對鼠標消息也采取與處理鍵盤消息同樣的方法,會嚴重地影響系統性能;第二,對于鼠標消息,我們需要用自己的快捷菜單來替代PowerPoint Viewer的默認右鍵菜單,這只能通過內聯代碼來實現。
我們在嵌入到PowerPoint Viewer程序之中的動態連接庫內對鼠標消息進行截獲,加入一些代碼來改變播放PowerPoint文檔窗口的默認消息處理過程。這樣做的好處是:可以直接在播放窗口中響應鼠標消息,完全控制PowerPoint Viewer的播放窗口,而不必考慮進程間通信的問題。
3.3網絡實時服務的實現方案
通過Windows下Socket編程,我們實現了服務器端和客戶端網絡模塊的軟件。該類對象在每30ms時間間隔內會通過網絡向外廣播,客戶如果接受該信息者可以在網上實時聽課。因為通過計算可知每包的大小為33個字節,服務器在30ms內廣播有關包,因此可以算出其課件流的速率為 33×(1000/30)=1100(Bytes/sec)=8.8Kbits/s。8.8Kbits/s的速率在當前公共網上基本都可以得到滿足。
4、系統性能分析
服務器端完成之后具有以下功能:
能提供多種服務方式,可以向網絡廣播已生成的課件;教師可以通過網絡進行現場實時授課,與此同時還可以把講述內容錄制成包封格式的課件;在不提供網絡的條件下,教師可以在本地制作課件,以便以后學生可以通過課件播放器來觀看學習。
服務器端在得到了教師的講解聲音和PowerPoint Viewer的控制信息后,它們的同步誤差控制在0.5秒內。
服務器生成課件的速度快。局域網下進行網絡傳輸時,幀的延時不超過1秒。
服務器還有一定的網絡監控功能。進行實際的網絡授課時,服務器還提供在線學生管理以便教師可以了解當前的學生情況。
客戶端軟件完成之后具有以下功能:有兩種學習方式-網絡教室和本地文檔,可供選擇。其中網絡教室用來連接遠端的服務器。
5、結論和進一步的工作
總之,在目前網絡傳輸速度較慢,還不能夠完全滿足各種媒體信息暢通無阻的在網上傳輸時,本系統盡可能的減小了所用媒體文件的大小,對學校教師經常采用的 PPT這種演講型課件來說,是行之有效的辦法。下一步的工作就是考慮課件中加載更多媒體文件時的情況。多種媒體文件的應用使課件更加生動有趣。但是在網絡中,數據量較大的媒體文件。往往會令用戶因等待太久,而失去對課件的興趣。想在網絡課件中加載更多媒體文件,需要在保證可視質量前提下盡可能提高壓縮比,更可行的辦法是提供可選擇性的服務,使得用戶根據自己的網絡環境選擇是否加載某些服務。相信在不久的將來,高速網普及后,數據量問題不再是束縛網絡課件制作和發展的因素。
【論高壓縮比網絡課件的生成及傳輸系研究】相關文章:
論計算機網絡技術在長距離傳輸中的運用11-21
基于體驗的建筑形象生成論提綱11-23
CAI課件工程系統方法研究11-15
論無意注意對大學英語課件制作的啟示12-03
稟賦優勢論研究文獻12-11
論實踐哲學研究的方法論問題論文03-02
論網絡論壇的傳播屬性11-21
試析英語教學穿插課件的研究與應用12-02
論述多媒體網絡教學課件的優化設計12-05
- 相關推薦