Главная страница
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.02 c
15-1189171614
Gadenysh
2007-09-07 17:26
2007.10.07
Почему все неприятности у клиентов случаются


15-1188596759
Vlad Oshin
2007-09-01 01:45
2007.10.07
Зачем все раскручивают сайты? просто наваждение по всей сети..


3-1180946593
interest
2007-06-04 12:43
2007.10.07
создание таблицы из выборки (mysql)


15-1188941829
Германн
2007-09-05 01:37
2007.10.07
Скорость анимации. Глупый, но интересный для меня вопрос.


2-1189658154
Sflatt
2007-09-13 08:35
2007.10.07
Возможные проблемы при сворачивании в трей.