Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2007.10.07;
Скачать: CL | DM;

Вниз

Управление платой видеозахвата   Найти похожие ветки 

 
joseph   (2006-12-27 11:19) [0]

Здравствуйте, уважаемые коллеги.

Прошу помочь новичку в области видеозахвата.

Для одного приложения, которое я пишу, требуется вывод на экран, а затем запись в файл одним блоком одного кадра  изображений с четырех видеокамер.

Есть четырехвходовая плата на чипе Bt878. Для видеозахвата я использую DSPack (аналог примера PlayVideoCap из дистрибутива).

Переключение входов пытаюсь делать с помощью метода Route интерфейса IAMCrossBar.

procedure TVideoForm.SampleGrabberBuffer(sender: TObject;
 SampleTime: Double; pBuffer: Pointer; BufferLen: Integer);
var
 Image: TImage;

begin
 case DeviceNo of
   0: Image := Image1;
   1: Image := Image2;
   2: Image := Image3;
   3: Image := Image4;
 end;

 Image.Canvas.Lock;
 try
   SampleGrabber.GetBitmap(Image.Picture.Bitmap, pBuffer, BufferLen);
 finally
   Image.Canvas.Unlock;
 end;

 Inc(DeviceNo); if DeviceNo > 3 then DeviceNo := 0;

 amcbTest.Route(0, DeviceNo);
end;

Каналы действительно выводятся каждый в свой Image, но выглядят как кадры телевизора
с неисправной кадровой синхронизацией: то посредине кадра какая-то полоса, то часть
изображения одного канала попадает в окно другого и т.п.

Наверное событие OnBuffer надо как-то синхронизовать с переключением? Или я вообще иду по неверному пути?

Помогите, пожалуйста разобраться с происходящим!

Заранее благодарен,

                                  Иосиф Рисенберг


 
medved_68 ©   (2006-12-28 09:40) [1]


> Каналы действительно выводятся каждый в свой Image, но выглядят
> как кадры телевизора
> с неисправной кадровой синхронизацией: то посредине кадра
> какая-то полоса, то часть
> изображения одного канала попадает в окно другого и т.п.
>

joseph после переключения входа на другой канал необходимо для "устаканивания" изображения перед захватом кадра сделать паузу примерно 280 мс. Или же пропустить два кадра и захватить в Имадже 3. :)))


 
Sapersky   (2006-12-28 12:34) [2]

Если есть возможность - лучше синхронизировать камеры (общий FPS будет выше). См. в инструкции словосочетания line-lock (от сети) и gen-lock (друг от друга).


 
joseph   (2006-12-29 00:33) [3]

Большое спасибо, коллеги!

Оказалось достаточным просто пропустить один кадр. С синхронизацией камер обязательно попробую.



Страницы: 1 вся ветка

Текущий архив: 2007.10.07;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.018 c
2-1188800107
Андрей Пл
2007-09-03 10:15
2007.10.07
Изменение определенной строки в txt файле.


3-1180629087
GanibalLector
2007-05-31 20:31
2007.10.07
запрос к разным базам


15-1188901380
SerJaNT
2007-09-04 14:23
2007.10.07
Подскажите программу


2-1189425402
ссссс
2007-09-10 15:56
2007.10.07
чтото не так


2-1189438763
Jimmy
2007-09-10 19:39
2007.10.07
Собственная иконка своего компонента