Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Delphi: Звук, графика и видео > Как сделать снимок с веб-камеры с помощью дельфи?


Автор: ZLOvar 10.1.2010, 19:48
Всем привет. У меня очень необычный вопрос. Как сделать снимок с веб-камеры, когда она включена?
Допустим я включил камеру, запустил делфи-проект, и теперь, при движении курсора (MouseMove), у меня камера делает снимок. У кого какие идеи? smile 
Всем заранее огромное "Мучас Грасиас!". smile 

Автор: Rrader 10.1.2010, 20:04
Идешь http://forum.vingrad.ru/forum/topic-255379/kw-wia/hl/wia/index.html, где приведен список интерфейсов WIA с небольшим примерчиком.

Там увидишь метод http://msdn.microsoft.com/en-us/library/ms630300(VS.85).aspx. Попробуй разобраться с ним самостоятельно.

Автор: ZLOvar 10.1.2010, 20:16
Rrader, 
Нет, немного непонял. Как мне определить устройство?(в данном случае веб-камера)

Автор: ZLOvar 10.1.2010, 20:41
Так ,вроде разобрался. Только мне непонятно, в какой переменной "хранится" веб-камера? 
Вот:
Код

 procedure TForm1.Button1Click(Sender: TObject);
const
  CLASS_Wia: TGUID = '{4EC4272E-2E6F-4EEB-91D0-EBC4D58E8DEE}';
  IID_IWia: TGUID = '{B10BA1BC-3713-4EC0-8EEA-690EBD2CED8A}';
  FmtStr = 'Тип устройства: %s' + sLineBreak +
    'Название устройства: %s' + sLineBreak +
    'Производитель: %s' + sLineBreak +
    'Порт: %s';
var
  Wia: IWia;
  Devs: ICollection;
  I: Integer;
  Device: OleVariant;
  S: String;
begin
  if Succeeded(CoInitialize(nil)) then
  try
    Wia := CreateComObject(CLASS_Wia) as IWia;
    Devs := Wia.Devices;
    for I := 0 to Devs.Length - 1 do
      with (Devs.Item[I] as IWiaDeviceInfo) do
      begin
        ShowMessage(Format(FmtStr, [type_, Name, Manufacturer, Port]));
        Device := Devs.Item[I];
        S := Wia.Create(Device).ItemType;
        ShowMessage('Флаги: ' + S);
        Device := Unassigned;
      end;
  finally
    CoUninitialize;
  end;
end;



Автор: Bitter 15.1.2010, 09:47
Для работы с видеокамерами есть компоненты DSPack и TVideoGrabber

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)