Модераторы: Partizan, gambit
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Камера: захват изображений, видео и вывод на экран 
:(
    Опции темы
Xonxt
Дата 24.3.2011, 15:43 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 103
Регистрация: 24.1.2006
Где: Украина / Одесса

Репутация: 1
Всего: 1



Доброе время суток.

Вот столкнулся с такой проблемой: необходимо в рамках одного проекта обеспечить захват изображения с камеры, вывод его в окно (на какой-нибудь Контролз), а также иметь возможность в любой момент начать и остановить запись видео (в AVI), а также захват изображения (и сохранение его в файл).

Требования:
* работать должно как можно быстрее и занимать в памяти как можно меньше места;
* камера - аналоговая (черно-белая, требует внешний источник питания и подключается через специальный USB-тюнер), поэтому не все программы и фреймворки её воспринимают.

Для решения задачи я выбрал DirectShow.NET. Если есть варианты получше, пожалуйста, предлагайте.

Проблема в чем. Насколько я понял, инициализация потоков Preview (вывод в окно), Захвата изображений и Захвата видео происходят на начальном этапе. И в предоставленных примерах было ИЛИ ТОЛЬКО захват изображений и Preview, ИЛИ ТОЛЬКО захват видео и Preview.

Подружить их вместе у меня не получается. Помогите, пожалуйста, если кто-то в этом разбирается. Проект приложен в аттачменте. Здесь инициализация собственно потоков происходит в методе CaptureVideo(). Я выделил соответствующие фрагменты регионами (#region). Заметьте, что фрагменты PICTURE и VIDEO отказываются сосуществовать вместе.

Гугл молчит... Как будто никому раньше не приходилось решать подобную задачу...

Присоединённый файл ( Кол-во скачиваний: 15 )
Присоединённый файл  CameraProject2___copy.zip 189,61 Kb
PM MAIL ICQ Skype   Вверх
Voyager
Дата 24.3.2011, 17:59 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 532
Регистрация: 8.2.2005

Репутация: 3
Всего: 18



Тоже интересует этот вопрос.
Вы не смотрели в сторону VLC, например вывод, остановка и продолженние - ActiveX контрол AxAXVLC.AxVLCPlugin2? Запись видео - через сам VLC (вызов с параметрами, либо еще как-то так, правда это может быть в другом потоке).
PM   Вверх
Xonxt
Дата 30.3.2011, 08:21 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 103
Регистрация: 24.1.2006
Где: Украина / Одесса

Репутация: 1
Всего: 1



В общем, более менее разобрался.
Изображения по-прежнему снимаются тем же образом. А видео записывается многократным вызовом этого самого метода захвата изображения по таймеру и записью через AForge'вский AVI Writer. Конечно, не самый лучший вариант, но скорость работы всего этого добра вполне позволяет обеспечить достойный фреймрейт.

А теперь вопрос. Может все-таки существует более быстрое и элегантное решение? Может все-таки есть другие более шустрые варианты?
PM MAIL ICQ Skype   Вверх
Ky7m
Дата 30.3.2011, 10:28 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 89
Регистрация: 8.4.2008

Репутация: 1
Всего: 2



Можно попробывать OpenCV, а под неё обвертку EMGU. Пример http://habrahabr.ru/blogs/personal/78150/ 
А так же Aforge.Net, тоже позволяет осуществлять запись в файл. Но проблема в том, что это скорей всего обвертка для DirectShow, но работает быстро.
ДЛя прочтения рекомендую http://habrahabr.ru/blogs/development/111609/
PM MAIL ICQ   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Прежде чем создать тему, посмотрите сюда:
mr.DUDA
THandle

Используйте теги [code=csharp][/code] для подсветки кода. Используйтe чекбокс "транслит" если у Вас нет русских шрифтов.
Что делать если Вам помогли, но отблагодарить помощника плюсом в репутацию Вы не можете(не хватает сообщений)? Пишите сюда, или отправляйте репорт. Поставим :)
Так же не забывайте отмечать свой вопрос решенным, если он таковым является :)


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, mr.DUDA, THandle.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Общие вопросы по .NET и C# | Следующая тема »


 




[ Время генерации скрипта: 0.1225 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.