freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

局域網(wǎng)聊天系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)畢業(yè)設(shè)計(jì)論文-免費(fèi)閱讀

2025-09-28 16:01 上一頁面

下一頁面
  

【正文】 [13] 謝希仁,編著《計(jì)算機(jī)網(wǎng)絡(luò) [M]》 ,北京:電子工業(yè)出版社, 2020年。 [6] Thompson, ,前導(dǎo)工作 室譯 ,《 MFC開發(fā)人員參考手冊》 ,北京 :機(jī)械工業(yè)出版社, 1998年。程序的編程,調(diào)試程序以及最后的測試都是在他 們熱心的幫助下完成的。 通過這次畢業(yè)實(shí)際,我從理論到時間邁出了堅(jiān)實(shí)的一步。 歸納一下,需要改進(jìn)的主要是以下的幾點(diǎn): 1. 功能上的改進(jìn)。取得的主要成果有以下兩點(diǎn) : 1.實(shí)現(xiàn)了通過服務(wù)器中轉(zhuǎn)的文字聊天功能。 總的來說信息發(fā)送與在線用戶列表維護(hù)功能正常,能實(shí)現(xiàn)前期需求分析時需求的功能。所以提出以幀為單位發(fā)送視頻數(shù)據(jù)流。 局域網(wǎng)聊天系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)畢業(yè)設(shè)計(jì) 31 } mmResult = ::waveOutWrite(m_hPlay, lpHdr, sizeof(WAVEHDR))。 ZeroMemory(p,length)。 if(Playing==FALSE) return FALSE。 //給輸入設(shè)備增加一個緩存 mmReturn = ::waveInAddBuffer(m_hRecord, rechead[i], sizeof(WAVEHDR))。錄音用的一個 CWinThread 對象CAudioRec 來實(shí)現(xiàn) ,部分實(shí)現(xiàn)代碼: LRESULT CAudioRec::OnStartRecording(WPARAM wp, LPARAM lp) { if(recording) return FALSE。 } // Set the capture parameters if(SetCapturePara()==FALSE) { // (\n Setting capture parameters failed)。 ret1 amp。 //創(chuàng)建一個 AVICap 捕獲窗口 m_capwnd = capCreateCaptureWindow(Capture,WS_POPUP,0,0,1,1,0,0)。該結(jié)構(gòu)的內(nèi)容包含了圖片的尺寸、卷軸的當(dāng)前位置、overlay 和 preview 是否已設(shè)置。 capCaptureAbort(m_capwnd)。m_bmpinfo,sizeof(m_bmpinfo))。 = FALSE。 設(shè)置捕獲速度,通過使用 capCaptureGetSetup 宏來得到當(dāng)前的捕捉速度,將當(dāng)前的捕捉速度保存在 CAPTUREPARAMS結(jié)構(gòu)的 dwRequestMicroSecPerFrame成員變 量中,也可以通過設(shè)置此變量來改變當(dāng)前設(shè)置值。 5. 設(shè)置回調(diào)函數(shù):通過回調(diào)函數(shù)來通知程序視頻事件的發(fā)生,比如捕捉一局域網(wǎng)聊天系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)畢業(yè)設(shè)計(jì) 25 幀圖像成功的消息,捕捉出錯的消息等。 AddChatMessage(str)。 } if ( () = 0) { SetMessageBox(請選擇說話對象 !\r\n)。 return 。接下來的操作可以創(chuàng)建 CArchive 對象關(guān)聯(lián) CsocketFile,以用來發(fā)送和接收數(shù)據(jù)。 2. 宜操作性,程序簡單易懂,用戶能很容易看懂并使用。 A客戶端向 B客戶端請求語音視頻聊天是通過 B客戶端的用戶名來獲得 B 客局域網(wǎng)聊天系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)畢業(yè)設(shè)計(jì) 15 戶端的 IP 地址,并向 B 客戶端發(fā)送語音視頻聊天請求,當(dāng) B客戶端接受后捕獲視頻,并進(jìn)行壓縮傳輸?shù)?A客戶端解壓并進(jìn)行播放,在 B客戶端接受視頻的同時,A客戶端也捕獲視頻,壓縮傳輸?shù)?B客戶端解壓并進(jìn)行顯示。但如果你不圍繞 Developer Studio 來進(jìn)行學(xué)習(xí),就不能有效地使用 Visual C++( Developer Studio 聽起來很像 Visual Studio , 但它們之間沒有關(guān)系)。 視頻部分主要是利用 Video Capture 函數(shù)庫來獲取影像的。只有部分視頻捕獲卡才具有視頻疊加能力 。同時,它也可將數(shù)字視頻捕獲到文件。 VFW 主要由以下六個模塊組成: 1. :包含了執(zhí)行視頻捕獲的函數(shù),它給 AVI 文件 、 I/O 和視頻音頻設(shè)備驅(qū)動程序提供一個高級接口; 2. :用一套特殊的 DrawDib 函數(shù)來處理屏幕上的視頻操作 ; 3. :此驅(qū)動程序包括對 VFW 的 MCI 命令的解釋器; 4. :支持由標(biāo)準(zhǔn)多媒體 I/O( mmio)函數(shù)提供的更高的命令來訪問 AVI 文件; 5. 壓縮管理器( ICM):管理用于視頻壓縮 /解壓縮的編解碼器( CODEC); 局域網(wǎng)聊天系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)畢業(yè)設(shè)計(jì) 10 6. 音頻壓縮管理器 ACM:提供與 ICM 相似的服務(wù),不同的是它適于波形音頻。 創(chuàng)建線程也可以使用 API 函數(shù): CreateThread 函數(shù)完成。為了創(chuàng)建一個線程,調(diào)用 AfxBeginThread 函數(shù)。 CWinApp 及其派生類是用戶界面線程的例子。 MFC 對多線程編程的支持 Win32 SDK 函數(shù)支持進(jìn)行多線程的程序設(shè)計(jì),并提供了操作系統(tǒng)原理中的各種同步、互斥和臨界區(qū)等操作。這叫作一個設(shè)備上下文(或 DC)。它們對大多數(shù)應(yīng)用提供了通用功能。只有在有明顯優(yōu)勢時,一個 Windows 函數(shù)才被一個類成員函數(shù)所替代 。 MFC 使得開發(fā) Windows 應(yīng)用程序變得簡單容易,將很多應(yīng)用程序開發(fā)中常用的功能自動化,并且提供了文檔框架視圖結(jié)構(gòu)和活動文檔這樣的便于自定義的應(yīng)用程序框架。 TCP 和 IP兩個協(xié)議分別屬于傳輸層和網(wǎng)絡(luò)層,在 Inter 中起著不同的作用。 12. WindowProc 窗口函數(shù) 窗口中的生命樞紐:窗口函數(shù) WindowProc。 5. 顯示窗口 創(chuàng)建窗口后需要使用 ShowWindow 函數(shù)用于顯示窗口。 所謂 UI 資源是指功能菜單、對話框外貌、程序圖標(biāo)、光標(biāo)形狀等等。 在局域網(wǎng)內(nèi),這些功能的實(shí)現(xiàn)跟廣域網(wǎng)相比更加簡單,因?yàn)榫钟蚓W(wǎng)的網(wǎng)絡(luò)結(jié)構(gòu)本身比廣域網(wǎng)要簡單,但是可以借此理解網(wǎng)絡(luò)協(xié)議,以及網(wǎng)絡(luò)通信工具的實(shí)現(xiàn)原理,所以仍然極具研究價(jià)值 。 課題意義 本設(shè)計(jì)主要目的是為了滿足人們通訊交流的便捷,實(shí)現(xiàn)靈活、全面的音、視頻信息的傳遞和服 務(wù)。 我們經(jīng)常聽到 TCP/IP 和 UDP(用戶數(shù)據(jù)報(bào)協(xié)議 )這兩個術(shù)語,它們都是建立在更低層的 IP 協(xié)議上的兩種通訊傳輸協(xié)議。在它的發(fā)展史上,以色列人是功不可沒的。 即時通訊( Instant Messenger,簡稱 IM)軟件可以說是目前我國上網(wǎng)用戶使用率最高的軟件,無論是老牌的 ICQ,還是國內(nèi)用戶量第一的騰訊 ,以及微軟的 MSN Messenger 都是大眾關(guān)注的焦點(diǎn),它們能讓你迅速地在網(wǎng)上找到你的朋友或工作伙伴,可以實(shí)時交談和互傳信息。 Messenger 雖出道較晚,但依托微軟的強(qiáng)大背景,實(shí)力也不可小視。 如果打字聊天的方式已不能滿足, 現(xiàn)在的主流 IM 軟件 還提供了實(shí)時語音聊天,首先您得有音箱或者耳機(jī)、麥克風(fēng),然后就可以向您的網(wǎng)友發(fā)送連接請求,通過后雙方不僅可以用文字聊天,還可以直接講話。 基于局域網(wǎng)的即時通 信工具,實(shí)際上是互聯(lián)網(wǎng)即時通信工具的一個小規(guī)模版本,廣域網(wǎng)上的即時通信工具,如今一般采用 UDP 或者 TCP 協(xié)議體系來實(shí)現(xiàn) ,開發(fā)技術(shù)已經(jīng)比較成熟,比如較早的 Icq、 MSN 、 Yahoo!通等國外開發(fā)的產(chǎn)品,還有國產(chǎn)的有名的 、 百度 hi!,中國 移動通信 fetion 等,這些工具統(tǒng)統(tǒng)都實(shí)現(xiàn)了廣域網(wǎng)上的即時通信 。 所謂的 Win32,其實(shí)是一 個 API 規(guī)范,與 UNIX 系統(tǒng)編程接口標(biāo)準(zhǔn) POSIX 是相對應(yīng)的。 2. Msg 結(jié)構(gòu)體 定義了一個 Msg 結(jié)構(gòu)體,是 Windows 內(nèi)設(shè)的一種數(shù)據(jù)格式 , 在 Windows 程序中,消息是由 MSG結(jié)構(gòu)體來表示的。 10. 將消息發(fā)送到回調(diào)函數(shù) DispatchMessage通過 USER模塊的協(xié)助將消息送到該窗口的窗口函數(shù)去了,但是 DispatchMessage 并沒有指定函數(shù)名,卻可以將消息傳送過去,這是因?yàn)橄l(fā)生的時候, OS 已經(jīng)根據(jù)當(dāng)時狀態(tài),為它標(biāo)明了所屬窗口,而窗口所屬的窗口類亦是明確的。 TCP/IP 協(xié)議是由 100多個協(xié)議組成的協(xié)議集, TCP和 IP是其中兩個最重要的協(xié)議。 現(xiàn)在的 Windows Sockets已經(jīng)基本上實(shí)現(xiàn)了與協(xié)議無關(guān),你可以使用 Windows Sockets 來調(diào)用多種協(xié)議的功能,但較常使用的是 TCP/IP 協(xié)議。而且,可以將直接調(diào)用 Windows API 與調(diào)用類庫自由地混合起來使用。事實(shí)上,你可能只需要使用其中的十多個不同的類,就可以建立一個非常漂亮的程序。 CWnd 是所有窗口的基類。還有創(chuàng)建 ISAPI 擴(kuò)展 DLL 的類的集合和操作 Windows 套接字的類的集合。 CWinThread 支持兩種線程類型:工作者線程和用戶界面線程??蚣苁褂玫挠脕砭S護(hù)與線程相關(guān)的信息的線程局部數(shù)據(jù)由 CWinThread 對象管理。 AfxBeginThread線程將返回指向新的 CWinThread對象的指針。它引進(jìn)了一種叫 AVI的文件標(biāo)準(zhǔn),該標(biāo)準(zhǔn)未規(guī)定如何對視頻進(jìn)行捕獲、壓縮及播放,僅規(guī)定視頻和音頻該如何存儲在硬盤上, 以及 在 AVI 文件中交替存儲視頻幀和與之相匹配的音頻數(shù)據(jù)。雖然MCI也提供數(shù)字視頻服務(wù),比如 , 它為顯示 AVI文件的視頻提供了 AVIVideo 命令集,為視頻疊加提供了 overlay 命令集,但這些命令主要是基于文件的操作,不能滿足實(shí)時地直接從視頻緩存中 獲 取數(shù)據(jù)的要求 。 AVICap 在顯示視頻時提供的兩種模式 : 1. 預(yù)覽( Preview)模式:該模式使用 CPU資源,視頻幀先從捕獲硬件傳到系統(tǒng)內(nèi)存,接著采用 GDI 函數(shù)在捕獲窗中顯示。 視頻捕獲編程也要用到涉及視頻捕獲的結(jié)構(gòu)、宏、消息和函數(shù)。 Video Compression Functions 主要記錄壓縮功能相關(guān)的信息,其包含的比較重要的成員: ICLocate 輸入指向壓縮前后 BITMAPINFO 的指標(biāo),以及欲使用的codecs; ICCompressorChoose 呼叫一個系統(tǒng)內(nèi)建的對話,其中包含所有可能使用的 codes 以及其相關(guān)參數(shù); ICCompressQuery 詢問 pressor 是否支持某種壓縮方式,輸入?yún)?數(shù)為 pressor handle 及指向壓縮前后 BITMAPINFO 的指標(biāo),此函數(shù)會傳回詢問結(jié)果; ICCompressBegin要求系統(tǒng)準(zhǔn)備相關(guān)資源以供壓縮之用;ICCompress 壓縮某個 frame; ICCompressEnd 歸還相關(guān)資源給系統(tǒng);ICDompressQuery 詢問 depressor 是否支持某種解壓縮方式;ICDompressBegin 要求系統(tǒng)準(zhǔn)備相關(guān)資源以供解壓縮之用; ICDompress 解壓縮某一個 frame; ICDompressEnd歸還相關(guān)資源給系統(tǒng); ICDompressFree歸還 COMPVARS所占用的資源。 文字聊天流程圖如圖 。 在遇到不可預(yù)知的故障時能安全退出。要使用 CSocket 對象,首先要調(diào)用構(gòu)造函數(shù),然后調(diào)用 Create函數(shù)創(chuàng)建一個 Socket 句柄。在對鏈表進(jìn)行操作的同時,要更新 list 列表中的信息。 GetDlgItemText(IDC_USERNAME,szUserName)。 m_csClientSendM(amp。 3. 視頻捕獲初始化。然后再通過 Winsock 將壓縮后的數(shù)據(jù)發(fā)送到另一客戶端。 capCaptureGetSetup(m_capwnd,amp。CapParms,sizeof(CapParms))) { // (\n Failed to set the capture parameters )。 // (\n Video parameters set properly)。再利用 capD
點(diǎn)擊復(fù)制文檔內(nèi)容
研究報(bào)告相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1