Извините, ничего не найдено.

Не расстраивайся! Лучше выпей чайку!
Регистрация
Справка
Календарь

Вернуться   www.boolean.name > Программирование игр для компьютеров > Delphi

Ответ
 
Опции темы
Старый 04.03.2011, 12:11   #1
Baisangur
ПроЭктировщик
 
Аватар для Baisangur
 
Регистрация: 10.03.2009
Адрес: Казахстан->Кустанай
Сообщений: 147
Написано 12 полезных сообщений
(для 23 пользователей)
Скриншот с веб-камеры в память.

Доброго времени суток!
Хочу поинтересоваться, возможно ли с помощью WinAPI, точнее avicap32.dll, сделать скриншот с устройства видео-захвата, в моем случае веб-камеры, сразу в отведенный для этого участок памяти?
Т.е. мне известны два способа на данный момент - это сохранение в bmp файл на диск и сохранение в буфер обмена, если честно для проекта в котором это задумывается использовать, оба этих способа слишком извращенные и на мой взгляд не правильные. Требуется покадровая обработка в реальном времени.
(Offline)
 
Ответить с цитированием
Старый 04.03.2011, 12:52   #2
moka
.
 
Регистрация: 04.08.2006
Сообщений: 10,429
Написано 3,453 полезных сообщений
(для 6,859 пользователей)
Ответ: Скриншот с веб-камеры в память.

Учитывая документацию из msdn по поводу Video for Windows (avicap32.dll), то можно.

В DirectShow если работаешь с фильтрами, это делается достаточно не сложно.
Фильтр источника видео, пускаешь через Smart Tee, один из выходов соединяешь с SampleGrabber'ом, другой с VideoRender'ом, чтобы превью показать.
Буффер из SampleGrabber'а можно вытаскивать непрерывно, конечно fps будет зависить от возможностей железа и размера картинки. Если нужна обработка изображения непосредственно на шейдерах. Есть много различных фильтров, которые работают сразу в графе фильтров, таким образом не нада будет копировать данные туда-сюда.

Если ты используешь DirectShow тогда дай знать, если нет, то низкого доступа к фильтрам получить не думаю что удастся..
(Offline)
 
Ответить с цитированием
Старый 04.03.2011, 20:22   #3
Baisangur
ПроЭктировщик
 
Аватар для Baisangur
 
Регистрация: 10.03.2009
Адрес: Казахстан->Кустанай
Сообщений: 147
Написано 12 полезных сообщений
(для 23 пользователей)
Ответ: Скриншот с веб-камеры в память.

MoKa, спасибо за наводку, кажется мне есть чего почитать теперь. В подробности с работой с VFW пока не вдавался, казалось что юзая "стандартные" решения можно добиться необходимого результата, на деле все оказывается сложнее.
(Offline)
 
Ответить с цитированием
Старый 04.03.2011, 21:50   #4
moka
.
 
Регистрация: 04.08.2006
Сообщений: 10,429
Написано 3,453 полезных сообщений
(для 6,859 пользователей)
Ответ: Скриншот с веб-камеры в память.

Baisangur, стандартные решения обычно для простых вещей. Если нужна скорость, кодеки, совмещения потоков в файл или ещё чего, то да, нужно делать фильтрами.
Я кстати с VFW не работал, только с "голеньким" DirectShow.
Вот тут в гугле нашёл, вроди как то что надо
http://www.vwlowen.co.uk/directshow/page01.htm

Будут вопросы, задавай, помогу чем смогу.
(Offline)
 
Ответить с цитированием
Ответ


Опции темы

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


Часовой пояс GMT +1, время: 15:46.


vBulletin® Version 3.6.5.
Copyright ©2000 - 2018, Jelsoft Enterprises Ltd.
Перевод: zCarot
Style crйe par Allan - vBulletin-Ressources.com