Các loại ứng dụng đa phương tiện là gì và phương tiện để phát triển chúng. Phát triển các ứng dụng đa phương tiện tùy chỉnh bằng cách sử dụng các khả năng của Intel Perceptual Computing SDK

Trong chương này, chúng ta sẽ xem xét một ví dụ về xây dựng một ứng dụng với đa phương tiện loại 1. Tạo một dự án mới (Tệp | Dự án mới). Đặt TMediaPlayer vào biểu mẫu; đặt các thành phần TFileListBox, TDirectoryListBox, TDriveComboBox, TFilterComboBox để chọn file. Trong thuộc tính FileList cho DirectoryListBox1 và FilterComboBox1, hãy đặt FileListBox1.

Trong thuộc tính DirList của DriveComboBox1, đặt DirectoryListBox1. Trong thuộc tính Bộ lọc cho FilterComboBox1, chỉ định phần mở rộng tệp được yêu cầu:

Tệp AVI(*.avi)|*.avi

Tệp WAVE(*.wav)|*.wav

Tệp MIDI(*.MID)|*.mid

Để tệp đã chọn được phát bằng cách nhấp đúp chuột vào FileListBox1. Trong trình xử lý sự kiện OnDblClick cho FileListBox1, hãy chỉ định

Quy trình TForm1.FileListBox1DblClick(Người gửi:TObject);

với MediaPlayer1 thì làm

Tên tệp:=FileListBox1.FileName;

Sự xuất hiện của biểu mẫu được hiển thị trong Hình. 4.

Hình 4. Phối cảnh ban đầu của dự án

Lưu dự án, chạy nó, chọn tệp mong muốn và nhấp đúp vào nó. MediaPlayer sẽ phát tệp này trong một cửa sổ riêng.

Như đã đề cập ở trên, video có thể được phát bên trong một biểu mẫu, chẳng hạn như trong bảng điều khiển. Hãy sửa đổi dự án một chút và thêm TPanel vào đó (Hình 5). Trong thuộc tính Hiển thị cho MediaPlayer1, chỉ định Panel1. Bạn cần xóa chú thích khỏi bảng (Caption) và thuộc tính BevelOuter = bvNone. Để chuyển từ cửa sổ sang bảng điều khiển trong khi phát lại, hãy đặt TCheckBox trên biểu mẫu và viết vào trình xử lý sự kiện OnClick cho nó:

thủ tục TForm1.CheckBox1Click(Người gửi: TObject);

Bắt đầu_Từ: Longint;

với MediaPlayer1 hãy bắt đầu

nếu FileName="" thì Thoát;

Start_From:=Vị trí;

nếu CheckBox1.Checked thì

Vị trí:=Bắt đầu_Từ;

Khởi động dự án và phát video. Nhấp vào Hộp kiểm.

Cơm. 5. Đã thêm bảng điều khiển để phát lại video và

công tắc cửa sổ/bảng điều khiển

Trong quá trình thực hiện chương trình, bạn có thể cần hiển thị trạng thái hiện tại của đối tượng MediaPlayer và chính video đó (thời gian trôi qua kể từ khi bắt đầu phát lại, thời lượng của video). Đối với điều này, đối tượng TMediaPlayer có các thuộc tính và sự kiện tương ứng: Độ dài, Vị trí, OnNotify, v.v. Hãy thêm chỉ báo tiến trình (TGauge) vào dự án, chỉ báo này sẽ hiển thị theo phần trăm thời gian đã trôi qua (xem Hình 6). Bạn có thể sử dụng bộ hẹn giờ để cập nhật chỉ số chỉ báo. Đặt một đối tượng TTimer trên biểu mẫu, đặt Khoảng thời gian của nó = 100 (100 mili giây). Trong trình xử lý sự kiện OnTimer, bạn cần viết:


thủ tục TForm1.Timer1Timer(Người gửi: TObject);

với MediaPlayer1 thì làm

nếu Tên tệp<>"" sau đó

Gauge1.Progress:=Vòng(100*Vị trí/Chiều dài);

Hình 6: Ứng dụng hoàn chỉnh để phát các tập tin AVI, WAV và MDI

Khởi chạy dự án, chọn tệp (AVI) và nhấp đúp vào nó. Khi phát video, chỉ báo tiến trình sẽ hiển thị tỷ lệ phần trăm tương ứng với thời gian đã trôi qua (Hình 6).

3. ĐỐI TƯỢNG NGHIÊN CỨU, THIẾT BỊ, VẬT LIỆU VÀ PHỤC VỤ NGHIÊN CỨU

3.1. Máy tính tương thích IBM

3.2. Đã cài đặt hệ điều hành Windows.

3.3. Đã cài đặt ứng dụng Borland Delphi.

3.4. Hệ thống trợ giúp ứng dụng Borland Delphi.

4. NHIỆM VỤ CÔNG VIỆC

4.1. Nghiên cứu các nguyên lý lý thuyết của lập trình trong môi trường Borland Delphi.

4.2. Hoàn thành nhiệm vụ lập trình cá nhân của giáo viên trong giới hạn các vấn đề được thảo luận trong công việc thí nghiệm này.

5. QUY TRÌNH THỰC HIỆN CÔNG VIỆC

5.1. Làm quen với các nguyên tắc lý thuyết của công việc trong phòng thí nghiệm này.

5.2. Hoàn thành các bài tập lập trình cá nhân từ giáo viên.

Bài tập 1

Sử dụng các thành phần đa phương tiện, tạo chương trình cho phép bạn chọn và xem hình ảnh video

Nhiệm vụ 2

Bổ sung cho chương trình khả năng xác định thời gian và kích thước của tệp đang được phát

5.3. Lập báo cáo công việc.

5.4. Bảo vệ công việc trong phòng thí nghiệm bằng cách trả lời các câu hỏi của giáo viên.

6.1. Mô tả mục đích của công việc.

6.2. Nguyên tắc lý thuyết cơ bản của công việc

6.4. Mô tả phương pháp để hoàn thành một nhiệm vụ cá nhân.

7. DANH MỤC NGUỒN SỬ DỤNG

7.1. Delphi 7: [hướng dẫn đầy đủ nhất] / A. D. Khomonenko [và cộng sự]; do A. D. Khomonenko biên tập - St. Petersburg. : BHV - St. Petersburg, 2007 .- 1216 tr. : ốm. (7 bản)

7.2. Lập trình ở Delphi 7 / P. G. Darakhvelidze, E. P. Markov - St. Petersburg: BHV-Petersburg, 2004 .- 784c. : ốm. (1 bản)

7.3. Osipov D. Delphi. Lập trình chuyên nghiệp. - St. Petersburg: Symbol-Plus, 2006. -1056 tr., ill.

Hai loại chương trình đa phương tiện

Đôi khi bạn phải cung cấp một đường dẫn đơn giản để người dùng phát nhiều loại tệp nhất có thể, sau đó cho phép họ chọn và phát tệp thích hợp. Trong trường hợp này, biểu mẫu thường chứa TMediaPlayer, cung cấp khả năng kiểm soát phát lại.

Đôi khi một lập trình viên có thể muốn ẩn sự tồn tại của thành phần TMediaPlayer với người dùng. Tức là phát âm thanh hoặc video mà người dùng không cần quan tâm đến nguồn của nó. Đặc biệt, âm thanh có thể là một phần của bài thuyết trình. Ví dụ: hiển thị biểu đồ trên màn hình có thể kèm theo lời giải thích được ghi trong tệp WAV. Trong quá trình thuyết trình, người dùng thậm chí không biết về sự tồn tại của TMediaPlayer. Nó hoạt động ở chế độ nền. Để thực hiện việc này, thành phần này được ẩn đi (Hiển thị:= Sai;) và được điều khiển theo chương trình.

Trong chương này, chúng ta sẽ xem xét một ví dụ về xây dựng một ứng dụng với đa phương tiện loại 1. Tạo một dự án mới (Tệp | Dự án mới). Đặt TMediaPlayer vào biểu mẫu; đặt các thành phần (trang WIN 3.1) TFileListBox, TDirectoryListBox, TDriveComboBox, TFilterComboBox để chọn tệp. Trong thuộc tính FileList cho DirectoryListBox1 và FilterComboBox1, hãy đặt FileListBox1. Đặt thuộc tính DirList cho DriveComboBox1 thành DirectoryListBox1. Trong thuộc tính Bộ lọc cho FilterComboBox1, chỉ định phần mở rộng tệp được yêu cầu:

Tệp AVI (*.avi) | *.avi

Tệp WAVE (*.wav) | *.wav

Tệp MIDI (*.MID) | *.mid

Giả sử chúng ta muốn nhấp đúp vào thành phần FileListBox1 để phát tệp đã chọn. Sau đó, trong trình xử lý sự kiện OnDblClick cho FileListBox1, bạn nên viết:

Quy trình TForm1.FileListBox1DblClick(Người gửi:TObject);

với MediaPlayer1 thì làm

Sự xuất hiện của biểu mẫu được hiển thị trong Hình 4.

Hình 4. Phối cảnh ban đầu của dự án

Lưu dự án, chạy nó, chọn tệp mong muốn và nhấp đúp vào nó. MediaPlayer sẽ phát tệp này trong một cửa sổ riêng.

Như đã đề cập ở trên, video có thể được phát bên trong một biểu mẫu, chẳng hạn như trong bảng điều khiển. Hãy sửa đổi dự án một chút và thêm TPanel vào đó (xem Hình 5). Đặt thuộc tính Hiển thị cho MediaPlayer1 thành Panel1. Bạn cần xóa chú thích khỏi bảng (Caption) và gán thuộc tính BevelOuter:= bvNone;

Để chuyển từ cửa sổ sang bảng điều khiển trong khi phát lại, hãy đặt TCheckBox trên biểu mẫu và viết vào trình xử lý sự kiện OnClick cho nó:

Bắt đầu_Từ: Longint;



với MediaPlayer1 thì làm

nếu FileName ="" thì Thoát;

Bắt đầu_Từ:= Vị trí;

nếu CheckBox1.Checked thì Display:= Panel1

khác Hiển thị:= NIL;

Vị trí:= Bắt đầu_Từ;

Khởi động dự án và phát video. Bấm vào thành phần CheckBox.

Hình.5. Đã thêm bảng phát lại video

và công tắc cửa sổ/bảng điều khiển

Trong quá trình thực hiện chương trình, bạn có thể cần hiển thị trạng thái hiện tại của đối tượng MediaPlayer và chính video đó (thời gian trôi qua kể từ khi bắt đầu phát lại, thời lượng của video). Đối với điều này, đối tượng TMediaPlayer có các thuộc tính và sự kiện tương ứng: Độ dài, Vị trí, OnNotify, v.v.

Hãy thêm chỉ báo tiến độ (TGauge) vào dự án, chỉ báo này sẽ hiển thị theo tỷ lệ phần trăm thời gian đã trôi qua (xem Hình 6). Bạn có thể sử dụng bộ hẹn giờ để cập nhật chỉ số chỉ báo. Đặt một đối tượng TTimer trên biểu mẫu và đặt nó thành

Khoảng:= 100; (100 mili giây).

Trong trình xử lý sự kiện OnTimer, bạn cần viết:

với MediaPlayer1 thì làm

nếu Tên tệp<>"" sau đó

Khởi chạy dự án, chọn tệp (AVI) và nhấp đúp vào nó. Khi phát video, chỉ báo tiến trình sẽ hiển thị tỷ lệ phần trăm tương ứng với thời gian đã trôi qua (xem Hình 6).

Danh sách DEMOVideo ở bên dưới.

SysUtils, WinTypes, WinProcs, Tin nhắn, Lớp học, Đồ họa, Điều khiển,

Biểu mẫu, Hộp thoại, ExtCtrls, Đồng hồ đo, FileCtrl, StdCtrls, MPlayer;

TForm1 = lớp(TForm)

MediaPlayer1: TMediaPlayer;

CheckBox1: TCheckBox;

FileListBox1: TFileListBox;

DirectoryListBox1: TDirectoryListBox;

DriveComboBox1: TDriveComboBox;

FilterComboBox1: TFilterComboBox;

Nút1: Nút;

thủ tục FileListBox1DblClick(Người gửi: TObject);

thủ tục Hẹn giờ1Timer(Người gửi: TObject);

thủ tục CheckBox1Click(Người gửi: TObject);

thủ tục Button1Click(Người gửi: TObject);

(Khai báo riêng)

(Tuyên bố công khai)

thủ tục TForm1.FileListBox1DblClick(Người gửi: TObject);

với MediaPlayer1 thì làm

Tên tệp:= FileListBox1.FileName;

thủ tục TForm1.Timer1Timer(Người gửi: TObject);

với MediaPlayer1 thì làm

nếu Tên tệp<>"" sau đó

Gauge1.Progress:= Vòng (100*Vị trí/Chiều dài);

thủ tục TForm1.CheckBox1Click(Người gửi: TObject);

Bắt đầu_Từ: Longint;

với MediaPlayer1 thì làm

nếu FileName ="" thì Thoát;

Bắt đầu_Từ:= Vị trí;

nếu CheckBox1.Checked thì

Hiển thị:= Panel1

Vị trí:= Bắt đầu_Từ;

thủ tục TForm1.Button1Click(Người gửi: TObject);

nếu FileListBox1.FileName ="" thì Thoát;

với MediaPlayer1 thì làm

Tên tệp:= FileListBox1.FileName;

Hình.6. Ứng dụng phát lại AVI, WAV hoàn chỉnh

Hiểu được triển vọng của thị trường điện tử ô tô, các nhà sản xuất hệ thống đa phương tiện hiện đại cố gắng sử dụng tất cả các công nghệ mới nhất để tạo ra các mẫu xe mới. Cho đến gần đây, sự hiện diện của hệ thống định vị trong đài được coi là một điều gì đó kỳ quặc và độc quyền. Đối với thị trường hiện tại, chức năng như vậy là cơ bản và sự cạnh tranh đang dần chuyển sang lĩnh vực truyền thông không dây. Ngoài ra, hệ thống đa phương tiện trên ô tô thế hệ mới còn có khả năng phát lại âm thanh và video được cải thiện. Và đó là chưa kể đến khả năng kết nối với nhiều loại thiết bị và phương tiện có thể đóng vai trò là nguồn nội dung.

Thông tin chung về hệ thống đa phương tiện trên ô tô

Mặc dù có sự phát triển về nội dung chức năng và nội dung kỹ thuật, nhưng hình thức và thông số thiết kế của các thiết bị đó vẫn giữ nguyên. Về vấn đề này, những người sáng tạo cố gắng chế tạo thiết bị đơn giản, nhỏ gọn và đáng tin cậy nhất có thể. Thông thường đây là một khối nhỏ được nhúng vào một hốc đặc biệt nằm ở mặt trước. Tất nhiên, không thể phủ nhận rằng hệ thống đa phương tiện trên ô tô có ảnh hưởng đến giá trị thẩm mỹ của nội thất nên việc thiết kế thiết bị có tầm quan trọng đặc biệt. Sự hiện diện của màn hình cảm ứng cũng đã trở thành một thành phần bắt buộc trong các thiết bị hiện đại. Thông qua đó, các chức năng của thiết bị được điều khiển - từ thay đổi đường đi đến chỉ định lộ trình trong bộ điều hướng. Yêu cầu đối với thiết bị điện tử ô tô đặc biệt nghiêm ngặt về mặt công thái học nên phương pháp thiết kế và điều khiển phải được lựa chọn với sự nghiên cứu chi tiết đến từng chi tiết nhỏ nhất.

Khả năng âm thanh

Trong những năm gần đây, hệ thống âm thanh đã bắt đầu chuyển đổi thành thiết bị đa chức năng. Nhưng nhiệm vụ ban đầu của những hệ thống như vậy, như trước đây, là tái tạo âm thanh. Và theo hướng này, các nhà sản xuất đang phát triển sản phẩm của mình không kém phần tích cực. Trong các phiên bản hiện đại tốt nhất, hệ thống loa đa phương tiện là một tổ hợp hoàn chỉnh được trang bị tất cả các khả năng của một trình phát âm thanh và cũng có khả năng hoạt động với nhiều loại thiết bị của bên thứ ba. Theo quy luật, những mẫu như vậy có bộ xử lý âm thanh nên chúng cũng có thể được kết nối với loa siêu trầm. Ngoài ra còn có nhiều tùy chọn với loa tích hợp, nhưng trong mọi trường hợp, những thiết bị như vậy sẽ cho phép bạn tùy chỉnh hình ảnh âm thanh cho phù hợp với mọi sở thích bằng cách sử dụng nhiều thông số.

Về khả năng kết nối, trước hết họ coi đó là tiêu chuẩn. Nếu bạn cần xem video, bạn nên chú ý đến đầu nối HDMI, đây được coi là kênh tốt nhất để phát âm thanh và phim.

Chức năng điều hướng

Mặc dù tùy chọn này từ lâu đã trở nên gần như bắt buộc đối với radio ô tô, nhưng những hệ thống như vậy vẫn được coi là hybrid. Trên thị trường, bạn có thể dễ dàng tìm thấy những thiết bị như vậy bằng dấu 2DIN, biểu thị sự hỗ trợ cho chức năng điều hướng. Với trang bị này, người lái xe có cơ hội vẽ lộ trình bằng kỹ thuật số với bản đồ hiển thị trên màn hình hiển thị. Ngày nay, ngay cả đa phương tiện thuộc phân khúc bình dân cũng cung cấp một bộ công cụ khá hấp dẫn để làm việc với bản đồ. Chúng có thể được xoay, phóng to và thu nhỏ, đánh dấu và tất nhiên, được cập nhật và mở rộng thường xuyên vào cơ sở dữ liệu tuyến đường. Những chủ xe sành điệu nhất nên giới thiệu những chiếc xe hybrid chức năng hơn được trang bị ăng-ten GPS và đầu ghi video. Cấu hình này sẽ loại bỏ nhu cầu mua một thiết bị quay video riêng. Nhưng đó không phải là tất cả. Để tránh những rắc rối khi kiểm tra đường, bạn có thể mua một thiết bị có chứa máy dò radar. Vài trăm mét trước khi đến gần vị trí giới hạn tốc độ, thiết bị này sẽ thông báo cho người lái xe về khu vực này.

Kĩ năng giao tiếp

Cùng với các lựa chọn kết nối truyền thống, các thiết bị đa phương tiện cũng được trang bị nhiều giao diện công nghệ. Trong số đó, đáng chú ý là USB, qua đó bạn có thể kết nối thiết bị âm thanh và video, cũng như kết nối hệ thống với thiết bị di động và máy tính. Ngoài ra, hệ thống đa phương tiện hiện đại trên ô tô có thể cung cấp kết nối không dây với các thiết bị di động và thiết bị điện tử đeo trên người. Một trong những lựa chọn phổ biến nhất trong vấn đề này là kết nối mô-đun Bluetooth để liên lạc với điện thoại. Với kết nối này, người lái xe có thể thực hiện cuộc gọi và gửi SMS bằng hệ thống đa phương tiện mà không cần lấy thiết bị di động ra khỏi túi. Ngoài ra, “răng xanh” cho phép bạn tùy chỉnh phát lại âm thanh từ cùng một điện thoại thông minh. Hầu hết các mẫu máy thế hệ mới cũng có khả năng truy cập Internet.

TV kỹ thuật số

Một chiếc tivi ở bảng điều khiển trung tâm của xe có vẻ lạc lõng nhưng tính năng này sẽ không thừa. Các nhà sản xuất thường trang bị cho những thiết bị như vậy những ăng-ten đặc biệt có giá đỡ từ tính và nhiều tùy chọn. Trên thực tế, về mặt điều khiển, TV kỹ thuật số trên ô tô có thể được so sánh với các bộ thu và bộ điều chỉnh chính thức. Các cài đặt tương tự có hỗ trợ âm thanh vòm, tìm kiếm tự động, bộ chỉnh âm, v.v. Ngoài ra, hệ thống đa phương tiện, tùy theo sửa đổi, có thể hoạt động tích cực với các mạng truyền dẫn cục bộ. Với mục đích này, hệ thống LCN được sử dụng để cải thiện hiệu quả thu tín hiệu và chất lượng phát sóng.

Những gì khác cần xem xét khi lựa chọn?

Trước khi mua bộ phận đứng đầu cho ô tô, bạn nên xác định danh sách các nhiệm vụ mà hệ thống sẽ cần thực hiện. Đặc biệt, bạn nên quyết định nguồn nội dung và thiết bị sẽ cần kết nối với thiết bị. Bạn cũng nên đánh giá nhu cầu về cảm biến GPS, radio, mô-đun Bluetooth và TV kỹ thuật số. Tất nhiên, đây là những lựa chọn hữu ích, nhưng với những thiết bị như vậy, một hệ thống đa phương tiện sẽ đắt hơn nhiều lần so với một hệ thống được thiết kế chỉ để tái tạo âm thanh. Đúng, trong trường hợp thiết bị lai thì ngược lại, chức năng giúp tiết kiệm tiền. Thực tế là các tổ hợp đa chức năng loại bỏ nhu cầu mua một hệ thống định vị và DVR riêng biệt.

Lắp đặt hệ thống đa phương tiện

Việc lắp đặt các thiết bị loại này thường được thực hiện theo sơ đồ tiêu chuẩn. Các nhà sản xuất hoàn thiện thiết bị với các khung đặc biệt cho bảng và thiết bị buộc chặt cho phép bạn dễ dàng tích hợp thiết bị vào các hốc được chuẩn bị cho các mục đích này. Tuy nhiên, nếu bạn dự định lắp một màn hình có nhiều loa thì cấu hình cài đặt có thể không chuẩn. Nếu một hệ thống đa phương tiện tiêu chuẩn được lắp đặt ở bảng điều khiển trung tâm thì thiết bị có màn hình lớn thường được tích hợp vào hốc trần. Nhưng cấu hình này phổ biến hơn khi trang bị cho xe minivan và SUV.

Phần kết luận

Hệ thống đa phương tiện được thiết kế cho ô tô trông giống như các khu phức hợp giải trí và trong một số sửa đổi, giống như rạp hát tại nhà. Tất nhiên, không cần phải nói về những so sánh như vậy về đặc tính và kích thước công suất, nhưng một số “thủ thuật” chức năng từ các hệ thống truyền thống đã chuyển sang lĩnh vực điện tử ô tô từ lâu. Chỉ cần nói rằng hệ thống đa phương tiện hiện đại cho phép bất kỳ người lái xe nào sử dụng các công cụ giao tiếp như Bluetooth, USB và HDMI. Và đó là chưa kể đến hệ thống định vị tích hợp, truyền hình kỹ thuật số và khả năng truy cập Internet. Một điều nữa là chủ xe có thể không cần đổ đầy đậm đà như vậy. Đặc biệt là xem xét giá thành của những thiết bị như vậy, có thể lên tới 50-60 nghìn rúp.

Công cụ tạo ứng dụng đa phương tiện

Ôn tập Đa phương tiện là gì Đa phương tiện ở Delphi Thành phần TMediaPlayer Hai loại chương trình sử dụng đa phương tiện

1. Ôn tập

Delphi giúp việc đưa các đối tượng đa phương tiện như âm thanh, video và âm nhạc vào chương trình trở nên dễ dàng và đơn giản. Phần này thảo luận cách thực hiện việc này bằng cách sử dụng thành phần TMediaPlayer tích hợp sẵn của Delphi. Việc quản lý thành phần này trong chương trình và thu thập thông tin về trạng thái hiện tại sẽ được thảo luận chi tiết.

2. Đa phương tiện là gì

Không có định nghĩa chính xác về nó là gì. Nhưng tại thời điểm này và ở nơi này, có lẽ tốt hơn nên đưa ra một định nghĩa chung nhất có thể và nói rằng “đa phương tiện” là một thuật ngữ áp dụng cho hầu hết các dạng hoạt hình, âm thanh, video được sử dụng trên máy tính.

Đưa ra một định nghĩa chung như vậy, phải nói rằng trong phần này chúng ta đang xử lý một tập hợp con của đa phương tiện, bao gồm:

1. Hiển thị video ở định dạng Video cho Windows (AVI) của Microsoft.

2. Phát âm thanh và nhạc từ các tệp MIDI và WAVE.

Tác vụ này có thể được thực hiện bằng cách sử dụng thư viện động Microsoft Multimedia Extensions dành cho Windows (MMSYSTEM. DLL), các phương thức của thư viện này được gói gọn trong thành phần TMediaPlay nằm trên trang Hệ thống của Bảng Thành phần Delphi.

Việc phát các tập tin media có thể yêu cầu một số phần cứng và phần mềm. Vì vậy, để phát âm thanh bạn cần có card âm thanh.

3. Đa phương tiện ở Delphi

Delphi có thành phần TMediaPlayer cho phép bạn truy cập vào tất cả các tính năng lập trình phương tiện cơ bản. Thành phần này rất dễ sử dụng. Trên thực tế, nó đơn giản đến mức nhiều lập trình viên mới làm quen sẽ thấy việc tạo chương trình đầu tiên phát video hoặc nhạc dễ dàng hơn thay vì hiển thị thông báo "Hello World" cổ điển.

Sự dễ sử dụng có thể được cảm nhận theo hai cách:

Phần này không mô tả chi tiết các lệnh gọi nội bộ tới các chức năng đa phương tiện khi thành phần này đang chạy. Tất cả những gì bạn cần biết là thành phần này có tên là TMediaPlayer và nó cung cấp quyền truy cập vào một tập hợp các quy trình do Microsoft tạo ra có tên là Giao diện điều khiển phương tiện (MCI). Những thói quen này giúp người lập trình dễ dàng truy cập vào nhiều loại thiết bị đa phương tiện. Trên thực tế, làm việc với TMediaPlayer rất trực quan và rõ ràng.

4. Thành phần TMediaPlayer

Đầu tiên, hãy tạo một dự án mới, sau đó đặt thành phần TMediaPlayer (trang System Palette) vào biểu mẫu, như trong Hình 1.

Hình 1: Thành phần TMediaPlayer trên biểu mẫu.

Thành phần TMediaPlayer được thiết kế giống như bảng điều khiển thiết bị có các nút bấm. Giống như trên máy ghi âm, có các nút “phát”, “tua lại”, “ghi”, v.v.

Sau khi đặt thành phần trên biểu mẫu, bạn sẽ thấy Trình kiểm tra đối tượng chứa thuộc tính "Tên tệp" (xem Hình 2). Bấm hai lần

DIV_ADBLOCK63">

Hình 3: Phát AVI trên bảng điều khiển.

5. Hai loại chương trình đa phương tiện

Đôi khi bạn cần cung cấp cho người dùng một cách dễ dàng để phát nhiều loại tệp nhất có thể. Điều này có nghĩa là bạn sẽ cần cấp cho người dùng quyền truy cập vào ổ cứng hoặc CD-ROM, sau đó cho phép họ chọn và phát tệp thích hợp. Trong trường hợp này, biểu mẫu thường chứa TMediaPlayer, cung cấp khả năng kiểm soát phát lại.

Đôi khi một lập trình viên có thể muốn ẩn sự tồn tại của thành phần TMediaPlayer với người dùng. Tức là phát âm thanh hoặc video mà người dùng không cần quan tâm đến nguồn của nó. Đặc biệt, âm thanh có thể là một phần của bài thuyết trình. Ví dụ: hiển thị biểu đồ trên màn hình có thể kèm theo lời giải thích được ghi trong tệp WAV. Trong quá trình thuyết trình, người dùng thậm chí không biết về sự tồn tại của TMediaPlayer. Nó hoạt động ở chế độ nền. Để thực hiện việc này, thành phần này được ẩn đi (Hiển thị = Sai) và được điều khiển theo chương trình.

6. Chương trình ví dụ với đa phương tiện

Trong phần này chúng ta sẽ xem xét một ví dụ về xây dựng một ứng dụng với đa phương tiện thuộc loại đầu tiên. Tạo một dự án mới (Tệp | Dự án mới). Đặt TMediaPlayer vào biểu mẫu; đặt một thành phần OpenDialog1 của lớp TOpenDialog để chọn một tệp. Trong thuộc tính Filter cho nó, chỉ định phần mở rộng tệp được yêu cầu:

Tệp AVI(*.avi)|*.avi

Tệp WAVE(*.wav)|*.wav

Tệp MIDI(*.MID)|*.mid

Đặt nút Button1 của lớp TButton trên biểu mẫu. Để hộp thoại OpenDialog1 được gọi khi nhấn nút này và tệp đã chọn sẽ được phát.
Tạo trình xử lý sự kiện OnClick cho Button1:

Quy trình TForm1.Button1Click(Người gửi:TObject);

với OpenDialog1 làm

nếu Thực thi thì bắt đầu

MediaPlayer1. Tên tệp:=Tên tệp;

MediaPlayer1.Open;

MediaPlayer1.Play;

Sự xuất hiện của biểu mẫu được hiển thị trong Hình 4

Hình 4: Phối cảnh ban đầu của dự án

Lưu dự án, chạy nó, chọn tệp mong muốn và nhấp đúp vào nó. MediaPlayer sẽ phát tệp này trong một cửa sổ riêng.

Như đã đề cập ở trên, video có thể được phát bên trong một biểu mẫu, chẳng hạn như trong bảng điều khiển. Hãy sửa đổi dự án một chút và thêm TPanel vào đó (xem Hình 5). Trong thuộc tính Hiển thị cho MediaPlayer1, chỉ định Panel1. Cần phải xóa dòng chữ khỏi bảng (Chú thích)

và thuộc tính BevelOuter = bvNone. Để chuyển từ cửa sổ sang bảng điều khiển trong khi phát lại, hãy đặt TCheckBox trên biểu mẫu và viết vào trình xử lý sự kiện OnClick cho nó:

thủ tục TForm1.CheckBox1Click(Người gửi: TObject);

Bắt đầu_Từ: Longint;

với MediaPlayer1 hãy bắt đầu

nếu FileName="" thì Thoát;

Start_From:=Vị trí;

Panel1.Refresh;

nếu CheckBox1.Checked thì

Vị trí:=Bắt đầu_Từ;

Khởi động dự án và phát video. Nhấp vào Hộp kiểm.

Trong quá trình thực hiện chương trình, bạn có thể cần hiển thị trạng thái hiện tại của đối tượng MediaPlayer và chính video đó (thời gian trôi qua kể từ khi bắt đầu phát lại, thời lượng của video). Đối với điều này, đối tượng TMediaPlayer có các thuộc tính và sự kiện tương ứng: Độ dài, Vị trí, OnNotify, v.v. Hãy thêm chỉ báo tiến trình (TGauge) vào dự án, chỉ báo này sẽ hiển thị theo phần trăm thời gian đã trôi qua (xem Hình 6). Bạn có thể sử dụng bộ hẹn giờ để cập nhật chỉ số chỉ báo. Đặt đối tượng TTimer trên biểu mẫu, đặt Khoảng thời gian = mili giây). Trong trình xử lý sự kiện OnTimer, bạn cần viết:

thủ tục TForm1.Timer1Timer(Người gửi: TObject);

với MediaPlayer1 thì làm

nếu Tên tệp<>"" sau đó

Gauge1.Progress:=Vòng(100*Vị trí/Chiều dài);

Khởi chạy dự án, chọn tệp (AVI) và nhấp đúp vào nó. Khi phát video, chỉ báo tiến trình sẽ hiển thị tỷ lệ phần trăm tương ứng với thời gian đã trôi qua (xem Hình 6).

Đa phương tiện là gì

Đa phương tiện ở Delphi

Thành phần TMediaPlayer

Hai loại chương trình sử dụng đa phương tiện

Chương trình ví dụ với đa phương tiện

Ôn tập

  1. Delphi giúp việc đưa các đối tượng đa phương tiện như âm thanh, video và âm nhạc vào chương trình trở nên dễ dàng và đơn giản. Hướng dẫn này thảo luận cách thực hiện việc này bằng cách sử dụng thành phần TMediaPlayer tích hợp sẵn của Delphi. Việc quản lý thành phần này trong chương trình và thu thập thông tin về trạng thái hiện tại sẽ được thảo luận chi tiết.
  2. Đa phương tiện là gì
  3. Không có định nghĩa chính xác về nó là gì. Nhưng tại thời điểm này và ở nơi này, có lẽ tốt hơn nên đưa ra một định nghĩa chung nhất có thể và nói rằng “đa phương tiện” là một thuật ngữ áp dụng cho hầu hết các dạng hoạt hình, âm thanh, video được sử dụng trên máy tính.

Để đưa ra một định nghĩa chung như vậy, phải nói rằng trong bài học này chúng ta đang xử lý một tập hợp con của đa phương tiện, bao gồm:

1. Hiển thị video ở định dạng Video cho Windows (AVI) của Microsoft.

2. Phát âm thanh và nhạc từ các tệp MIDI và WAVE.

Tác vụ này có thể được thực hiện bằng cách sử dụng thư viện động Microsoft Multimedia Extensions dành cho Windows (MMSYSTEM.DLL), các phương thức của thư viện này được gói gọn trong thành phần TMediaPlay nằm trên trang Hệ thống của Bảng Thành phần Delphi.

Việc phát các tập tin media có thể yêu cầu một số phần cứng và phần mềm. Vì vậy, để phát âm thanh bạn cần có card âm thanh. Để phát AVI trên Windows 3.1 (hoặc WFW), bạn phải cài đặt phần mềm Microsoft Video.

  1. Đa phương tiện ở Delphi
  2. Delphi có thành phần TMediaPlayer cho phép bạn truy cập vào tất cả các tính năng lập trình phương tiện cơ bản. Thành phần này rất dễ sử dụng. Trên thực tế, nó đơn giản đến mức nhiều lập trình viên mới làm quen sẽ thấy việc tạo chương trình đầu tiên phát video hoặc nhạc dễ dàng hơn thay vì hiển thị thông báo "Hello World" cổ điển.

Sự dễ sử dụng có thể được cảm nhận theo hai cách:

 Một mặt, điều này giúp mọi người có thể tạo ra các ứng dụng đa phương tiện.

 Mặt khác, bạn có thể thấy rằng không phải tất cả các tính năng đều được triển khai trong thành phần. Nếu muốn sử dụng các hàm cấp thấp, bạn sẽ phải tìm hiểu khá sâu bằng ngôn ngữ Delphi.

Bài học này không mô tả chi tiết các lệnh gọi nội bộ đến các chức năng đa phương tiện khi thành phần này đang chạy. Tất cả những gì bạn cần biết là thành phần này có tên là TMediaPlayer và nó cung cấp quyền truy cập vào một tập hợp các quy trình do Microsoft tạo ra có tên là Giao diện điều khiển phương tiện (MCI). Những thói quen này giúp người lập trình dễ dàng truy cập vào nhiều loại thiết bị đa phương tiện. Trên thực tế, làm việc với TMediaPlayer rất trực quan và rõ ràng.

  1. Thành phần TMediaPlayer

Đầu tiên, hãy tạo một dự án mới, sau đó đặt thành phần TMediaPlayer (trang System Palette) vào biểu mẫu, như trong Hình 1.

Hình 1: Thành phần TMediaPlayer trên biểu mẫu.

Thành phần TMediaPlayer được thiết kế giống như bảng điều khiển thiết bị có các nút bấm. Giống như trên máy ghi âm, có các nút “phát”, “tua lại”, “ghi”, v.v.

Sau khi đặt thành phần trên biểu mẫu, bạn sẽ thấy Trình kiểm tra đối tượng chứa thuộc tính "Tên tệp" (xem Hình 2). Bấm hai lần

Hình 2: Thuộc tính TMediaPlayer trong Trình kiểm tra đối tượng

trên thuộc tính này và chọn tên tệp có phần mở rộng AVI, WAV hoặc

M.I.D. Trong Hình 2, tệp AVI DELPHI.AVI được chọn. Tiếp theo bạn cần đặt thuộc tính AutoOpen thành True.

Sau khi hoàn thành các bước này, chương trình đã sẵn sàng để chạy. Sau khi khởi chạy chương trình, hãy nhấp vào nút “phát” màu xanh lá cây (ngoài cùng bên trái) và bạn sẽ thấy một video (nếu bạn chọn AVI) hoặc nghe thấy âm thanh (nếu bạn chọn WAV hoặc MID). Nếu điều này không xảy ra hoặc thông báo lỗi xuất hiện thì có thể có hai tùy chọn:

  1. Bạn đã nhập tên tệp không chính xác.
  2. Bạn chưa cấu hình đúng đa phương tiện trong Windows. Điều này có nghĩa là bạn không có phần cứng thích hợp hoặc trình điều khiển cần thiết chưa được cài đặt. Việc cài đặt và cấu hình trình điều khiển được thực hiện trong Bảng điều khiển; các yêu cầu phần cứng được đưa ra trong bất kỳ cuốn sách nào về đa phương tiện (ví dụ: bạn cần có card âm thanh tương thích với Sound Blaster).

Vì vậy, bạn có cơ hội phát các tệp AVI, MIDI và WAVE chỉ bằng cách chỉ định tên tệp.

Một thuộc tính quan trọng khác của thành phần TMediaPlayer là Display. Ban đầu, nó không được lấp đầy và video được phát trong một cửa sổ riêng. Tuy nhiên, bạn có thể sử dụng một bảng điều khiển làm màn hình để hiển thị video chẳng hạn. Bạn cần đặt thành phần TPanel trên biểu mẫu và xóa văn bản khỏi thuộc tính Caption. Tiếp theo, đối với TMediaPlayer, trong thuộc tính Display chọn Panel1 từ danh sách. Sau đó, bạn cần khởi chạy chương trình và nhấp vào nút “phát” (xem Hình 3)

Hình 3: Phát AVI trên bảng điều khiển.

      1. Hai loại chương trình đa phương tiện
      2.  Đôi khi bạn cần cung cấp cho người dùng một cách dễ dàng để phát nhiều loại tệp nhất có thể. Điều này có nghĩa là bạn sẽ cần cấp cho người dùng quyền truy cập vào ổ cứng hoặc CD-ROM, sau đó cho phép họ chọn và phát tệp thích hợp. Trong trường hợp này, biểu mẫu thường chứa TMediaPlayer, cung cấp khả năng kiểm soát phát lại.

 Đôi khi một lập trình viên có thể muốn giấu sự tồn tại của thành phần TMediaPlayer với người dùng. Tức là phát âm thanh hoặc video mà người dùng không cần quan tâm đến nguồn của nó. Đặc biệt, âm thanh có thể là một phần của bài thuyết trình. Ví dụ: hiển thị biểu đồ trên màn hình có thể kèm theo lời giải thích được ghi trong tệp WAV. Trong quá trình thuyết trình, người dùng thậm chí không biết về sự tồn tại của TMediaPlayer. Nó hoạt động ở chế độ nền. Để thực hiện việc này, thành phần này được ẩn đi (Hiển thị = Sai) và được điều khiển theo chương trình.

      Chương trình ví dụ với đa phương tiện

Trong chương này, chúng ta sẽ xem xét một ví dụ về xây dựng một ứng dụng với đa phương tiện loại 1. Tạo một dự án mới (Tệp | Dự án mới). Đặt TMediaPlayer vào biểu mẫu; đặt các thành phần TFileListBox, TDirectoryListBox, TDriveComboBox, TFilterComboBox để chọn file. Trong thuộc tính FileList cho DirectoryListBox1 và FilterComboBox1, hãy đặt FileListBox1. Trong thuộc tính DirList của DriveComboBox1, đặt DirectoryListBox1. Trong thuộc tính Bộ lọc cho FilterComboBox1, chỉ định phần mở rộng tệp được yêu cầu:

Tệp AVI(*.avi)|*.avi

Tệp WAVE(*.wav)|*.wav

Tệp MIDI(*.MID)|*.mid

Để tệp đã chọn được phát bằng cách nhấp đúp chuột vào FileListBox1. Trong trình xử lý sự kiện OnDblClick cho FileListBox1, hãy chỉ định

Quy trình TForm1.FileListBox1DblClick(Người gửi:TObject);

với MediaPlayer1 thì làm

Tên tệp:=FileListBox1.FileName;

Sự xuất hiện của biểu mẫu được hiển thị trong Hình 4

Hình 4: Phối cảnh ban đầu của dự án

Lưu dự án, chạy nó, chọn tệp mong muốn và nhấp đúp vào nó. MediaPlayer sẽ phát tệp này trong một cửa sổ riêng.

Như đã đề cập ở trên, video có thể được phát bên trong một biểu mẫu, chẳng hạn như trong bảng điều khiển. Hãy sửa đổi dự án một chút và thêm TPanel vào đó (xem Hình 5). Trong thuộc tính Hiển thị cho MediaPlayer1, chỉ định Panel1. Cần phải xóa dòng chữ khỏi bảng (Chú thích)

và thuộc tính BevelOuter = bvNone. Để chuyển từ cửa sổ sang bảng điều khiển trong khi phát lại, hãy đặt TCheckBox trên biểu mẫu và viết vào trình xử lý sự kiện OnClick cho nó:

thủ tục TForm1.CheckBox1Click(Người gửi: TObject);

Bắt đầu_Từ: Longint;

với MediaPlayer1 hãy bắt đầu

nếu FileName="" thì Thoát;

Start_From:=Vị trí;

nếu CheckBox1.Checked thì

Vị trí:=Bắt đầu_Từ;

Khởi động dự án và phát video. Nhấp vào Hộp kiểm.


  Hình 5: Đã thêm bảng điều khiển để phát lại video và chuyển đổi cửa sổ/bảng điều khiển.

Trong quá trình thực hiện chương trình, bạn có thể cần hiển thị trạng thái hiện tại của đối tượng MediaPlayer và chính video đó (thời gian trôi qua kể từ khi bắt đầu phát lại, thời lượng của video). Đối với điều này, đối tượng TMediaPlayer có các thuộc tính và sự kiện tương ứng: Độ dài, Vị trí, OnNotify, v.v. Hãy thêm chỉ báo tiến trình (TGauge) vào dự án, chỉ báo này sẽ hiển thị theo phần trăm thời gian đã trôi qua (xem Hình 6). Bạn có thể sử dụng bộ hẹn giờ để cập nhật chỉ số chỉ báo. Đặt một đối tượng TTimer trên biểu mẫu, đặt Khoảng thời gian của nó = 100 (100 mili giây). Trong trình xử lý sự kiện OnTimer, bạn cần viết:

thủ tục TForm1.Timer1Timer(Người gửi: TObject);

với MediaPlayer1 thì làm

nếu Tên tệp<>"" sau đó

Gauge1.Progress:=Vòng(100*Vị trí/Chiều dài);

Khởi chạy dự án, chọn tệp (AVI) và nhấp đúp vào nó. Khi phát video, chỉ báo tiến trình sẽ hiển thị tỷ lệ phần trăm tương ứng với thời gian đã trôi qua (xem Hình 6).


  Hình 6: Ứng dụng hoàn chỉnh để phát các tập tin AVI, WAV và MDI.