Засоби створення мультимедійних додатків

Що таке мультимедіа

Мультимедіа в Delphi

Два види програм, що використовують мультимедіа

Приклад програми з мультимедіа

Даючи таке загальне визначення, слід зазначити, що в даному уроці ми маємо справу з підмножиною мультимедіа, яке включає:

2. Відтворення звуків і музики з MIDI і WAVE файлів.

Дану задачу можна виконати за допомогою динамічної бібліотеки Microsoft Multimedia Extensions для Windows (MMSYSTEM.DLL), методи якій вміщені в компоненті TMediaPlay, що знаходиться на сторінку System Палітри Компонент Delphi.

Для програвання файлів мультимедіа може знадобитися наявність деякого обладнання та програмного забезпечення. Так для відтворення звуків потрібна звукова карта. Для відтворення AVI в Windows 3.1 (або WFW) потрібно установити ПО Microsoft Video.

Простоту використання можна сприймати двояко:

# 61623; З одного боку - це дає можливість будь-якому створювати мультимедіа програми.

# 61623; З іншого боку, можна виявити, що в компоненті реалізовані не всі можливості. Якщо Ви захочете використовувати низькорівневі функції, доведеться копатися досить глибоко, використовуючи мову Delphi.

В даному уроці нічого не описуються подробиці внутрішніх викликів мультимедійних функцій при роботі компонента. Все що потрібно знати - це те, що компонент називається TMediaPlayer, і що він дає доступ до набору підпрограм, створених Microsoft і званих Media Control Interface (MCI). Ці підпрограми дають програмісту простий доступ до широкого кола пристроїв мультимедіа. Власне робота з TMediaPlayer інтуїтивно зрозуміла і очевидна.

Для початку давайте створимо новий проект, потім помістимо компонент TMediaPlayer (стор. System Палітри) на форму, як показано на рис.1.

Рис.1: Компонент TMediaPlayer на формі.

Компонент TMediaPlayer оформлений, як панель управління пристроєм з кнопками. Як і на магнітофоні, тут є кнопки "відтворення", "перемотування", "запис« і ін.

Помістивши компонент на форму, Ви побачите, що Інспектор Об'єктів містить властивість "FileName" (див. Рис.2). клацніть двічі

Засоби створення мультимедійних додатків

Рис.2: Властивості TMediaPlayer в Інспектора Об'єктів

на цій властивості і виберіть ім'я файлу з розширенням AVI, WAV або

MID. На рис.2 обраний AVI файл DELPHI.AVI. Далі потрібно встановити властивість AutoOpen в True.

  1. Ви ввели неправильне ім'я файлу.
  2. Ви не налаштували правильним чином мультимедіа в Windows. Це означає, що або у Вас немає відповідного "заліза", або не встановлені потрібні драйвери. Установка і налаштування драйверів виробляється в Control Panel, вимоги до "заліза" наводяться в будь-який книзі по мультимедіа (потрібна звукова карта, наприклад сумісна з Sound Blaster).

Отже, Ви маєте можливість програвати AVI, MIDI і WAVE файли просто вказуючи ім'я файлу.

Засоби створення мультимедійних додатків

Рис.3: Відтворення AVI на панелі.

      1. Два види програм мультимедіа
      2. # 61623; Іноді доводиться надавати користувачам простий шлях для програвання максимально широкого кола файлів. Це означає, що Вам потрібно буде дати користувачеві доступ до жорсткого диска або CD-ROM, і потім дозволити йому вибрати і відтворити відповідний файл. У цьому випадку на формі зазвичай розташовується TMediaPlayer, що надає можливість управління відтворенням.
      Приклад програми з мультимедіа

У цьому розділі ми розглянемо приклад побудови програми з мультимедіа першого типу. Створіть новий проект (File | New Project). Помістіть TMediaPlayer на форму; помістіть компоненти TFileListBox, TDirectoryListBox, TDriveComboBox, TFilterComboBox для вибору файлу. У властивості FileList для DirectoryListBox1 і FilterComboBox1 поставте FileListBox1. У св-ве DirList для DriveComboBox1 поставте DirectoryListBox1. У св-ве Filter для FilterComboBox1 вкажіть необхідні розширення файлів:

Нехай за подвійним клацанням мишкою в FileListBox1 обраний файл буде відтворюватися. У обробнику події OnDblClick для FileListBox1 вкажіть

with MediaPlayer1 do

Засоби створення мультимедійних додатків

Під час виконання програми може знадобитися відобразити поточний стан об'єкта MediaPlayer і самого ролика (час, що минув з початку відтворення, довжину ролика). Для цього в об'єкта TMediaPlayer є відповідні властивості і події: Length, Position, OnNotify і ін. Давайте додамо в проект прогрес-індикатор (TGauge), який відобразить у відсотках, скільки пройшло часу (див. Рис.6). Для оновлення показань індикатора можна скористатися таймером. Помістіть на форму об'єкт TTimer, встановіть для нього Interval = 100 (100 мілісекунд). У обробнику події OnTimer потрібно записати:

procedure TForm1.Timer1Timer (Sender: TObject);

with MediaPlayer1 do

if FileName<>'' Then

Запустіть проект, виберіть файл (AVI) і клацніть на ньому два рази мишкою. При відтворенні ролика прогрес-індикатор повинен відображати відсоток, відповідний пройшов часу (див. Рис.6).

Засоби створення мультимедійних додатків

# 61623; # 61623; Рис.6: Закінчений додаток для відтворення AVI, WAV і MDI файлів.