Đồ án tốt nghiệp: Xây dựng ứng dụng truyền thông âm thanh trên mạng cục bộ trình bày các mô hình điện thoại qua mạng, khảo sát các giao thức truyền thông, phương pháp mã hoá và nén âm thanh, tìm hiểu hỗ trợ của sdk windows trong việc xử lý và truyền nhận âm thanh,...
TRƯỜNG ĐẠI HỌC BÁCH KHOA HÀ NÔI TRƯỜNG ĐẠI HỌC THUỶ SẢN KHOA CÔNG NGHỆ THÔNG TIN ĐỒ ĐỒ ÁN ÁNTỐT TỐTNGHIỆP NGHIỆP XÂY XÂYDỰNG DỰNG ỨNG ỨNG DỤNG DỤNGTRUYỀN TRUYỀNTHÔNG THÔNG ÂM ÂMTHANH THANHTRÊN TRÊN MẠNG MẠNG CỤC CỤC BỘ BỘ Giáo viên hướng dẫn: PGS.TS Nguyễn Thị Hoàng Lan Sinh viên thực hiện: Trần Việt Hùng NỘI DUNG BÁO CÁO ➲ CÁC MƠ HÌNH ĐIỆN THOẠI QUA MẠNG ➲ KHẢO SÁT CÁC GIAO THỨC TRUYỀN THÔNG ➲ PHƯƠNG PHÁP MÃ HỐ VÀ NÉN ÂM THANH ➲ TÌM HIỂU HỖ TRỢ CỦA SDK WINDOWS TRONG VIỆC XỬ LÝ VÀ TRUYỀN NHẬN ÂM THANH ➲ PHÂN TÍCH THIẾT KẾ VÀ CÀI ĐẶT THỬ NGHIỆM ỨNG DỤNG TRUYỀN ÂM THANH TRÊN MẠNG CÁC MƠ HÌNH ĐIỆN THOẠI QUA MẠNG ➲ Máy tính đến máy tính (PC to PC) Máy Máy tính tính IP IP Máy Máy tính tính ➲ Máy tính đến điện thoại (PC to phone) Máy Máy tính tính IP IP Gateway Gateway PSDN PSDN Điện Điện thoại thoại ➲ Điện thoại đến điện thoại (phone to phone) Điện Điện thoại thoại Điện Điện thoại thoại PSDN PSDN PSDN PSDN Gateway Gateway Gateway Gateway IP IP KHẢO SÁT CÁC GIAO THỨC TRUYỀN THÔNG TRÊN MẠNG IP Giao thức IP ( Internet Protocol) ➲ Là giao thức không liên kết ➲ Dùng cho mạng chuyển mạch gói ➲ Phân đoạn hợp khối liệu ➲ Cung cấp khả kết nối mạng thành liên mạng để truyền liệu Giao thức TCP ( Transmision Control Protocol) ➲ Là giao thức có liên kết ➲ Cung cấp khả truyền liệu an toàn ➲ Kiểm tra tính xác liệu gửi gửi lại có lỗi xảy Giao thức UDP (User Datagram Protocol) ➲ Là giao thức không liên kết ➲ Truyền liệu khơng an tồn ➲ Thích hợp cho ứng dụng đòi hỏi liệu truyền rộng rãi Khái niêm Socket ➲ Đơn vị cấu trúc chiều ➲ Có thể đọc hay ghi lên socket ➲ Hai loại socket stream datagram Máy MáyA A Máy Máy BB Socket Port Port TCP/IP Interface Kiến trúc mạng TCP/IP Application Application Presentation Presentation Session Session Transport Transport Telnet Telnet FTP FTP SMTP SMTP TCP TCP DSN DSN UDP UDP Network Network Data Data link link Internet Internet& & ICMP ICMP Physical Physical Ethenet Ethenet Token Token bus bus Token Token ring ring ➲ So sánh mơ hình OSI mơ hình TCP/IP Chức đặc điểm TCP/IP ➲ Số lượng nút mạng lớn ➲ Chạy hệ điều hành ➲ Không phụ thuộc vào phần cứng ➲ Cung cấp loạt dịch vụ FTP E mail TCP/IP TCP/IP Telnet DSN PHƯƠNG PHÁP MÃ HỐ VÀ NÉN ÂM THANH Mã hố dạng sóng (Waveform codec) ➲ Địi hỏi tốc độ liệu cao ➲ Chất lượng âm tốt ➲ Phương pháp dựa lấy mẫu tín hiệu lượng tử hố mẫu ➲ Các phương pháp PCM, DPCM, ADPCM Mã hoá nguồn (Source codec) ➲ Mã hố tham số tạo tiếng nói, tổng hợp tiếng nói nhận ➲ Chất lượng tiếng nói khơng trung thực ➲ Độ phức tạp cao ➲ Phương pháp LPC Mã hoá hỗn hợp (Hybrid codec) ➲ Sử dụng kết hợp phương pháp để tạo tín hiệu âm có chất lượng tốt mức độ tốc độ liệu trung bình ➲ Mơ hình máy phát âm (Tương tự LPC) ➲ Xây dựng từ điển ➲ Chuẩn GSM gồm 160 mẫu, lấy 8kHz, chu kỳ 20ms Chất lượng tiếng nói Mã Mãhố hố hỗn hỗnhợp hợp Mã Mãhố hố dạng dạngsóng sóng Rất tốt Tốt Mã Mãhố hốdự dựđốn đốn tuyến tuyếntính tính Trung bình 16 32 64 Tốc độ TÌM HIỂU HỖ TRỢ CỦA WINDOWS SDK TRONG XỬ LÝ VÀ TRUYỀN NHẬN ÂM THANH Môi trường SDK ➲ Môi trường lập trình đa phương tiện mơi trường Windows ➲ Cung cấp lớp dẫn xuất phục vụ cho việc xử lý truyền âm qua mạng ➲ Một số lớp tiêu biểu ➨ CAsyncSocket cung cấp đối tượng hàm giúp ứng dụng giao tiếp socket ➨ Csocket lớp dẫn xuất từ CAsyncSocket dùng xử lý truyền nhận liệu âm ➨ Carchive dùng trình truyền nhận liệu giao thức TCP/IP Các hàm cấp thấp ➲ AuxGetNumDevs : Truy xuất số lượng thiết bị ➲ AuxGetDevCaps : Truy xuất khả thiết bị xuất ➲ WaveInStart : Bắt đầu thu liệu ➲ WaveInStop : Kết thúc việc thu liệu ➲ WaveInPrepareHeader : Chuẩn bị khối liệu nhập vào ➲ WaveOutPrepareHeader : Chuẩn bị khối liệu xuất ➲ Accept : Xác nhận mối nối client ➲ Bind : Kết buộc Socket với cổng ➲ Connect : Nối client với server ➲ Inet_ntoa : Đổi thành địa dạng chuỗi ➲ Send : Gửi liệu qua socket ➲ Mơ hình liên kết trao đổi liệu ➲ Dùng giao thức TCP/IP ➲ Trao đổi liệu thông qua socket ➲ Dùng socket đảm nhận việc truyền nhận liệu Socket Socket Yêu Yêucầu cầu truyền truyềndữ dữliệu liệu Socket Socket Socket Socket Cơ chế gọi lắng nghe liên kết ➲ Lắng nghe cổng quy ước trước ➲ Liên kết xác lập -> trao đổi liệu Yêu Yêucầu cầu nhận nhậndữ dữliệu liệu THIẾT KẾ ỨNG DỤNG TRUYỀN ÂM THANH TRÊN MẠNG LAN Thiết kế mơ hình ➲ Chương trình thiết kế theo mơ hình PC- PC gọi tên CPhone Cấu hình hệ thống ➲ Trong mạng gồm server client ➲ Micro, loa, vỉ mạch âm cho PC ➲ Giao thức liên lạc TCP/IP ➲ Một chương trình truyền thơng âm máy Các bước trình truyền thống âm ➲ Âm anolog từ micro chuyển thành digital vỉ mạch âm (PCM, 8kHz, bits/mẫu) ➲ Các mẫu chép vào đệm thành khối cĩ độ lớn định ➲ Dùng thuật PCM để nén khối đĩ ➲ Thêm vào khối thơng tin khác ➲ Gửi khối liệu sau đĩng gĩi qua socket ➲ Gĩi tin truyền qua mạng vật lý đến đầu ➲ Loại bỏ thơng tin thêm vào, giải nén khối liệu, ghi khối liệu âm giải mã vào đệm ➲ Chép mẫu đệm vào vỉ mạch âm ➲ Vỉ mạch âm chuyển đổi mẫu đĩ âm Ưùng dụng gồm mơ đun ➲ Mơ đun xử lý âm : Thu bắt trình diễn ➲ Mơ đun mã hố / giải mã âm : PCM ➲ Mơ đun truyền / nhận âm Modul Modulxử xửlý lý âm âmthanh Micro Loa Thu Thutiếng tiếngnói nói Phát Pháttiếng tiếngnói nói Modul Modulmã mãhố hố (giải (giảimã) mã) Mã Mãhoá hoá Giải Giảimã mã Modul Modul truyền truyềnnhận nhận Truyền Truyền Nhận Nhận Mạng Mạng máy máy tình tình Lưu đồ mơ đun thu âm (Capture) Mở Mởsoundcard soundcardchuẩn chuẩnbịbịghi ghi Ghi Ghitín tínhiệu hiệuâm âmthanh thanhvừa vừa lấy lấymẫu mẫuvào vàobộ bộđệm đệmghi ghi Chưa đầy Bộ Bộđệm đệmghi ghi đãđầy đầychưa chưa?? Đầy Kích Kíchhoạt hoạt modul modulmã mãhố hố Lưu đồ mơ đun trình diễn âm (Player) Mở Mởsoundcard soundcardchuẩn chuẩnbịbịphát phát Khơng Có Códữ dữliệu liệu trongbộ bộđệm đệm phát phátkhơng khơng?? Có Chuyển Chuyểndữ dữliệu liệutừ từ bộđệm đệmrarasoundcard soundcard Loa Lưu đồ mơ đun mã hố âm Bắt Bắtđầu đầu Khơng Có Códữ dữliệu liệu trongbộ bộđệm đệm ghi ghikhơng khơng?? Có Lấy Lấymột mộtkhung khungtiếng tiếngnói nóitừ từbộ bộđệm đệmghi ghi Mã Mãhố hốtheo theophương phươngpháp phápPCM PCM Chép Chéptiếng tiếngnói nóiđã đãmã mãhố hốvào vàobộ bộđệm đệmtruyền truyền Mơ Mơđun đuntruyền truyền Lưu đồ mô đun giải mã âm Bắt Bắtđầu đầu Khơng Có Códữ dữliệu liệu trongbộ bộđệm đệm nhận nhậnkhơng? khơng? Có Lấy Lấymột mộtkhung khungtiếng tiếngnói nóitừ từbộ bộđệm đệmnhận nhận Giải Giảimã mãtheo theophương phươngpháp phápPCM PCM Chép Chéptiếng tiếngnói nóiđã đãgiải giảimã mãvào vàobộ bộđệm đệmphát phát Mô Môđun đunphát phát Lưu đồ mô đun truyền / nhận âm Bắt Bắtđầu đầu Khơng Có Códữ dữliệu liệu trongbộ bộđệm đệm truyền truyền//nhận nhận không? khơng? Có Lấy Lấymột mộtkhung khungtiếng tiếngnói nói từ từbộ bộđệm đệmnhận nhận//truyền truyền Nhận Nhận//truyền truyềntheo theogiao giaothức thứcTCP TCP Mơ Mơđun đungiải giảimã mã//mã mãhố hố KẾT LUẬN Các kết đạt ➲ Về lý thuyết ➨ Tìm hiểu mơ hình điện thoại qua mạng ➨ Các phương pháp mã hoá nén âm ➨ Kiến trúc TCP/IP ➨ Trợ giúp môi trường SDK cho lập trình mạng ➲ Về thực nghiệm ➨ Xây dựng chương trình liên kết hai máy mơi trường mạng cục trao đổi liệu âm Nhận xét đánh giá kết ➲ Chất lượng tiếng nói chấp nhận phạm vi mạng LAN ➲ Có thể phát triển ứng dụng để sử dụng cho toán thực tế ... Modul truyền truyềnnhận nhận Truyền Truyền Nhận Nhận Mạng Mạng máy máy tình tình Lưu đồ mơ đun thu âm (Capture) Mở Mởsoundcard soundcardchuẩn chuẩnbịbịghi ghi Ghi Ghitín tínhiệu hiệuâm âmthanh thanhvừa... KẾ ỨNG DỤNG TRUYỀN ÂM THANH TRÊN MẠNG LAN Thiết kế mơ hình ➲ Chương trình thiết kế theo mơ hình PC- PC gọi tên CPhone Cấu hình hệ thống ➲ Trong mạng gồm server client ➲ Micro, loa, vỉ mạch âm. .. nóitừ t? ?bộ bộđệm đệmghi ghi Mã Mãhố hốtheo theophương phươngpháp phápPCM PCM Chép Chéptiếng tiếngnói nóiđã đãmã mãhố hốvào vàobộ bộ? ?ệm đệmtruyền truyền Mơ Mơđun đuntruyền truyền Lưu đồ mô đun