TỔNG HỢP TIẾNG NĨI
VI.Phương pháp thu âm :
dùng MCI để thu âm. Cách thứ hai là dùng các hàm cấp thấp của Windows. Như đã giới thiệu, các hàm này sẽ cho ta sự linh hoạt trong mọi thao tác.
Trước hết ta phải mở thiết bị âm thanh bằng hàm :
waveInOpen()
Tương tự như khi phát, ta phải cung cấp địa chỉ của một hàm gọi là hàm
CallBack mà sẽ phát ra các sự kiện liên quan đến quá trình thu âm. Các thơng điệp tương ứng với các sự kiện này là :
MM_WIM_OPEN Được gửi khi thiết bị được mở bằng hàm
waveInOpen()
MM_WIM_DATA Được gửi khi thiết bị hồn tất việc thu âm sau khi gọi hàm waveInStart()
MM_WIM_CLOSE Được gửi khi thiết bị được đĩng bằng hàm
waveInClose()
Ngồi ra, ta cũng cần cung cấp mã nhận dạng thiết bị âm thanh và một cấu trúc mơ tả các thơng số định dạng của file Wave. Để chọn thiết bị âm thanh mặc định, ta dùng hằng WAVE_MAPPER thay cho mã nhận dạng thiết bị âm thanh.
Một việc khác khơng thể thiếu là cấp phát bộ nhớ để lưu các mẫu âm thanh thu được. Dựa vào các thơng số được mơ tả trong cấu trúc file Wave, ta phải tính tốn dung lượng bộ nhớ tối thiểu cần được cấp phát trong một khoảng thời gian nào đĩ. Cụ thể là :
dwAvgBytesPerSec * thời gian thu âm
Kế đĩ, ta sẽ tạo ra header file sẽ thu âm bao gồm cả vùng nhớ vừa cấp phát bằng hàm :
waveInPrepareHeader()
Sau đĩ ta sẽ gửi những thơng tin này đến thiết bị thu âm bằng hàm :
waveInAddBuffer()
Cuối cùng, quá trình thu âm sẽ được bắt đầu bằng hàm :
waveInStart()
PHẦN 3
THIẾT KẾ THIẾT KẾ HỆ THỐNG HỆ THỐNG
Chương 1
SƠ ĐỒ HOẠT ĐỘNG CỦA HỆ THỐNG