Учимся работать с Web камерой в Delphi.
На этом уроке мы научимся грабить отдельные кадры изображения с камеры. сжимать их и записывать их в файл, а затем отправлять полученное изображение по FTP протоколу на хостинг для сайта. Другими словами мы создадим простейшую программу для трансляции изображений с Web камеры на страницу сайта с использованием DirectShow.
Создадим новое приложение вDelphi.
Затем добавим и расположим компоненты на форму как показано на рисунке:
Слева вверху расположена Panel1 для вывода изображения с камеры. Справа располагается Panel2 с размещенным на ней компонентом TImage свойствоProportional у Image1 устанавливаем True. в нем будем показывать с грабленое изображение. Под Panel1 размещаем компонент TListBox и кнопку TButton («Параметры и разрешение камеры» ). Справа от ListBox1 размещаем восемь компонентов TLabel и семь компонентовTEdit. И девятый компонент Label9 с надписью Caption (Трансляция изображения остановлена ) размещаем под панелями. Добавляем компонент TTimer свойство Enable устанавливаем False. На этом интерфейс приложения закончен.
В целом граф захвата изображения с камеры, строится также как и в предыдущем уроке. Для получения кадра из потока данных Web камеры мы будем использовать интерфейсы IBaseFilter и ISampleGrabber. Передавать данные по FTP будем с помощью модуля WinInet. а для сохранения настроек FTP воспользуемся модулем IniFiles .
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, ExtCtrls, directshow9, ActiveX, Jpeg, WinInet, IniFiles; //не забудьте добавить выделенные модули
// Скачать заголовочные файлы DirectShow можно здесь .