Phân tích thiết kế hệ thống xây dựng ứng dụng truyền thông âm thanh trên mạng cục bộ

131 4 0
Phân tích thiết kế hệ thống   xây dựng ứng dụng truyền thông âm thanh trên mạng cục bộ

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

Đề tài : Xây dựng ứng dụng truyền thông âm mạng cục LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com LỜI NÓI ĐẦU Trong năm gần đây, mạng máy tính ngày trở nên phổ biến Việc liên kết máy tính mơi trường mạng liên kết mạng lại với đem lại cho nhiều lợi ích cơng việc việc học tập nghiên cứu, giải trí Chúng ta sử dụng tài nguyên sẵn có chia xẻ file server, printer, máy fax, mơi trường mạng cịn mơi trường thơng tin nhanh chóng tiện lợi nhờ vào chế truyền thông mạng : e-mail, www Bên cạnh đó, tốc độ phát triển máy tính PC nhanh chóng Các kỹ thuật đại giúp tạo máy PC với tốc độ tính tốn nhanh hơn, nhớ lớn khả xử lý ngày đa dạng giá thành ngày rẻ Một khả ưu việt máy PC hỗ trợ multimedia Các máy PC ngày giao tiếp với người không text mà kết hợp tất phương tiện khác tiếng nói, hình ảnh Việc đưa kỹ thuật multimedia vào ứng dụng truyền thông mạng giúp tạo nhiều ứng dụng phong phú Chẳng hạn hộp thư điện tử ngày khơng văn mà cịn bao gồm tiếng nói, hình ảnh Các trang web trở nên sinh động hẳn kèm theo kỹ thuật multimedia Bên cạnh đó, thiết kế ứng dụng tiện ích Video conference, voice mail Thơng qua chương trình này, người sử dụng trao đổi thơng tin với tiếng nói Chương trình thực nhiều lĩnh vực thông tin điện thoại, viễn thơng, máy tính Tuy nhiên chưa áp dụng phát triển rọng rãi lĩnh vực thông tin khác hạn chế thiết bị Ngày nay, cơng nghệ thơng tin phát triển việc thực chương trình hồn tồn Ứng dụng nhiều lĩnh vực khác :  •Việc dạy học từ xa LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com  •Việc chẩn đốn, chữa bệnh từ xa  •Hội thảo, thảo luận theo nhóm  •Cơng cụ trao đổi thơng tin hình ảnh âm Mục tiêu đồ án tốt nghiệp tìm hiểu mơ hình cơng nghệ truyền âm mạng máy tính, sở xây dựng ứng dụng truyền thông âm thoại mạng cục Đồ án xây dựng thử nghiệm hệ thống cho phép trao đổi thơng tin tiếng nói thoại, tương tác điểm – điểm mạng LAN Đồ án trình bày gồm chương với bố cục sau : Chương I : Tìm hiểu mơ hình điện thoại qua mạng, Từ đưa mơ hình thực thi đồ án Chương II: Giới thiệu chung giao thức truyền thông mạng Internet vào khảo sát cụ thể giao thức Chương III : Giới thiệu chuẩn mã hố nén âm Chương IV : Tìm hiều mơi trường lập trình SDK Windows ứng dụng mạng Chương V : Thiết kế chương trình truyền tiếng nói qua mạng LAN thơng qua trợ giúp công cụ SDK Đánh giá kết thử nghiệm Phần kết luận : Nêu kết đề tài hướng nghiên cứu hướng phát triển LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com Việc nghiên cứu lý thuyết cách hệ thống xây dựng chương trình phần mềm địi hỏi phải đầu tư nhiều thời gian Với thời gian có hạn luận văn em không tránh khỏi thiếu sót, em mong dẫn thêm thầy cô bạn Nhân đây, em xin chân thành cám ơn đến PGS - TS Nguyễn Thị Hoàng Lan, người trực tiếp hướng dẫn em hoàn thành luận văn Em xin chân thành cám ơn thầy cô khoa Công nghệ thông tin Trường ĐH Bách Khoa HN, Trường ĐH Thủy Sản toàn thể bạn giúp đỡ em hoàn thành luận văn LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com CHƯƠNG I TÌM HIỂU MƠ HÌNH ĐIỆN THOẠI QUA MẠNG I.1 CÁC MƠ HÌNH ĐIỆN THOẠI I.1.1 MÁY TÍNH ĐẾN MÁY TÍNH Trong mơ hình hai th bao sử dụng máy tính nối vào mạng IP thiết bị đầu cuối Tiếng nói mã hố sau nén q trình nhận liệu hồn tốn giống với quy trình ngược lại giải nén, giải mã phần mềm Trong mơ hình địi hỏi hai th bao cần phải có soundcard, microphone, loa phần mềm giống nhau.[1] Máy tính IP Máy tính Hình I.1 : Mơ hình PC - PC I.1.2 MÁY TÍNH ĐẾN ĐIỆN THOẠI HOẶC ĐIỆN THOẠI ĐẾN MÁY TÍNH Trong mơ hình này, thuê bao sử dụng máy tính nối mạng với mạng thuê bao sử dụng điện thoại mạng PSTN/ISDN/GSM/TDM Sử dụng gateway để chuyển tiếng nói mạng IP thành tiếng nói mạng PSTN trao đổi thông tin hai mạng Như vậy, máy tính phải đầy đủ thiết bị Soundcard, loa, LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com microphone phần mềm thông qua server mạng IP để kết nối với mạng PSTN Máy tính Gateway thơng qua Geteway IP PSTN Điện thoại Hình I.2 : Mơ hình Máy tính – Điện thoại I.1.3 ĐIỆN THOẠI ĐẾN ĐIỆN THOẠI Trong mơ hình này, hai thuê bao sử dụng điện thoại bình thường mạng IP sử dụng trường hợp gọi đường dài Gateway sử dụng hai đầu để PSTN Điện thoại IP Gateway PSTN Gateway Điện thoại chuyển đổi liệu mạng với nhau.[1] Hình I.3 : Mơ hình Điện thoại – Điện thoại LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com I.2 YÊU CẦU ỨNG DỤNG TRUYỀN ÂM THANH TRÊN MẠNG LAN Trong phần phân tích yêu cầu xây dựng ứng dụng truyền âm mạng LAN : Từ ba mơ hình em nhận thấy mơ hình địi hỏi q trình nghiên cứu thiết bị phức tạp, địi hỏi phải đầu tư cơng nghệ thực Nên đồ án thức theo mơ hình PC – PC, đơn giản khơng cần đầu tư thiết bị mới, tận dụng thiết bị có sẵn điều quan trọng thử nghiệm hoàn chỉnh phạm vi đồ án Vấn đề đặt với hệ thống mạng LAN, WAN với tài nguyên sẵn có xây dựng chương trình truyền tiếng nói với thời gian thực cho phép từ máy sang máy khác (point to point) với số yêu cầu thích hợp giống việc xử lý truyền tiếng nói thơng tin liên lạc (điện thoại hữu tuyến) Chương trình sử dụng giao thức TCP/IP giao thức phổ biến tin cậy để kết nối truyền tiếng nói Do sử dụng giao thức TCP giao thức có liên kết nên dẫn đến độ trễ lớn với ứng dụng mạng LAN chấp nhận Ngay tiếng nói thu qua số xử lý mã hố tiếng nói nén máy, tiếng nói truyền tới máy cần kết nối qua xử lý ngược so với lúc thu giải nén giải mã để phát loa Chương trình cho phép kết nối hai máy tạo mơ hình điện thoại máy tính điện thoại hữu tuyến thông thường Bất kỳ máy mạng chế độ chờ hay chế độ chạy (background) gọi máy P-SERVER; máy chế độ gọi (active) gọi P-CLIENT Như máy mạng P-SERVER P-CLIENT Trên mơi trường mạng, muốn nói chuyện người máy đó, tiến hành việc gọi liên kết Việc gọi liên kết tiến hành việc xác định địa IP máy mà cần liên kết Sau chờ việc xác lập liên kết Ở máy gọi có thơng báo cho người sử dụng biết có người khác muốn nói chuyện Tùy theo người định có chấp nhận hay khơng Nếu chấp nhận liên kết xác lập hai bên tiến hành trao đổi thơng tin với Trong q trình trao đổi thơng tin, máy truyền tiếng nói người sử dụng đồng thời nhận liệu âm máy liên kết Khi nói chuyện xong, liên kết bị hủy LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com bỏ chương trình kết thúc Nếu máy gọi khơng có người trả lời sau thời gian chờ vượt giới hạn liên kết bị huỷ bỏ Vì liệu truyền nhận chương trình liệu dạng liên tục âm có yêu cầu đặt sau: Bảo đảm tính mạch lạc liệu Tiếng nói q trình thơng tin phải rõ ràng, liền lạc, khơng bị ngắt quãng Các yêu cầu đặt nhiệm vụ mà phải giải việc xây dựng chương trình Đối với liệu âm thanh, phải xem xét thông số q trình lấy mẫu đầu vào Các thơng số đặc trưng : tần số lấy mẫu, số bit biểu diễn cho điểm lấy mẫu, kênh lấy mẫu sử dụng kênh (mono) hay hai kênh (stereo) Do phải tổ chức kích thước buffer âm cho phù hợp với việc truyền nhận đạt tốc độ cao Một vấn đề khác đặt với liệu âm việc nhận phát đầu ra, phải quan tâm đến việc xử lý loại bỏ tín hiệu nhiễu giúp cho âm rõ ràng, trung thực Do việc truyền nhận liệu môi trường mạng nên phải quan tâm đến tốc độ, lưu lượng trao đổi liệu, thời gian truyền nhận để đưa cách giải cho phù hợp Ngoài vấn đề trên, số yêu cầu khác đặt cho ứng dụng : chế tạo lập liên kết, việc chọn lựa dạng format liệu, định thông số thời gian Tất nhiệm vụ thực thi phải thực thông qua giao diện dễ dàng cho người sử dụng.[3] Trường hợp mở rộng hệ thống cho mạng Internet cần kết nối server mạng với tổng đài mạng PABX, yêu cầu đòi hỏi phức tạp cần có trang thiết bị để thử nghiệm Bởi đồ án em nghiên cứu cách thức truyền tiếng nói mạng nội LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com CHƯƠNG II KHẢO SÁT CÁC GIAO THỨC TRUYỀN THÔNG II.1 KHÁI NIỆM CƠ BẢN GIAO THỨC TCP/IP Trong hệ thống mạng Internet, máy có tên địa IP (Internet Protocol) Tên hay địa IP xác định máy hệ thống mạng Internet Giữa tên máy địa IP chuyển đổi thơng qua hàm Địa IP biểu diễn số 32 bits Mỗi giao diện mạng nút có hỗ trợ ngăn xếp IP gán địa IP Địa IP gồm phần : số mạng(netid) số LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com máy chủ (hostid) Những bits quan trọng dùng để xác định số lượng bits dùng cho netid hostid Có lớp địa xác định A,B,C,D E Trong đó, lớp A,B,C chứa địa gián Lớp D dành riêng cho kỹ thuật Multicasting sử dụng giao thức đặc biệt để truyền thơng điệp đến nhóm nút chọn lọc Lớp E dành riêng cho ứng dụng tương lai.[5] Hình II.1 Các lớp đại IP LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com HWND hwndApp=NULL; HGLOBAL hWaveHdr; LPWAVEHDR lpWaveHdr; HMMIO hmmio=NULL; UINT wResult; HANDLE hFormat=NULL; WAVEFORMAT pFormat; DWORD dwDataSize=1000; // Mở thiết bị wave để phát if (!waveInOpen((LPHWAVEIN)&hWaveIn, WAVE_MAPPER, (LPWAVEFORMATEX)&pFormat, (LONG)waveInProc, DWORD(this), CALLBACK_FUNCTION)) { MessageBox( LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com "Failed to open waveform input device.", NULL,MB_OK | MB_ICONEXCLAMATION); LocalUnlock(hFormat); LocalFree(hFormat); mmioClose(hmmio, 0); return; } // Allocate and lock memory for the waveform data hData = GlobalAlloc(GMEM_MOVEABLE | GMEM_SHARE, dwDataSize ); if (!hData) { MessageBox( "Out of memory.", NULL, MB_OK | MB_ICONEXCLAMATION); mmioClose(hmmio, 0); LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com return; } if ((lpData =(HPSTR)GlobalLock(hData)) == NULL) { MessageBox( "Failed to lock memory for data chunk.", NULL, MB_OK | MB_ICONEXCLAMATION); GlobalFree(hData); mmioClose(hmmio, 0); return; } // Allocate and lock memory for the header hWaveHdr = GlobalAlloc(GMEM_MOVEABLE | GMEM_SHARE, (DWORD) sizeof(WAVEHDR)); if (hWaveHdr == NULL) LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com { GlobalUnlock(hData); GlobalFree(hData); MessageBox("Not enough memory for header.", NULL, MB_OK | MB_ICONEXCLAMATION); return; } lpWaveHdr = (LPWAVEHDR) GlobalLock(hWaveHdr); if (lpWaveHdr == NULL) { GlobalUnlock(hData); GlobalFree(hData); MessageBox( "Failed to lock memory for header.", LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com NULL, MB_OK | MB_ICONEXCLAMATION); return; } // After allocation, set up and prepare header lpWaveHdr->lpData = lpData; lpWaveHdr->dwBufferLength = dwDataSize; lpWaveHdr->dwFlags = 0L; lpWaveHdr->dwLoops = 0L; waveInPrepareHeader(hWaveIn, lpWaveHdr, sizeof(WAVEHDR)); // Gởi khối liệu đến thiết bị phát wResult = waveInAddBuffer(hWaveIn, lpWaveHdr, sizeof(WAVEHDR)); if (wResult = 0) { waveInUnprepareHeader(hWaveIn, lpWaveHdr, LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com sizeof(WAVEHDR)); GlobalUnlock( hData); GlobalFree(hData); MessageBox( "Failed to write block to device", NULL, MB_OK | MB_ICONEXCLAMATION); return; } wResult = waveInStart(hWaveIn); if (wResult != 0) return; } Đoạn chương trình play liệu âm void CWAveIn::playbackWaveData() LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com { HWAVEOUT hWaveOut; HWND hwndApp =NULL; HGLOBAL hWaveHdr; LPWAVEHDR lpWaveHdr; HMMIO hmmio=NULL; UINT wResult; HANDLE hFormat=NULL; WAVEFORMAT pFormat; DWORD dwDataSize=1000; // Mở thiết bị wave để phát if (waveOutOpen((LPHWAVEOUT)&hWaveOut, WAVE_MAPPER, (LPWAVEFORMATEX)&pFormat, (LONG)hwndApp, 0L, CALLBACK_WINDOW)) LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com { MessageBox( "Failed to open waveform output device.", NULL,MB_OK | MB_ICONEXCLAMATION); LocalUnlock(hFormat); LocalFree(hFormat); mmioClose(hmmio, 0); return; } // Allocate and lock memory for the waveform data hData = GlobalAlloc(GMEM_MOVEABLE | GMEM_SHARE, dwDataSize ); if (!hData) { MessageBox( "Out of memory.", LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com NULL, MB_OK | MB_ICONEXCLAMATION); mmioClose(hmmio, 0); return; } if ((lpData =(HPSTR)GlobalLock(hData)) == NULL) { MessageBox( "Failed to lock memory for data chunk.", NULL, MB_OK | MB_ICONEXCLAMATION); GlobalFree(hData); mmioClose(hmmio, 0); return; } // Allocate and lock memory for the header hWaveHdr = GlobalAlloc(GMEM_MOVEABLE | GMEM_SHARE, LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com (DWORD) sizeof(WAVEHDR)); if (hWaveHdr == NULL) { GlobalUnlock(hData); GlobalFree(hData); MessageBox("Not enough memory for header.", NULL, MB_OK | MB_ICONEXCLAMATION); return; } lpWaveHdr = (LPWAVEHDR) GlobalLock(hWaveHdr); if (lpWaveHdr == NULL) { GlobalUnlock(hData); GlobalFree(hData); LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com MessageBox( "Failed to lock memory for header.", NULL, MB_OK | MB_ICONEXCLAMATION); return; } // After allocation, set up and prepare header lpWaveHdr->lpData = lpData; lpWaveHdr->dwBufferLength = dwDataSize; lpWaveHdr->dwFlags = 0L; lpWaveHdr->dwLoops = 0L; waveOutPrepareHeader(hWaveOut, lpWaveHdr, sizeof(WAVEHDR)); // Gởi khối liệu đến thiết bị phát wResult = waveOutWrite(hWaveOut, lpWaveHdr, sizeof(WAVEHDR)); if (wResult != 0) LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com { waveOutUnprepareHeader(hWaveOut, lpWaveHdr, sizeof(WAVEHDR)); GlobalUnlock( hData); GlobalFree(hData); MessageBox( "Failed to write block to device", NULL, MB_OK | MB_ICONEXCLAMATION); return; } } LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com TÀI LIỆU THAM KHẢO [1] ANNEXE VOIP-SLIDE Raj Jain http://www.cis.ohio-state.edu/~jain/ [2] AUDIO COMPRESSION THEOGRY LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com http://www.owlnet.rice.edu/~elec301/projects99/adda/index.html [3] BUILDING INTERNET APPLICATION WITH VISUAL C++ Kate Gregogy - Paul Robichaux - Brady Merkel - Markus Pope [4] DIGITAL SIGNAL PROCESSING John G.Proakis - Dimitris G.Manolakis - Prentice Hall [5] INTERNET WORKING VỚI TCP/IP Nhà xuất giáo dục, 2001 [6] Thư viện MSDN LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com ... thơng tin hình ảnh âm Mục tiêu đồ án tốt nghiệp tìm hiểu mơ hình cơng nghệ truyền âm mạng máy tính, sở xây dựng ứng dụng truyền thông âm thoại mạng cục Đồ án xây dựng thử nghiệm hệ thống cho phép... I.2 YÊU CẦU ỨNG DỤNG TRUYỀN ÂM THANH TRÊN MẠNG LAN Trong phần phân tích yêu cầu xây dựng ứng dụng truyền âm mạng LAN : Từ ba mơ hình em nhận thấy mơ hình địi hỏi q trình nghiên cứu thiết bị phức... broadcast hệ thống mạng TCP/IP Chúng ta cần cài đặt ứng dụng client server Ứng dụng client có nhiệm vụ gửi thơng báo đến tất instance ứng dụng server chạy hệ thống mạng. [5] II.3.1 CÁCH CÀI ĐẶT ỨNG DỤNG

Ngày đăng: 01/11/2022, 19:32

Tài liệu cùng người dùng

  • Đang cập nhật ...

Tài liệu liên quan