|
|
Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
|
Опции темы | Поиск в этой теме | Опции просмотра |
#1
|
|||
|
|||
Видео (либо картинка) с сетевых WEB камер
Кто нить работал с сетевыми web камерами? Как получить видео поток или картинку с сетевой камеры? Видео, конечно можно получить и в браузере, но тогда вопрос, как вытащить его из браузера. Как снять хотя бы картинку с того места браузера, где производится вывод видео, и даже в том случае, когда браузер свернут? Это реально сделать?
|
#2
|
||||
|
||||
на форме TButton, TImage, TIdHTTP, TProgressBar. обработчик OnClick для кнопки. события TIdHTTP: OnWorkBegin, OnWork, OnWorkEnd.
Код:
unit Unit1; interface uses jpeg, Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, IdBaseComponent, IdComponent, IdTCPConnection, IdTCPClient, IdHTTP, StdCtrls, ExtCtrls, ComCtrls; type TForm1 = class(TForm) IdHTTP1: TIdHTTP; Image1: TImage; Button1: TButton; ProgressBar1: TProgressBar; procedure Button1Click(Sender: TObject); procedure IdHTTP1WorkBegin(Sender: TObject; AWorkMode: TWorkMode; const AWorkCountMax: Integer); procedure IdHTTP1Work(Sender: TObject; AWorkMode: TWorkMode; const AWorkCount: Integer); procedure IdHTTP1WorkEnd(Sender: TObject; AWorkMode: TWorkMode); private { Private declarations } public { Public declarations } end; var Form1: TForm1; implementation {$R *.dfm} procedure TForm1.Button1Click(Sender: TObject); var memorystream: TMemoryStream; jpeg: TJPEGImage; begin memorystream:=TMemoryStream.Create; jpeg:=TJPEGImage.Create; try IdHTTP1.Get('http://www.ionitcom.ru/images/cam_static_pl_len.jpg', memorystream); memorystream.Position:=0; jpeg.LoadFromStream(memorystream); Image1.Picture.Assign(jpeg); finally jpeg.Free; memorystream.Free; end; end; procedure TForm1.IdHTTP1WorkBegin(Sender: TObject; AWorkMode: TWorkMode; const AWorkCountMax: Integer); begin ProgressBar1.Position:=0; ProgressBar1.Max:=AWorkCountMax; ProgressBar1.Visible:=True; Application.ProcessMessages; end; procedure TForm1.IdHTTP1Work(Sender: TObject; AWorkMode: TWorkMode; const AWorkCount: Integer); begin ProgressBar1.Position:=AWorkCount; Application.ProcessMessages; end; procedure TForm1.IdHTTP1WorkEnd(Sender: TObject; AWorkMode: TWorkMode); begin ProgressBar1.Visible:=False; Application.ProcessMessages; end; end. Пишу программы за еду. __________________ |
#3
|
|||
|
|||
Спасибо за ответ, но это не совсем то. Картинку с сайта я получил. Но в Web камере нет JPG-ов.
|
#4
|
|||
|
|||
NumLock, Спасибо за пример. Наконец разобрался, с картинками все работает отлично. А с видео потоком не поможешь?
У меня используются камеры Trendnet и поэтому к ним доступ такой: картинка- /cgi/jpg/image.cgi видеопоток - /cgi/mjpg/mjpg.cgi. Буду очень благодарен за помощь. |