視頻會議管理系統(tǒng)畢業(yè)論文_第1頁
已閱讀1頁,還剩41頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

1、<p><b>  視頻會議管理系統(tǒng)</b></p><p><b>  摘要</b></p><p>  為了適應(yīng)全球經(jīng)濟一體化的迅速發(fā)展,各大企業(yè)紛紛在世界各地建立企業(yè)的分支機構(gòu),以擴大企業(yè)在經(jīng)濟領(lǐng)域中的影響力。企業(yè)規(guī)模的不斷擴大,給企業(yè)管理出現(xiàn)了新的管理要求,為了讓各地分支機構(gòu)能夠及時的對企業(yè)決策作出迅速的反應(yīng),各企業(yè)都積極采用高

2、科技技術(shù)——視頻會議,對各分支機構(gòu)進行統(tǒng)一的通知、調(diào)整等,使各地的分支機構(gòu)能夠同一時間,同時按照企業(yè)的整體規(guī)化和按排開始行動。</p><p>  具有關(guān)研究表明,人腦所接受的信息中55%來自于面對面的視覺效果,38%依賴于說話者的語音,而只有7%依賴于內(nèi)容。隨著計算機網(wǎng)絡(luò)通信技術(shù)發(fā)展和電信基礎(chǔ)運營成本的降低,新一代視頻會議系統(tǒng)在各企業(yè)中得到廣泛的應(yīng)用。2004年和2005年,中國視頻會議市場增長率將保持在32%

3、以上,在年度IT業(yè)界熱點技術(shù)中,視頻會議技術(shù)位居前列,顯示了這一市場的潛力確實值得期待。</p><p>  視頻會議管理系統(tǒng)通過錄像對會議的全程跟蹤和記錄,把會議記錄的圖像信息存儲到數(shù)據(jù)庫中,通過管理系統(tǒng)對數(shù)據(jù)庫中記錄進行管理,實現(xiàn)了通過管理系統(tǒng)對會議的全程圖像信息進行管理。</p><p>  本系統(tǒng)為單機版視頻管理系統(tǒng),通過攝像頭進行圖像的攝錄,以記錄形式保存在數(shù)據(jù)庫中。通過對數(shù)據(jù)庫

4、中的記錄的管理實現(xiàn)對會議信息的管理。</p><p>  【關(guān)鍵詞】:會議視頻管理系統(tǒng)</p><p>  Video conference management system</p><p><b>  Abstract</b></p><p>  In order to adapt to the rapid deve

5、lopment of global economic integration, major companies around the world have set up branch offices of enterprises, in order to expand business in the economic sphere of influence. The continuous expansion of enterprise

6、scale, enterprise management to the emergence of the new regulatory requirements, in order to make the local branch of business decisions to make rapid response, the company is actively using technology -- video conferen

7、cing, unified the various</p><p>  The research shows that, the information of 55% accepted from face-to-face visual effect,38% speech depends on the speaker, and only 7% is dependent on the content of. With

8、 the development of computer network communication technology and telecommunications infrastructure to reduce the operating costs, a new generation of video conference system in the enterprise is widely used. In 2004and

9、2005, China video conference market growth rate will be maintained at more than 32%, in the annual IT indust</p><p>  Video conference management system by video tracking and recording of the meeting, the me

10、eting recorded image information stored in the database, the management system of database records management, realize the management system through the meeting of the entire image information management.</p><

11、p>  This system is the single plane version video management system, through the camera image video, to record forms are stored in the database. According to the records in the database to achieve the management of in

12、formation of conference management.</p><p>  【 key words 】 meeting video management system</p><p><b>  目錄</b></p><p><b>  摘要I</b></p><p>  Abst

13、ractII</p><p><b>  第一章 緒論1</b></p><p>  1.1 系統(tǒng)需求分析1</p><p>  1.2 視頻會議的意義1</p><p>  1.3 視頻會議的發(fā)展階段1</p><p>  1.4 國內(nèi)外現(xiàn)狀2</p><

14、;p>  1.5 VC++平臺簡介3</p><p>  1.6 開發(fā)工具的選擇3</p><p>  第二章 系統(tǒng)設(shè)計5</p><p>  2.1 項目規(guī)劃5</p><p>  2.2 系統(tǒng)功能結(jié)構(gòu)5</p><p>  2.3 設(shè)計目標6</p><p> 

15、 2.4 數(shù)據(jù)庫設(shè)計6</p><p>  2.4.1 開發(fā)及運行環(huán)境6</p><p>  2.4.2 數(shù)據(jù)庫概要說明7</p><p>  2.4.3主要數(shù)據(jù)表的結(jié)構(gòu)7</p><p>  第三章 系統(tǒng)實現(xiàn)8</p><p>  3.1 構(gòu)建應(yīng)用程序框架8</p><p> 

16、 3.2 主窗口設(shè)計9</p><p>  3.2.1 菜單設(shè)計9</p><p>  3.2.2工具欄設(shè)計15</p><p>  3.2.3客戶區(qū)設(shè)計17</p><p>  3.3 系統(tǒng)登錄管理18</p><p>  3.3.1實現(xiàn)目標18</p><p>  3.3.2

17、設(shè)計步驟19</p><p>  3.3.3代碼分析19</p><p>  3.4 視頻采集21</p><p>  3.4.1實現(xiàn)目標21</p><p>  3.4.2設(shè)計步驟22</p><p>  3.4.3代碼分析22</p><p>  3.5 視頻錄像23<

18、;/p><p>  3.5.1實現(xiàn)目標23</p><p>  3.5.2設(shè)計步驟23</p><p>  3.5.3代碼分析23</p><p>  第四章 用戶使用手冊25</p><p>  4.1 系統(tǒng)簡介25</p><p>  4.1.1系統(tǒng)概述25</p>

19、<p>  4.1.2系統(tǒng)目標25</p><p>  4.1.3系統(tǒng)范圍25</p><p>  4.1.4系統(tǒng)特點25</p><p>  4.2 系統(tǒng)運行環(huán)境25</p><p>  4.3 系統(tǒng)登錄管理26</p><p>  4.4 視頻管理26</p><p

20、>  4.4.1視頻采集26</p><p>  4.4.2結(jié)束視頻采集27</p><p>  4.5 綜合設(shè)置27</p><p>  4.5.1視頻格式設(shè)定27</p><p>  4.5.2綜合設(shè)定28</p><p>  4.5.3載取圖像到剪貼板28</p><p&g

21、t;  4.5.4錄像29</p><p>  4.6 會議管理29</p><p>  4.6.1會議記錄29</p><p>  4.6.2會議查詢30</p><p>  4.7 系統(tǒng)維護31</p><p>  4.7.1數(shù)據(jù)備份31</p><p>  4.7.2數(shù)據(jù)還

22、原31</p><p>  4.7.3系統(tǒng)初始化32</p><p>  4.7.4開機自動運行32</p><p>  第五章 總結(jié)34</p><p><b>  5.1 結(jié)論34</b></p><p><b>  5.2 展望34</b></p&g

23、t;<p><b>  謝 辭35</b></p><p><b>  參考文獻36</b></p><p><b>  第一章 緒論</b></p><p>  視頻會議管理系統(tǒng)通過錄像對會議的全程跟蹤和記錄,把會議記錄的圖像信息存儲到數(shù)據(jù)庫中,通過管理系統(tǒng)對數(shù)據(jù)庫中記錄進行管理

24、,實現(xiàn)了通過管理系統(tǒng)對會議的全程圖像信息進行管理。</p><p>  本系統(tǒng)為單機版視頻管理系統(tǒng),通過攝像頭進行圖像的攝錄,以記錄形式保存在數(shù)據(jù)庫中。通過對數(shù)據(jù)庫中的記錄的管理實現(xiàn)對會議信息的管理。</p><p>  1.1 系統(tǒng)需求分析</p><p>  根據(jù)市場的需求,要求系統(tǒng)具有以下功能:</p><p>  (1)記錄會議信息

25、。</p><p>  (2)具有數(shù)據(jù)備份及數(shù)據(jù)恢復(fù)的功能,確保系統(tǒng)的安全性。</p><p><b>  (3)視頻錄像。</b></p><p><b>  (4)視頻控制。</b></p><p>  (5)會議信息查詢。</p><p>  1.2 視頻會議的意義&

26、lt;/p><p>  隨著全球步入信息化時代,計算機技術(shù)、通信技術(shù)和多媒體技術(shù)的飛速發(fā)展,人們對了解事物、交換信息的要求已經(jīng)從紙、筆、書本、話音的發(fā)展到通過聲光電信號等各種方式更準確、更快捷、更豐富地表達出來。在此需求的推動下,多媒體計算機技術(shù)玉通信技術(shù)相結(jié)合,逐漸發(fā)展成為一種新的邊緣技術(shù)——多媒體通信技術(shù)。個人計算機的額普及、微電子技術(shù)和多媒體技術(shù)的飛速發(fā)展、中和業(yè)務(wù)數(shù)字網(wǎng)的建立及寬帶綜合業(yè)務(wù)數(shù)字網(wǎng)的研究進展,都

27、有利地推動了多媒體通信的發(fā)展,視頻會議系統(tǒng)即是這幾種技術(shù)的一種綜合應(yīng)用。</p><p>  1.3 視頻會議的發(fā)展階段</p><p>  視頻會議大致經(jīng)歷了以下幾個發(fā)展階段:</p><p>  (1)最早的視頻會議是采用模擬方式傳輸?shù)模捎谠谀M微波(或同軸電纜等)線路上傳輸一路模擬視頻會議信號所需帶寬為6MHz,相當于占用960個電話線路的帶寬,在運營成

28、本上是較昂貴的,因此其商業(yè)推廣引用受到很大的限制。</p><p>  (2)1990年11U-T發(fā)布了用于ISDN、E1、T1上的群視頻會議標準化發(fā)揮了巨大的作用。</p><p>  (3)1996年5月11U-T制定了在分組交換網(wǎng)絡(luò)上工作的視頻會議的標準H.323,支持H.323協(xié)議的網(wǎng)絡(luò)視頻會議系統(tǒng)是一種集中式、緊耦合會議系統(tǒng),期顯著特點是引入了多點控制單元MCU(Multipoi

29、nt Control Unit),由MCU將一個發(fā)送者的音視頻分別獨立地以IP單播(Unicast)方式轉(zhuǎn)發(fā)給多個接收者來實現(xiàn)多點交互,其好處是對會議成員的管理方便,但這將導(dǎo)致系統(tǒng)開銷和網(wǎng)絡(luò)負擔碎用戶數(shù)的增加而迅速增大,令系統(tǒng)無法進行大規(guī)模擴展。</p><p>  (4)1998年9月,ITU(International Telecommunications Union)在H.323的基礎(chǔ)上只動了松禍合擴展協(xié)議

30、H.323,該會議在網(wǎng)絡(luò)層使用坤組播技術(shù),采用分布式松耦合的系統(tǒng)結(jié)構(gòu),較好的解決視頻會議系統(tǒng)的規(guī)模擴展問題。</p><p>  (5)幾年來,流媒體廣播技術(shù)越來越多的應(yīng)用于視頻會議系統(tǒng)。大部分廣播會議,如網(wǎng)上路演、采訪、現(xiàn)場會等,能夠為用戶傳輸多媒體信息,是對傳統(tǒng)視頻會議功能的擴展。</p><p>  網(wǎng)絡(luò)會議將視頻、音頻的多媒體信息進行綜合處理,通過通信網(wǎng)絡(luò)對多媒體數(shù)據(jù)進行實時傳輸,

31、利用計算機系統(tǒng)提供的良好的交互功能和管理工呢,實現(xiàn)了人與人之間“面對面”的虛擬會議環(huán)境。網(wǎng)絡(luò)會議僵尸未來信息高速公路信息服務(wù)的重要內(nèi)容,將一大的改變?nèi)藗兊纳詈凸ぷ鞣绞?,對社會的進行會產(chǎn)生深遠的影響。因此,網(wǎng)絡(luò)會議系統(tǒng)越來越受到人們的重視,許多大學(xué)、研究機構(gòu)都投入到網(wǎng)絡(luò)會議系統(tǒng)的研究中。當前的視頻會議系統(tǒng)可以分為三種:一種是大型的視頻會議系統(tǒng),應(yīng)用于軍隊和大型企事業(yè)單位,這種系統(tǒng)具有非常好的效果,包括MCU等硬件系統(tǒng)組成,相對價格非常高

32、;等二種是中性的視頻會議系統(tǒng),它們提供輕型的MCU,軟件系統(tǒng)相對簡單,可以用于一般公司和企事業(yè)單位,但價格還是相對高;最后一種是純軟件實現(xiàn)的視頻會議系統(tǒng),它們采用大型軟件公司童工的軟件平臺開發(fā)自主的小型視頻會議系統(tǒng),適用于要求不高的小型會議。</p><p>  以純軟件實現(xiàn)的視頻會議系統(tǒng)又分三種,一種是基于IP網(wǎng)絡(luò)的視頻會議系統(tǒng),該系統(tǒng)主要以TCP協(xié)議傳送媒體數(shù)據(jù),運行中占用網(wǎng)絡(luò)寬帶較大;一種是基于組播的視頻會

33、議系統(tǒng),該系統(tǒng)主要以UDP協(xié)議來實現(xiàn)組播功能,運行中占用網(wǎng)絡(luò)帶寬較小,但網(wǎng)絡(luò)質(zhì)量無法保證,缺乏反饋機制;最后一種是基于流媒體的視頻會議系統(tǒng),該系統(tǒng)主要以RTP洗衣傳送媒體數(shù)據(jù),以RTCP協(xié)議提供數(shù)據(jù)發(fā)布的質(zhì)量反饋,但由于其沒有實現(xiàn)組播機制,當客戶端喝多時,網(wǎng)絡(luò)延遲較大。</p><p>  1.4 國內(nèi)外現(xiàn)狀</p><p>  目前國內(nèi)外的視頻會議系統(tǒng)主要是及時雨兩個標準:H.32X

34、和SIP。H.32X由ITU-T(國際電信—電信標準化部門)制定;SIP(會話啟動協(xié)議)由IETF(Internet工程任務(wù)組)的SIP中作組制定,是一個面向Internet會議和電話的信令協(xié)議。面前商業(yè)化的視頻會議大多準許你H.323標準。這是因為H.323標準的成熟性,有助于諸多軟件供應(yīng)商開發(fā)性能穩(wěn)定的設(shè)備,并且有利于不同的供應(yīng)商之間消除互操作性中出現(xiàn)的問題,并在市場上推出各種支持H.323標準的設(shè)備。缺點是當客戶端增加時,由于服務(wù)

35、器CPU處理能力\內(nèi)存、網(wǎng)絡(luò)帶寬的限制,會使會議質(zhì)量明顯下降。</p><p>  SIP基于現(xiàn)有的IP網(wǎng)絡(luò)協(xié)議提供多媒體業(yè)務(wù)的協(xié)議,是一個分散式協(xié)議,它將網(wǎng)絡(luò)設(shè)備的復(fù)雜性推向網(wǎng)絡(luò)邊緣,需要相對只能的終端,協(xié)議也比較簡單。有點包括:該協(xié)議具有可擴展特性,可以輕松定義并迅速發(fā)展實現(xiàn)新功能;缺點是問世不久,大多數(shù)應(yīng)用處于原型階段,該協(xié)議單獨應(yīng)用的范圍較窄。</p><p>  視屏會議系統(tǒng)經(jīng)常

36、采用的架構(gòu)有C/S(Client/Server即客戶機/服務(wù)器)和B/S(Browser/Server即瀏覽器/服務(wù)器)結(jié)構(gòu),這兩種結(jié)構(gòu)后者是從前者發(fā)展而來的,它們的本質(zhì)都是C/S而二層結(jié)構(gòu)的C/S模式存在諸多問題,例如開發(fā)和維護成本高,服務(wù)器負載重,靈活性差,缺乏開放性,難以與Internet/Intranet接軌等,造成系統(tǒng)使用和維護中的許多難題。三層的B/S模式雖然開發(fā)和維護比較容易,但服務(wù)器負載重,理論上會議參加者的數(shù)量可以很多

37、,實際效果并不令人滿意,服務(wù)器成為會議系統(tǒng)的瓶頸。在網(wǎng)絡(luò)狀況較好并且與會人員數(shù)量不多的情況下,視頻會議系統(tǒng)能夠提供令人滿意的效果。但是不用與會者的網(wǎng)絡(luò)帶寬質(zhì)量參差不齊,隨著與會者數(shù)量的增加,視頻圖像。</p><p>  1.5 VC++平臺簡介</p><p>  C++語言是從C語言發(fā)展而來的,而C語言的歷史可以追溯到1969年。在1969年,美國貝爾實驗室的Ken Thompson

38、為DEC PDP-7計算機設(shè)計了一個操作系統(tǒng),這就是最早的UNIX。接著,他又根據(jù)劍橋大學(xué)的Martin Richards設(shè)計的BCPL語言為UNIX設(shè)計了一種便于編寫系統(tǒng)軟件的語言,命名為B。作為系統(tǒng)軟件編程語言的第一個應(yīng)用,Ken Thompson使用B語言重寫了其自身的解釋程序。1972-1973年間,同在貝爾實驗室的Denis Ritchie改造了B語言,為其添加了數(shù)據(jù)類型的概念,并將原來的解釋程序改寫為可以直接生成機器代碼的編

39、譯程序,然后將其命名為C,1973年,Ken Thompson小組在PDP-11上用C語言重新改寫了UNIX的內(nèi)核。與此同時,C語言的編譯程序也移植到IBM360/370,Honeywell-11及VAX-11/780等多種計算機上,迅速成為應(yīng)用最廣泛的系統(tǒng)程序語言。</p><p>  然而,C語言也存在一些缺陷,如類型檢查機制相對較弱,缺少支持代碼重組的機制等,造成用C語言開發(fā)大型程序比較困難。為了克服C語言

40、存在的缺點,貝爾實驗室的Bjarne Stroustrup博士及其同事開始對C語言進行改進和擴充,將“類”的概念引入了C語言,構(gòu)成了最早的C++語言(1983),后來Stroustrup和他的同事們又為C++語言引進了運算符重載、引用、虛函數(shù)等許多特性,并使之更加精煉,于19989年推出了AT&TCC++2.0版。隨后美國國家標準化協(xié)會ANSI(American Nation Standard Instiute)和國際標準化組織

41、ISO(International Standard Organization)一起進行了標準化工作,并于1998年正式發(fā)布了C++語言的國際標準ISO/IEC:98-14882.各軟件商推出的C++語言編譯器都支持該標準,并有不同程度的擴展。C++語言支持面向?qū)ο蟮某绦蛟O(shè)計方法,特別適合于中型和大型的軟件開發(fā)項目,從開發(fā)時間、費用到軟件的重用性、可擴充性、可維護性和可靠性等方面,C++語言均有很大的優(yōu)越性。同時,C++語言又是C語言的

42、超</p><p>  VC++是在Windows平臺下構(gòu)建32位應(yīng)用程序的強大而又復(fù)雜的開發(fā)工具,是目前世界上使用非常廣泛的工具之一。VC++的應(yīng)用非常廣泛,從桌面應(yīng)用程序到服務(wù)器端軟件,從系統(tǒng)軟件到應(yīng)用軟件,從單機程序到分布式應(yīng)用程序,從圖形圖像處理到游戲開發(fā),VC++無所不在 [6]。VC++是Windows平臺上的C++編程環(huán)境,學(xué)習VC要了解很多Windows平臺的特性并且還要掌握MFC、ATL、COM

43、等的知識,難度比較大。</p><p>  VC++ Developer Studio 包含有編寫程序源代碼的編輯器,設(shè)計用戶界面(菜單、對話框、圖標等)的資源編輯器,建立項目配置的項目管理器,檢查程序錯誤的集成調(diào)式等工具,同時,它還提供了功能強大的應(yīng)用程序向?qū)ppWizard和類向?qū)lassWizard工具。AppWizard用于生成各種不同類型的具有Windows界面風格的應(yīng)用程序的基本框架,在生成應(yīng)用程

44、序框架后,使用ClassWizard便可輕松完成創(chuàng)建新類,映射消息、定義消息處理函數(shù)、重載虛函數(shù)等操作[1]。</p><p>  1.6 開發(fā)工具的選擇</p><p>  會議視頻管理系統(tǒng)采用Microsoft公司的Visual C++6.0進行開發(fā)。相信大家都聽說過這樣一句話,“聰明的程序員使用Delphi,真正的程序員使用VC”,與其他工具相比, Visual

45、 C++具有以下特點:</p><p>  (1)Visual C++工具以C++語言為基礎(chǔ),因此生成的可執(zhí)行文件小,執(zhí)行效率高。</p><p>  (2)Visual C++具有強大的調(diào)試功能,可以設(shè)置和跟蹤斷點,查看棧和變量信息,能夠自動檢測內(nèi)存泄露。</p><p>  (3)Visual C++具有強大的硬件控制功能,與VB、Delphi的RAD開發(fā)工具不

46、同,Visual C++擁有很強的底層控制能力,現(xiàn)今的許多驅(qū)動程序都采用Visual C++進行開發(fā)。</p><p>  (4)Visual C++具有豐富的幫助文檔,即MSDN。MSDN包含了幾GB的文檔和源代碼,通過它,可以解決各種技術(shù)難題。</p><p>  (5)Visual C++出自Micorosoft公司,因此,對Windows系統(tǒng)的新技術(shù)具有很好的支持,而其他公司的產(chǎn)品

47、似乎總慢上半</p><p><b>  第二章 系統(tǒng)設(shè)計</b></p><p><b>  2.1 項目規(guī)劃</b></p><p>  根據(jù)需求分析,設(shè)計系統(tǒng)框架。會議視頻管理系統(tǒng)由視頻管理、綜合設(shè)置、會議管理、系統(tǒng)維護、系統(tǒng)幫助等5部分組成。設(shè)計各部分具體功能如下:</p><p>&l

48、t;b>  (1)視頻管理模塊</b></p><p>  視頻管理模塊包括視頻采集和結(jié)束視頻采集兩部分。</p><p><b>  (2)綜合設(shè)置模塊</b></p><p>  綜合設(shè)置模塊由視頻格式設(shè)定、綜合設(shè)定、載取圖像到剪貼板、視頻壓縮、錄像5部分組成。</p><p><b> 

49、 (3)會議管理模塊</b></p><p>  會議管理模塊主要由會議記錄和會議查詢兩部分組成。</p><p><b>  (4)系統(tǒng)維護模塊</b></p><p>  系統(tǒng)維護模塊包括數(shù)據(jù)備份、數(shù)據(jù)還原、系統(tǒng)初始化、開機自動運行4個部分。</p><p><b>  (5)系統(tǒng)幫助模塊<

50、;/b></p><p>  系統(tǒng)幫助模塊由關(guān)于視頻系統(tǒng)和幫助內(nèi)容兩部分構(gòu)成。</p><p>  2.2 系統(tǒng)功能結(jié)構(gòu)</p><p>  會議視頻系統(tǒng)的功能結(jié)構(gòu)如圖2-1所示。</p><p>  圖2-1 會議視頻系統(tǒng)功能結(jié)構(gòu)圖</p><p>  (1)單擊【視頻管理】/【視頻采集】選項,顯示器直接顯

51、示攝像頭所對的人或物</p><p>  (2)單擊【視頻管理】/【結(jié)束視頻采集】選項,顯示器將停止對人或物的顯示</p><p>  (3)單擊【綜合設(shè)置】/【視頻格式設(shè)定】選項,進入到 “視頻格式設(shè)定”模塊。</p><p>  單擊 “備份路徑”后的按鈕,選擇數(shù)據(jù)保存的路徑,然后單擊【確定】按鈕,即完成數(shù)據(jù)備份操作。</p><p> 

52、 通過“數(shù)據(jù)圖像格式”的下拉按鈕設(shè)置分辨率,調(diào)整圖像的像素。單擊【確定】按鈕。即完成視頻格式設(shè)定操作。</p><p>  (4)單擊【綜合設(shè)置】/【綜合設(shè)定】選項,進入到“綜合設(shè)定”模塊。</p><p>  (5)單擊【綜合設(shè)置】/【載取圖像到剪貼板】選項,進入到“載取圖像到剪貼板”模塊。</p><p>  雙擊“載取圖像”然后打開畫圖工具,單擊鼠標右鍵選擇“

53、粘貼”選項,載取的圖像粘貼到畫圖工具里。然后可以對圖進行常規(guī)操作。</p><p>  (6)單擊【綜合設(shè)置】/【錄像】選項,進入到“錄像”模塊。</p><p>  單擊【會議管理】/【會議記錄】選項,進入到“會議記錄”模塊。</p><p>  該模塊可直接在“會議主題”文本框輸入相應(yīng)的內(nèi)容,設(shè)置“時間”的下拉按鈕選擇相應(yīng)的選項。在“主持人”和“參加人員”的文本

54、框輸入相應(yīng)的內(nèi)容。最后單擊【保存】按鈕。即完成會議信息的保存。</p><p>  (7)單擊【會議管理】/【會議查詢】選項,進入到“會議查詢”模塊。</p><p>  (8)單擊【系統(tǒng)維護】/【數(shù)據(jù)備份】選項,進入到 “數(shù)據(jù)備份”模塊。</p><p>  (9)單擊【系統(tǒng)維護】/【數(shù)據(jù)還原】選項,進入到 “數(shù)據(jù)還原”模塊。</p><p&g

55、t;  單擊 “數(shù)據(jù)庫備份件”后的按鈕,選擇剛剛備份的數(shù)據(jù)位置,單擊【確定】按鈕,即完成數(shù)據(jù)還原操作。</p><p>  (10)單擊【系統(tǒng)維護】/【系統(tǒng)初始化】選項,進入到“系統(tǒng)初始化”模塊。</p><p>  單擊 “數(shù)據(jù)庫腳本”后的按鈕,選擇數(shù)據(jù)庫位置,然后單擊【初始化】按鈕,系統(tǒng)自動彈出確認框,進行確認后即完成系統(tǒng)初始化。</p><p>  (11)單

56、擊【系統(tǒng)維護】/【開機自動運行】選項,進入到“開機自動運行”模塊。</p><p>  勾選“系統(tǒng)設(shè)置”的任意一個選項,單擊【確定】按鈕即設(shè)置成功。</p><p><b>  2.3 設(shè)計目標</b></p><p>  本系統(tǒng)是根據(jù)中小企業(yè)的實際需求而開發(fā)的,完全能夠?qū)崿F(xiàn)企業(yè)的會議視頻管理,通過本系統(tǒng)可以達到以下目標:</p>

57、<p>  (1)系統(tǒng)運行穩(wěn)定,安全可靠。</p><p>  (2)界面設(shè)計美觀,人機交互界面友好。</p><p>  (3)信息查詢靈活、方便、快捷、準確,數(shù)據(jù)存儲安全可靠。</p><p>  (4)滿足鍵盤和鼠標的雙重操作,完全支持回車鍵。</p><p>  (5)信息安全保密。</p><p&g

58、t;<b>  2.4 數(shù)據(jù)庫設(shè)計</b></p><p>  2.4.1 開發(fā)及運行環(huán)境</p><p>  CPU:300MHz以上的處理器。</p><p>  內(nèi)存:128MB,推薦256MB。</p><p>  硬盤:150MB以上剩余空間。</p><p>  顯示像素:最低800*

59、600,最佳效果1024*768。</p><p>  攝像頭:百腦通攝像頭。</p><p>  操作系統(tǒng):Windows2000/NT/XP/CE。</p><p>  數(shù)據(jù)庫:SQL Server2000。</p><p>  驅(qū)動程序:百腦通驅(qū)動程序。</p><p>  2.4.2 數(shù)據(jù)庫概要說明</p

60、><p>  數(shù)據(jù)庫的選擇應(yīng)根據(jù)實際情況確定,首先應(yīng)考慮用戶的數(shù)據(jù)量大小,如果數(shù)據(jù)量不大,可以采用本地數(shù)據(jù)庫,例如Access、Paradox等,如果數(shù)量大,應(yīng)采用大型數(shù)據(jù)庫,例如SQL Server、Oracle、Sybase等。其次應(yīng)考慮經(jīng)費問題,因此一套大型數(shù)據(jù)庫需要幾萬、甚至幾十萬的價格,所以在選擇數(shù)據(jù)庫時,還需要充分考慮用戶的實際條件。</p><p>  2.4.3主要數(shù)據(jù)表的結(jié)構(gòu)

61、</p><p>  本系統(tǒng)采用SQL Server 2000 數(shù)據(jù)庫,系統(tǒng)數(shù)據(jù)庫名為DB_Capture,數(shù)據(jù)庫DB_Capture由tb_conference、tb_login兩張數(shù)據(jù)表構(gòu)成。由于篇幅有限,只給出部分數(shù)據(jù)表。</p><p>  表2-1 tb_conference(會議信息表)</p><p>  表2-2 tb_login(登錄信息表)<

62、;/p><p><b>  第三章 系統(tǒng)實現(xiàn)</b></p><p>  3.1 構(gòu)建應(yīng)用程序框架</p><p>  會議視頻管理系統(tǒng)采用單文檔/視圖結(jié)構(gòu)??蚣茉O(shè)計步驟如下:</p><p>  (1)在Visual C++集成開發(fā)環(huán)境中單擊“File/New”菜單項,打開New窗口,選擇Projects選項卡,如圖3

63、-1所示。</p><p>  圖3-1 New窗口</p><p>  (2)在New窗口中選擇“MFC AppWizard(exe)”選項,在“Project name”編輯框中輸入工程名稱,這里為“Capture”,單擊“OK”按鈕進入MFC應(yīng)用程序向?qū)Р襟E1窗口,如圖3-2所示。</p><p>  圖3-2 MFC應(yīng)用程序向?qū)Р襟E1窗口</p&g

64、t;<p>  (3)選擇“Single document”選項,表示創(chuàng)建單文檔/視圖結(jié)構(gòu)應(yīng)用程序,單擊“Finish”按鈕創(chuàng)建應(yīng)用程序框架。</p><p>  3.2 主窗口設(shè)計</p><p>  會議視頻管理系統(tǒng)主窗口由菜單、工具欄、客戶區(qū)和狀態(tài)欄組成,其中狀態(tài)欄采用系統(tǒng)默認創(chuàng)建的狀態(tài)欄,其他部分需要額外設(shè)計。主窗口運行效果如圖3-3所示。</p>&

65、lt;p>  圖3-3 主窗口效果圖</p><p>  3.2.1 菜單設(shè)計</p><p><b>  (1)設(shè)計菜單資源</b></p><p>  菜單是應(yīng)用程序經(jīng)常使用的界面元素,它對應(yīng)著應(yīng)用程序的一項功能,單擊菜單項將會執(zhí)行欲定義的操作。下面我的詳細介紹菜單的設(shè)計過程。</p><p>  1)在工作區(qū)

66、窗口中選中“ResourceView”標簽頁,如圖3-4所示。</p><p>  圖3-4 資源視圖窗口</p><p>  2)展開“Menu”節(jié)點,默認情況下,在文檔\視圖結(jié)構(gòu)中,MFC向?qū)?chuàng)建一個菜單資源“IDR_MAINFRAME”,雙擊該資源節(jié)點,打開菜單資源編輯窗口,修改菜單資源如下:</p><p><b>  BEGIN</b&g

67、t;</p><p>  POPUP "視頻管理"</p><p><b>  BEGIN</b></p><p>  MENUITEM "視頻采集", ID_Set_disPlay</p><p>  MENUITEM "結(jié)束視頻采

68、集", ID_MENUITEMEnd</p><p><b>  END</b></p><p>  POPUP "綜合設(shè)置"</p><p><b>  BEGIN</b></p><p>  MENUITEM "視頻格式設(shè)定&

69、quot;, ID_Set_disFormat</p><p>  MENUITEM "綜合設(shè)定", ID_Set_dissorce</p><p>  MENUITEM "載取圖像到剪貼板", IDC_PICPIC</p><p>  

70、MENUITEM "視頻壓縮", ID_VideoCompress</p><p>  MENUITEM "錄像", IDCAPTURE</p><p><b>  END</b></p><p>  POPUP &quo

71、t;會議管理"</p><p><b>  BEGIN</b></p><p>  MENUITEM "會議記錄", ID_MENUITEMRECORD</p><p>  MENUITEM "會議查詢", ID_MEN

72、UITEMQUERY</p><p><b>  END</b></p><p>  POPUP "系統(tǒng)維護"</p><p><b>  BEGIN</b></p><p>  MENUITEM "數(shù)據(jù)備份", ID_M

73、ENUITEMBACK</p><p>  MENUITEM "數(shù)據(jù)還原", ID_MENUITEMRESTORE</p><p>  MENUITEM "系統(tǒng)初始化", ID_MENUITEMSYSINI</p><p>  MENUITEM "

74、;開機自動運行", ID_MENUIAUTORUN</p><p><b>  END</b></p><p>  POPUP "幫助 "</p><p><b>  BEGIN</b></p><p>  MENUITEM "

75、關(guān)于視頻系統(tǒng)...", ID_APP_ABOUT</p><p>  MENUITEM "幫助內(nèi)容", ID_MENUITEMHELP</p><p><b>  END</b></p><p><b>  END</b></

76、p><p><b>  (2)自定義菜單類</b></p><p>  默認情況下,Visual C++中的菜單并不能顯示圖標。如果需要在菜單項中顯示圖標,需要自己重新封裝菜單類CMenu。在本系統(tǒng)中,本人自定義了一個菜單類CMyMenu,該類能夠在菜項項中顯示圖標,并且實現(xiàn)了菜單項的重繪,效果如圖3-5所示。</p><p>  圖3-5 菜單設(shè)

77、計效果圖</p><p>  CMyMenu類設(shè)計步驟如下:</p><p>  1)新建一個CMyMenu類,該類派生于CMenu。</p><p>  2)定義一個CMenuItemInfo類,該類用于記錄菜單項的信息,包括菜單項的圖標索引、菜單項文本、菜單項ID,代碼如下:</p><p>  /********************

78、******************************</p><p><b>  定義菜單項信息</b></p><p>  **************************************************/</p><p>  class CMenuItemInfo</p><p><

79、b>  {</b></p><p><b>  public:</b></p><p>  CMenuItemInfo(){m_MenuID = 0;};</p><p>  ~CMenuItemInfo(){};</p><p>  UINT m_Iconindex;//菜單項圖標索引</p&g

80、t;<p>  CString m_Text;//菜單項文本</p><p>  int m_MenuID;//菜單標識,-2頂層菜單,-1彈出式菜單,0分隔條,命令I(lǐng)D普通菜單</p><p><b>  };</b></p><p>  3)為CMyMenu類添加3個成員變量,如下:</p><p> 

81、 UINT m_index;</p><p>  UINT m_imageindex;</p><p>  CMenuItemInfo Menus[100];//記錄菜單項信息</p><p>  4)添加ResetMenuStyle方法,該方法用于修改菜單項的風格,使菜單項具有重繪功能,設(shè)置菜單項信息。在ResetMenuStyle方法中利用遞歸的方式遍歷菜單資源

82、中的每個菜單項,代碼如下:</p><p>  void CMyMenu::ResetMenuStyle(HMENU m_hmenu,BOOL IsTop)</p><p><b>  {</b></p><p>  CMenu* m_pMenu;//菜單指針</p><p>  m_pMenu = CMenu::Fro

83、mHandle(m_hmenu);//根據(jù)句柄獲取菜單指針</p><p>  if (m_pMenu!= NULL)</p><p><b>  {</b></p><p>  for (UINT i = 0;i <m_pMenu->GetMenuItemCount();i++)</p><p><b

84、>  {</b></p><p>  int m = m_pMenu->GetMenuItemID(i);//獲取菜單項ID</p><p>  Menus[m_index].m_MenuID = m;// m_pMenu->GetMenuItemID(i); //如果為彈出式菜單,返回-1,</p><p>  //分隔條返回0,普通

85、菜單,返回ID</p><p>  if ( ((Menus[m_index].m_MenuID<0) &&IsTop==TRUE)) //頂層菜單</p><p>  Menus[m_index].m_MenuID = -2;</p><p>  Menus[m_index].m_Iconindex = -1;</p><

86、;p>  m_pMenu->GetMenuString(i,Menus[m_index].m_Text,MF_BYPOSITION);//獲取菜單項文本</p><p>  m_pMenu->ModifyMenu(i,MF_OWNERDRAW|MF_BYPOSITION |MF_STRING,</p><p>  Menus[m_index].m_MenuID,(LPCT

87、STR)(&Menus[m_index]));//修改菜單信息</p><p>  if (Menus[m_index].m_MenuID>0)</p><p><b>  {</b></p><p>  Menus[m_index].m_Iconindex = m_imageindex;//設(shè)置菜單項圖標索引</p>

88、;<p>  m_imageindex += 1;</p><p><b>  }</b></p><p>  m_index+=1;</p><p>  CMenu* m_pSubmenu = m_pMenu->GetSubMenu(i);//獲取子菜單</p><p>  if (m_pSubme

89、nu )//如果存在子菜單,利用遞歸修改其風格</p><p><b>  {</b></p><p>  ResetMenuStyle(m_pSubmenu->GetSafeHmenu());</p><p><b>  }</b></p><p><b>  }</b>

90、;</p><p><b>  }</b></p><p><b>  }</b></p><p>  5)添加AttachMenu方法,該方法將菜單與指定的句柄關(guān)聯(lián),并調(diào)用ResetMenuStyle方法修改菜單風格。代碼如下:</p><p>  /***********************

91、****************</p><p>  函 數(shù) 名: AttachMenu</p><p>  作 用: 將菜單資源與菜單類關(guān)聯(lián),改變菜單風格</p><p>  參 數(shù): m_hmenu是菜單資源句柄</p><p>  返 回 值: 執(zhí)行成功返回值為true,否則出錯</p><

92、;p>  ***************************************/</p><p>  bool CMyMenu::AttachMenu(HMENU m_hmenu)</p><p><b>  {</b></p><p>  Attach(m_hmenu);</p><p>  Reset

93、MenuStyle(m_hmenu,true);</p><p>  return true;</p><p><b>  }</b></p><p>  6)改寫菜單項的MeasureItem方法,設(shè)置頂層菜單、彈出示菜單、分隔條、普通菜單的大小。代碼如下:</p><p>  //根據(jù)菜單的風格確定菜單項的大小<

94、;/p><p>  void CMyMenu::MeasureItem( LPMEASUREITEMSTRUCT lpMeasureItemStruct )</p><p><b>  {</b></p><p>  lpMeasureItemStruct->itemHeight = 26;</p><p>  lpM

95、easureItemStruct->itemWidth = 130;</p><p>  UINT m_type;</p><p>  m_type = ((CMenuItemInfo*)(lpMeasureItemStruct->itemData))->m_MenuID;</p><p>  switch(m_type)</p>&

96、lt;p><b>  {</b></p><p>  case -2: //頂層菜單</p><p><b>  {</b></p><p>  lpMeasureItemStruct->itemWidth = ((CMenuItemInfo*)</p><p>  (lpMeasure

97、ItemStruct->itemData))->m_Text.GetLength()*10;</p><p><b>  break;</b></p><p><b>  }</b></p><p>  case -1: //彈出式菜單</p><p><b>  {</

98、b></p><p>  lpMeasureItemStruct->itemWidth = ((CMenuItemInfo*)</p><p>  (lpMeasureItemStruct->itemData))->m_Text.GetLength()*10;</p><p><b>  break;</b><

99、;/p><p><b>  }</b></p><p>  case 0: //分隔條</p><p><b>  {</b></p><p>  lpMeasureItemStruct->itemHeight = 10;</p><p><b>  bre

100、ak;</b></p><p><b>  }</b></p><p>  default: //普通菜單項</p><p><b>  {</b></p><p><b>  break;</b></p><p><b>  

101、}</b></p><p><b>  }</b></p><p><b>  }</b></p><p>  7)改寫菜單項的DrawItem方法,修改繪制菜單。在該方法中調(diào)用了多個自定義的方法,這些方法用戶繪制菜單的圖標、文本、背景顏色等。</p><p><b>  

102、//重新繪制菜單項</b></p><p>  void CMyMenu::DrawItem( LPDRAWITEMSTRUCT lpDrawItemStruct )</p><p><b>  {</b></p><p>  if (lpDrawItemStruct->CtlType = ODT_MENU)</p>

103、;<p><b>  {</b></p><p>  if(lpDrawItemStruct->itemData == NULL)return;</p><p>  CDC* pdc = CDC::FromHandle(lpDrawItemStruct->hDC);</p><p>  pdc->SetBkMo

104、de(TRANSPARENT);</p><p>  CRect m_rect (lpDrawItemStruct->rcItem);</p><p>  CString m_text = ((CMenuItemInfo*)(lpDrawItemStruct->itemData))->m_Text;</p><p>  UINT m_MenuID,

105、m_State,m_imageid;</p><p>  m_imageid = ((CMenuItemInfo*)(lpDrawItemStruct->itemData))->m_Iconindex;</p><p>  m_State = lpDrawItemStruct->itemState;</p><p>  m_MenuID = ((

106、CMenuItemInfo*)(lpDrawItemStruct->itemData))->m_MenuID;</p><p>  switch(m_MenuID)</p><p><b>  {</b></p><p><b>  case -2:</b></p><p><b&

107、gt;  {</b></p><p>  DrawTopMenu(pdc,m_rect,m_State&ODS_SELECTED);</p><p>  DrawText(pdc,m_rect,m_text);</p><p><b>  break;</b></p><p><b>  }

108、</b></p><p><b>  case -1:</b></p><p><b>  {</b></p><p>  if (m_State&ODS_SELECTED)</p><p>  DrawBestRect(pdc,m_rect,0xff00ff,0xfffff,f

109、alse);</p><p><b>  else</b></p><p>  DrawTopMenu(pdc,m_rect,false);</p><p>  DrawText(pdc,m_rect,m_text);</p><p>  break;</p><p><b&

110、gt;  }</b></p><p><b>  case 0: </b></p><p><b>  {</b></p><p>  CRect rect1(m_rect);</p><p>  rect1.DeflateRect(2,10,2,5);</p><p

111、>  pdc->Draw3dRect(&rect1,RGB(64,0,128),RGB(255,255,255));</p><p><b>  break;</b></p><p><b>  }</b></p><p><b>  default:</b></p>

112、<p><b>  {</b></p><p>  CRect c_rect (m_rect);</p><p>  DrawBKColor(pdc,c_rect,m_State&ODS_SELECTED);</p><p>  DrawText(pdc,m_rect,m_text);</p><p>

113、;  DrawMenuIcon(pdc, m_imageid,m_rect,true);</p><p><b>  break;</b></p><p><b>  }</b></p><p><b>  }</b></p><p><b>  }</b

114、></p><p><b>  }</b></p><p>  8)在框架類中定義一個CMyMenu變量m_menu,處理框架的WM_DRAWITEM、WM_MEASUREITEM消息,代碼如下:</p><p>  void CMainFrame::OnMeasureItem(int nIDCtl, LPMEASUREITEMSTRUC

115、T lpMeasureItemStruct) </p><p><b>  {</b></p><p>  m_menu.MeasureItem(lpMeasureItemStruct);</p><p><b>  }</b></p><p>  void CMainFrame::OnDrawIt

116、em(int nIDCtl, LPDRAWITEMSTRUCT lpDrawItemStruct) </p><p><b>  {</b></p><p>  m_menu.DrawItem(lpDrawItemStruct);</p><p><b>  }</b></p><p>  3.2.

117、2工具欄設(shè)計</p><p>  默認情況下,在文檔\視圖結(jié)構(gòu)中MFC應(yīng)用程序向?qū)?chuàng)建一個工具欄。該工具欄是一個普通的工具欄,背景不能夠顯示圖像,為此,本人修改了該工具欄,使其背景透明,效果如圖3-6所示。</p><p>  圖3-6 工具欄效果圖</p><p>  MFC提供的工具欄類CToolBar,背景不能顯示圖像,因此本人又添加了一個CReBar對象m

118、_rebar,CReBar能夠作為工具欄的容器,并且可以設(shè)置背景圖像,如果將工具欄放置在CReBar控件中,并將工具欄設(shè)置為透明效果,這樣,工具欄不就可以顯示圖像背景了嗎?</p><p>  工具欄除了顯示背景圖像外,還應(yīng)顯示工具欄按鈕圖標??梢栽诔绦蛑卸x一個CImageList控件,通過該控件添加一組圖標,調(diào)用工具欄的“GetToolBarCtrl().SetHotImageList()”方法設(shè)置圖像列表。

119、</p><p>  工具欄創(chuàng)建過程代碼如下:</p><p>  if (!m_wndToolBar.CreateEx(this,WS_CHILD| CBRS_TOOLTIPS|CBRS_FLOATING| WS_VISIBLE | </p><p>  CBRS_ALIGN_TOP|TBSTYLE_FLAT))</p><p><b

120、>  {</b></p><p>  TRACE0("Failed to create toolbar\n");</p><p>  return -1; </p><p><b>  }</b></p><p>  m_wndToolBar.SetButtons(NULL,1

121、3);</p><p>  int record = 0;</p><p>  CString menutext;</p><p>  CCHAR* c_temp;</p><p>  for (int m = 0;m<13;m++)</p><p><b>  {</b></p>

122、;<p>  if ((m+1) % 3 ==0)</p><p>  m_wndToolBar.SetButtonStyle(m,TBBS_SEPARATOR);</p><p><b>  else</b></p><p><b>  {</b></p><p>  m_wndT

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論