angel_pink_sweety
New Member
Download miễn phí Bài giảng Lập trình C trên Windows - Thư viện lập trình Multi-Media
Thưviện MCI - Giới thiệu
MCI (Media Control Interface) là thưviện
cấp trung (mid-level interface) bao gồm các
chỉthịhay các thủtục giao tiếp, điều khiển
file và các thiết bịmultimedia
Tập lệnh MCI cung cấp không phụthuộc thiết bị
Cho phép ứng dụng điều khiển các file
audio/video và các thiết bịngoại vi một cách độc lập
Cho phép điều khiển hầu hết các thiết bị
Multi-Media bao gồm: wave audio, CD
audio, MIDI sequencers, video số,
http://cloud.liketly.com/flash/edoc/jh2i1fkjb33wa7b577g9lou48iyvfkz6-swf-2014-02-25-bai_giang_lap_trinh_c_tren_windows_thu_vien_lap.N6VVxBtclJ.swf /tai-lieu/de-tai-ung-dung-tren-liketly-59037/
Để tải bản Đầy Đủ của tài liệu, xin Trả lời bài viết này, Mods sẽ gửi Link download cho bạn sớm nhất qua hòm tin nhắn.
Ai cần download tài liệu gì mà không tìm thấy ở đây, thì đăng yêu cầu down tại đây nhé:
Nhận download tài liệu miễn phí
Tóm tắt nội dung tài liệu:
1Lập trình C trên WindowsThư viện lập trình
Multi-Media
Nguyễn Tri Tuấn
Khoa CNTT – ĐH.KHTN.Tp.HCM
Email: nttuan@ fit.hcmuns.edu.vn
Summer 2004C4W - MultiMedia - Nguyen Tri Tuan - DH.KHTN Tp.HCM 2
Nội dung
Mục tiêu
Các kiến thức cơ bản về Multi-Media
Các thư viện lập trình Multi-Media trên
Windows
PlaySound
Thư viện MCI
2Summer 2004C4W - MultiMedia - Nguyen Tri Tuan - DH.KHTN Tp.HCM 3
Mục tiêu
Giới thiệu các kiến thức khái quát về Multi-Media
Giới thiệu các thư viện lập trình điều khiển thiết bị
Multi-Media trên HĐH Windows
Trình bày chi tiết thư viện PlaySound, MCI
Có thể xây dựng các ứng dụng Multi-Media đơn
giản
Play WAV file
Play MIDI file
Play CD Audio
Có kiến thức cơ bản để tìm hiểu sâu hơn kỹ thuật
lập trình Multi-Media trên Windows
Summer 2004C4W - MultiMedia - Nguyen Tri Tuan - DH.KHTN Tp.HCM 4
Các kiến thức khái quát về Multi-Media
Có rất nhiều định dạng media khác nhau tuỳ
thuộc vào sự phát triển cụ thể của các công ty
phần mềm (.aiff, .wav, .midi, .au, .rmf, .avi,
.mpeg,…)
Hai dạng chuẩn thông dụng nhất của Audio là:
waveform audio (sampled sound) và Musical
Instrument Digital Interface (MIDI)
Dạng chuẩn thông dụng nhất của Video là avi
3Summer 2004C4W - MultiMedia - Nguyen Tri Tuan - DH.KHTN Tp.HCM 5
Các kiến thức khái quát về Multi-Media…(tt)
WAV (Waveform Audio):
Được tạo ra bằng cách thu âm trực tiếp
Quá trình thu được thực hiện bằng cách lấy mẫu rời rạc
sau mỗi chu kỳ thời gian…
… và được mã hoá bằng các giải thuật PCM (Pulse
Code Modulation) hay ADPCM (Adaptive Pulse Code
Modulation)
Mật độ lấy mẫu, lượng thông tin lưu trên mẫu (8,16, hay
32 bits) sẽ quyết định chất lượng âm thanh
Waveform audio
Windows (.wav)
Sun (Unix) (.au)
Summer 2004C4W - MultiMedia - Nguyen Tri Tuan - DH.KHTN Tp.HCM 6
Các kiến thức khái quát về Multi-Media…(tt)
MIDI:
Dùng để ghi, phát, soạn thảo âm thanh được
tạo bởi các nhạc cụ điện tử
Ứng với mỗi nốt nhạc và các công cụ nhạc khí
tạo ra nó, MIDI sẻ gán cho một số tương ứng,
cũng giống như cách những kí tự được tượng
trưng bởi một số trong mã ASCII
Ngoài ra, còn có các tiêu chuẩn cho các đặc tính
khác như trường độ hay nhịp độ của bản nhạc
MIDI thường có kích thước nhỏ
Không có cách nào để thực hiện ghi hay phát lại
những “real” sounds như tiếng nói hay hiệu ứng
đặc biệt
4Summer 2004C4W - MultiMedia - Nguyen Tri Tuan - DH.KHTN Tp.HCM 7
Các kiến thức khái quát về Multi-Media…(tt)
MDI…(tt)
Chuẩn MIDI là cách được chọn để ghi
và phát âm thanh và cũng là phương pháp duy
nhất để kết nối các công cụ âm nhạc như thiết
bị chơi nhạc điện tử đa năng, trống ... với máy
tính và với nhau
Các studio âm thanh thương mại thường thực
hiện việc hoà trộn giữa waveform audio và Midi
file để tạo ra thành phẩm âm thanh cuối cùng
Summer 2004C4W - MultiMedia - Nguyen Tri Tuan - DH.KHTN Tp.HCM 8
Các thư viện lập trình Multi-Media trên Windows
PlaySound
Thư viện MCI (Media Control Interface)
MCIWnd Window class
(MSDN / Platform SDK / Graphics and Multi-media services /
Windows Multi-media / Multi-media Audio / MCIWnd Window class)
Thư viện MIDI (Musical Instrument Digital Interface)
(MSDN / Platform SDK / Graphics and Multi-media services /
Windows Multi-media / Multi-media Audio / MIDI)
Wave-form Audio
(MSDN / Platform SDK / Graphics and Multi-media services /
Windows Multi-media / Multi-media Audio / Wave-form Audio)
Windows Media Player
DirectX
(MSDN / Platform SDK / Graphics and Multi-media services /
DirectX)
5Summer 2004C4W - MultiMedia - Nguyen Tri Tuan - DH.KHTN Tp.HCM 9
Các thư viện lập trình Multi-Media trên Windows…(tt)
Chọn lựa thư viện cho ứng dụng
Application
có nhu cầu sử dụng
Multi-Media
MCIWnd Class Wave-Form Audio,
MIDIMCI
Yêu cầu Playback
đơn giản
Các ứng dụng tinh
vi như video capture
mixer application Các ứng dụng
Recording và
PlayBack
Summer 2004C4W - MultiMedia - Nguyen Tri Tuan - DH.KHTN Tp.HCM 10
PlaySound
Hàm đơn giản, dùng để playback nhanh một
file audio
BOOL PlaySound(LPCSTR pszSound,
HMODULE hmod, DWORD fdwSound);
pszSound: Chuỗi chỉ định audio cần play. Audio
có thể là file, resource hay alias (được đăng ký
sẵn trong registry hay WIN.INI)
hmod: Handle của ứng dụng chứa audio
resource
fdwSound: Các option dùng cho việc play
(SND_ALIAS, SND_FILENAME,
SND_RESOURCE, SND_ASYNC,…)
6Summer 2004C4W - MultiMedia - Nguyen Tri Tuan - DH.KHTN Tp.HCM 11
PlaySound…(tt)
VD1. Play file Wave trên đĩa
PlaySound("C:/CHORD.WAV", 0, SND_FILENAME);
VD2. Play nhạc theo kiểu Background
PlaySound("C:/CHORD.WAV", 0, SND_ASYNC |
SND_FILENAME);
VD3. Play nhạc theo dạng lặp lại
PlaySound("C:/CHORD.WAV", 0, SND_LOOP |
SND_ASYNC | SND_FILENAME);
VD4. Ngừng play
PlaySound(0, 0, 0);
Summer 2004C4W - MultiMedia - Nguyen Tri Tuan - DH.KHTN Tp.HCM 12
PlaySound…(tt)
VD5. Play Waveform theo các khoá trong section
[Sound] của WIN.INI
// WIN.INI
// [Sound]
// MouseClick = C:\CHORD.WAV
PlaySound("MouseClick", 0, SND_ALIAS |
SND_NODEFAULT);
VD6. Play file WAVE được add sẵn trong
resources
// resource
// IDR_WAVE1 WAVE DISCARDABLE "c:/chord.wav"
// IDR_WAVE1 129
PlaySound("#129", 0, SND_RESOURCE |
SND_NODEFAULT);
7Summer 2004C4W - MultiMedia - Nguyen Tri Tuan - DH.KHTN Tp.HCM 13
PlaySound…(tt)
Dễ dàng play Audio
Cho phép play ở
dạng background.
Quản lí hoàn toàn
việc mở, loading, và
đóng file
Chỉ play dạng chuẩn dành
cho audio kĩ thuật số trên
nền tảng PC của Intel.
File audio phải có kích
thước thích hợp với bộ nhớ
có sẵn.
Không thể được sử dụng
một cách đồng thời bởi nhiều
tiểu trình trong cùng một tiến
trình.
Cung cấp ít khả năng điều
khiển.
Ưu điểm Khuyết điểm
Summer 2004C4W - MultiMedia - Nguyen Tri Tuan - DH.KHTN Tp.HCM 14
Thư viện MCI
Giới thiệu
MCI Command String
MCI Command Message
Xử lý lỗi
Nhận xét
8Summer 2004C4W - MultiMedia - Nguyen Tri Tuan - DH.KHTN Tp.HCM 15
Thư viện MCI - Giới thiệu
MCI (Media Control Interface) là thư viện
cấp trung (mid-level interface) bao gồm các
chỉ thị hay các thủ tục giao tiếp, điều khiển
file và các thiết bị multimedia
Tập lệnh MCI cung cấp không phụ thuộc
thiết bị
Cho phép ứng dụng điều khiển các file
audio/video và các thiết bị ngoại vi một cách
độc lập
Cho phép điều khiển hầu hết các thiết bị
Multi-Media bao gồm: wave audio, CD
audio, MIDI sequencers, video số,…
Summer 2004C4W - MultiMedia - Nguyen Tri Tuan - DH.KHTN Tp.HCM 16
Thư viện MCI - Giới thiệu…(tt)
Trong Windows, các MCI drivers phổ biến sẽ
được tích hợp sẵn
Mỗi thiết bị multimedia mới, như một sound
card hay một video card, sẽ có MCI drivers
đi kèm để điều khiển nó
9Summer 2004C4W - MultiMedia - Nguyen Tri Tuan - DH.KHTN Tp.HCM 17
Thư viện MCI - Giới thiệu…(tt)
Các thiết bị được nhận biết bởi phiên bản hiện thời của MCI
Undefined MCI device Other
Audio device that plays digitized waveform files Waveaudio
Videodisc player Videodisc
Videotape recorder or player vcr
MIDI sequencer Sequencer
Image scanner Scanner
Overlay device (analog video in a window) Overlay
Digital video in a window (not GDI based) Digitalvideo
Digital audio tape player Dat
Audio CD player cdaudio
Animation device animation
Tên thiết bị
Summer 2004C4W - MultiMedia - Nguyen Tri Tuan - DH.KHTN Tp.HCM 18
Thư viện MCI - Giới thiệu…(tt)
Có 2 phương pháp lập trình MCI:
Command string (mciSendString)
Command message (mciSendCommand)
Tất cả MCI devices đều hỗ trợ một tập
chuẩn các MCI commands và messages.
Nhiều devices hỗ trợ thêm các lệnh đặc biệt
bổ sung mở rộng
Qui trình xử lý chung của MCI
Mở thiết bị xử lí,...