Đồ á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,...
Trang 1ĐỒ Á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Ộ
ĐỒ Á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Ộ
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
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
Trang 2NỘ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Ã 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.
➲ 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.
Trang 4➲ Điện thoại đến điện thoại (phone to phone)
Gateway PSDN
Trang 5KHẢO SÁT CÁC GIAO THỨC TRUYỀN THÔNG TRÊN MẠNG IP
KHẢO SÁT CÁC GIAO THỨC TRUYỀN THÔNG TRÊN MẠNG IP
➲ 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 và hợp nhất các khối dữ liệu
➲ Cung cấp khả năng kết nối các mạng con thành liên mạng
để truyền dữ liệu
Giao thức IP ( Internet Protocol)
Giao thức TCP ( Transmision Control Protocol)
➲ Là giao thức có liên kết
➲ Cung cấp khả năng truyền dữ liệu an toàn
➲ Kiểm tra tính chính xác của dữ liệu gửi đi và gửi lại khi
có lỗi xảy ra
Trang 6Port Port
TCP/IP Interface
Giao thức UDP (User Datagram Protocol)
➲ Là giao thức không liên kết
➲ Truyền dữ liệu không an toàn
➲ Thích hợp cho ứng dụng đòi hỏi dữ liệu được truyền rộng rãi
Khái niêm Socket
➲ Đơn vị cấu trúc 2 chiều
➲ Có thể đọc hay ghi lên socket
➲ Hai loại socket là stream và datagram
Trang 7Kiến trúc mạng TCP/IP
Application Presentation Session Transport Network Data link Physical Ethenet Token bus Token ring
Internet & ICMP
➲ So sánh mô hình OSI và mô hình TCP/IP
Trang 8Chức năng và đặc điểm của TCP/IP
➲ Số lượng nút mạng rất lớn
➲ Chạy trên mọi hệ điều hành
➲ Không phụ thuộc vào phần cứng
➲ Cung cấp một loạt các dịch vụ
TCP/IP
FTP
E mail Telnet DSN
Trang 9PHƯƠNG PHÁP MÃ HOÁ VÀ NÉN ÂM THANH
Mã hoá dạng sóng (Waveform codec)
➲ Đòi hỏi tốc độ dữ liệu rất cao
➲ Chất lượng âm thanh tốt
➲ Phương pháp này chỉ dựa trên lấy mẫu tín hiệu và
lượng tử hoá các mẫu đó
➲ Các phương pháp PCM, DPCM, ADPCM
Mã hoá nguồn (Source codec)
➲ Mã hoá các tham số tạo tiếng nói, tổng hợp
tiếng nói tạ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
Trang 102 4 8 16 32 64
Chất lượng tiếng nói
Tốc độ
Rất tốt Tốt
Trung bình
Mã hoá dự đoán tuyến tính
Mã hoá dự đoán tuyến tính
Mã hoá dạng sóng
Mã hoá dạng sóng
Mã hoá hỗn hợp
Mã hoá hỗn hợp
Mã hoá hỗn hợp (Hybrid codec)
➲ Sử dụng kết hợp 2 phương pháp trên để tạo ra tín hiệu
âm thanh có chất lượng tốt ở mức độ tốc độ dữ 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 tại 8kHz, chu kỳ 20ms
Trang 11TÌM HIỂU HỖ TRỢ CỦA WINDOWS SDK TRONG XỬ LÝ VÀ TRUYỀN NHẬN ÂM THANH
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 dưới môi trường
Windows
➲ Cung cấp các lớp dẫn xuất phục vụ cho việc xử lý và
truyền âm thanh qua mạng
➲ Một số lớp tiêu biểu
➨ CAsyncSocket cung cấp các đối tượng và các hàmgiúp ứng dụng giao tiếp bằng socket
➨ Csocket là lớp dẫn xuất từ CAsyncSocket dùng xử
lý và truyền nhận dữ liệu âm thanh
➨ Carchive chỉ dùng trong quá trình truyền nhận dữ liệubằng giao thức TCP/IP
Trang 12Các hàm cấp thấp
➲ AuxGetNumDevs : Truy xuất số lượng các thiết bị
➲ AuxGetDevCaps : Truy xuất khả năng của thiết bị xuất
➲ WaveInStart : Bắt đầu thu dữ liệu
➲ WaveInStop : Kết thúc việc thu dữ liệu
➲ WaveInPrepareHeader : Chuẩn bị khối dữ liệu nhập vào
➲ WaveOutPrepareHeader : Chuẩn bị khối dữ liệu xuất ra
➲ Accept : Xác nhận mối nối của client
➲ Bind : Kết buộc Socket với cổng
➲ Connect : Nối client với server
➲ Inet_ntoa : Đổi thành địa chỉ dạng chuỗi
➲ Send : Gửi dữ liệu qua socket
➲
Trang 13Mô hình liên kết và trao đổi dữ liệu
➲ Dùng giao thức TCP/IP
➲ Trao đổi dữ liệu thông qua socket
➲ Dùng 1 socket đảm nhận việc truyền và nhận dữ liệu
Cơ chế gọi và lắng nghe liên kết
➲ Lắng nghe ở một cổng quy ước trước
➲ Liên kết được xác lập -> trao đổi dữ liệu
Trang 14➲ Trong mạng gồm 1 server và các client
➲ Micro, loa, vỉ mạch âm thanh cho mỗi PC
➲ Giao thức liên lạc TCP/IP
➲ Một chương trình truyền thông âm thanh giữa 2 máy
Trang 15Các bước trong quá trình truyền thống âm thanh
➲ Âm thanh anolog từ micro được chuyển thành digital tại
vỉ mạch âm thanh (PCM, 8kHz, 8 bits/mẫu)
➲ Các mẫu được sao chép vào bộ đệm thành các khối cĩ độ lớn nhất định
➲ Dùng các thuật PCM để nén các khối đĩ
➲ Thêm vào khối các thơng tin khác
➲ Gửi khối dữ liệu sau khi đĩng gĩi qua socket
➲ Gĩi tin được truyền qua mạng vật lý đến đầu kia
➲ Loại bỏ các thơng tin thêm vào, giải nén các khối dữ liệu, ghi khối dữ liệu âm thanh được giải mã vào bộ đệm
➲ Chép các mẫu trên bộ đệm vào vỉ mạch âm thanh
➲ Vỉ mạch âm thanh chuyển đổi các mẫu đĩ thanh âm thanh
Trang 16Ưùng dụng gồm 3 mô đun chính
➲ Mô đun xử lý âm thanh : Thu bắt và trình diễn
➲ Mô đun mã hoá / giải mã âm thanh : PCM
➲ Mô đun truyền / nhận âm thanh
Modul truyền nhận
Micro
Thu tiếng nói Mã hoá Truyền
Mạng máy tình
Mạng máy tình
Phát tiếng nói Giải mã Nhận
Loa
Trang 17Lưu đồ mô đun thu âm thanh (Capture)
Mở soundcard chuẩn bị ghi
Ghi tín hiệu âm thanh vừa lấy mẫu vào bộ đệm ghi
Ghi tín hiệu âm thanh vừa lấy mẫu vào bộ đệm ghi
Kích hoạt modul mã hoá
Đầy Chưa đầy
Trang 18Lưu đồ mô đun trình diễn âm thanh (Player)
Mở soundcard chuẩn bị phát
Có dữ liệu trong bộ đệm phát không ?
Có dữ liệu trong bộ đệm phát không ?
Loa
Trang 19Lưu đồ mô đun mã hoá âm thanh
Bắt đầu
Lấy một khung tiếng nói từ bộ đệm ghi
Có dữ liệu trong bộ đệm ghi không ?
Có dữ liệu trong bộ đệm ghi không ?
Mã hoá theo phương pháp PCM Chép tiếng nói đã mã hoá vào bộ đệm truyền Mô đun truyền
Có Không
Trang 20Bắt đầu
Lấy một khung tiếng nói từ bộ đệm nhận
Có dữ liệu trong bộ đệm nhận không?
Có dữ liệu trong bộ đệm nhận không?
Giải mã theo phương pháp PCM Chép tiếng nói đã giải mã vào bộ đệm phát Mô đun phát
Có Không
Lưu đồ mô đun giải mã âm thanh
Trang 21Lưu đồ mô đun truyền / nhận âm thanh
Có dữ liệu trong bộ đệm truyền / nhận không?
Nhận / truyền theo giao thức TCP
Mô đun giải mã / mã hoá
Có Không
Trang 22KẾT LUẬN
Các kết quả đạt được
➲ Về lý thuyết
➨ Tìm hiểu các mô hình điện thoại qua mạng
➨ Các phương pháp mã hoá nén âm thanh