- Выбрать камеру из доступных
- Выбрать разрешение камеры
- Выводить изображение с камеры
- Накладывать изображение на кадр
- Делать снимки кадра
- Управлять TV mode (PAL, NTSC и др.)
- Выводить диалоги настроек камеры (из драйверов)
- Получить список доступных камер и разрешений
- Поддерживаются приложения на WinForms и WPF
Библиотека была создана из-за того, что не удалось найти среди десятков свободных решений такое, которое бы имело необходимые мне функции, а именно: удобная работа с камерой в виде компонента, возможность выбирать разрешение камеры, делать снимки кадра, накладывать изображение поверх кадра.
В библиотеке главными классами являются CameraControl и Camera. CameraControl – является обёрткой над классом Camera в виде UserControl, который можно удобно использовать из коробки без заморочек. Это рекомендуемый подход. В комплекте с библиотекой идут два примера использования этого класса в WinForms, в частности, пример простого внедрения компонента в свою программу и более сложный пример, который демонстрирует почти все возможности библиотеки. Camera – объект для работы с камерами.
Кроме этого, есть несколько вспомогательных public классов: Resolution, VideoInput, классы выбора камеры и др. Библиотека использует DirectShowLib (лицензия LGPL 2.1 или новее), которая является очень тонким враппером COM-интерфейсов DirectX, благодаря чему потери производительности от использования управляемого кода вместо нативного минимальны.
DirectShow есть только под Windows, соответственно и библиотека доступна только для Windows.
Это библиотека является свободным программным обеспечением. Вы можете распространять и/или модифицировать её согласно условиям лицензии GNU Lesser General Public License, опубликованной Фондом Свободного Программного Обеспечения, версии 3.0 или, по вашему желанию, любой более поздней версии. Эта библиотека распространяется в надежде, что она будет полезной, но БЕЗ ВСЯКИХ ГАРАНТИЙ, в том числе подразумеваемых гарантий ТОВАРНОГО СОСТОЯНИЯ ПРИ ПРОДАЖЕ и ГОДНОСТИ ДЛЯ ОПРЕДЕЛЁННОГО ПРИМЕНЕНИЯ. Прочитайте лицензию GNU Lesser General Public License для получения дополнительной информации.
Хотя сама библиотека Camera_NET и распространяется под лицензией LGPL, код примеров публикуется как ОБЩЕСТВЕННОЕ ДОСТОЯНИЕ. То есть вы можете использовать код из примеров в своих свободных и проприетарных проектах без каких либо ограничений.