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

Вниз

Как сделать в реалтайме обработку видео(DSPack)?   Найти похожие ветки 

 
Dufe   (2004-11-29 13:49) [0]

Необходимо сделать обработку в реальном времени видефайла и вывод на экран результата. Я делаю это с помощью DSPack"a.
procedure TForm1.SampleGrabberBuffer(sender: TObject; SampleTime: Double;pBuffer: Pointer; BufferLen: Integer);
begin
 Bit.Canvas.Lock;
 try
   if SampleGrabber.GetBitmap(Bit,pBuffer, BufferLen) then
   begin
    ColorTransform(Bit);
   end;
 finally
   Bit.Canvas.Unlock;
   Image2.Canvas.Lock;
   Image2.Canvas.StretchDraw(rec,Bit);
   Image2.Canvas.Unlock;
 end;
end;
При перезагрузке процессора возникает ошибка."Canvas does not allow drawing" . Остановка происходит в разных местах!
Как сделать, чтобы если не успевают проделаться все процедуры не брался следующий кадр? Или это что-то другое?


 
programania ©   (2004-11-29 21:16) [1]

>Как сделать, чтобы если не успевают проделаться все процедуры не брался следующий кадр?

попробуйте поставить в начало что-то типа:
if runSampleGrabber then exit;
runSampleGrabber:=true;
и в конец
runSampleGrabber:=false;

Однако, ничего хорошего все равно не выйдет:
если не успевают проделаться все процедуры
значит загрузка CPU 100% все будет тормозить
и зависеть от CPU и конкретного фильма
и главный тормоз это StretchDraw
к тому же качество от него заметно ухудшается.

Однако, если выкинуть StretchDraw и показывать
в натуральный размер, то P3 хватит и на обработку
типа яркость, контрастность.
А вместо StretchDraw наверно можно написать
что-то свое более быстрое, если заранее расчитать
все коэфициенты для всех пикселов.


 
Dufe   (2004-11-30 13:12) [2]

Так я уже пробовал. Ничего хорошего не происходит. Мне бы лучше пропустить пару кадров в случае неуспевания.


 
Анонимщик ©   (2004-12-02 15:15) [3]

И тебе не стыдно такое спрашивать?



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

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

Наверх




Память: 0.47 MB
Время: 0.039 c
1-1109747467
GH@ST
2005-03-02 10:11
2005.03.20
Нужна функция перекодирования строки из win в dos


3-1108539446
mefodiy
2005-02-16 10:37
2005.03.20
Проблемы со шрифтами при распаковке *.DB файла WinZip-ом


4-1107427283
AlexTregubov
2005-02-03 13:41
2005.03.20
TWAIN


3-1108812210
Dr_Wut
2005-02-19 14:23
2005.03.20
Показ полной базы после фильтрования


11-1091075128
Baloo
2004-07-29 08:25
2005.03.20
ув. В. Кладов! В элемент типа TEdit вставить понятно как, а в мно