Поддержка веб-камеры была самой предвкушаемым нововведением и не стала ни для кого новостью. Относительно просто активировать данную функцию. Ниже приведенный пример демонстрирует простой UI с кодом, который подключает веб-камеру. Данный пост не затрагивает работу с несколькими веб-камерами, тем не менее, вызывая CaptureDeviceConfiguration.GetAvailableVideoCaptureDevices, вы получаете список всех доступных веб-камер.
Для начала, создадим простой UI (Rectangle и Button).
Добавим событие нажатия кнопки. Логика выглядит примерно так:
Следующий шаг — запускаем приложение. Вы увидите пустой экран с кнопкой, после нажатия на которую, откроется окна запроса для разрешения программе пользоваться веб-камерой и микрофоном. Конечно же нажмите «Да» ;).
Вуаля!.. Теперь вы смотрите на себя, а может и на стенку или потолок.
После запуска приложения, я заметил отзеркаливание, что бы приложение показывало изображение, как зеркало, установите Flip Rectangl'a по X акцизе. Вот как выглядит это меню в Blend:
Для начала, создадим простой UI (Rectangle и Button).
Добавим событие нажатия кнопки. Логика выглядит примерно так:
- Получить обработчик вашего устройства видео захвата, используя CaptureDeviceConfiguration.
- Запросить доступ к устройству CaptureDeviceConfiguration.RequestDeviceAccess().
- Если пользователь подтвердил доступ, создать объект CaptureSource и далее установить VideoCaptureDevice выбранной веб-камере.
- Создать VideoBrush.
- Установить источник видео кисти (VideoBrush).
- Запустить веб-камеру.
- Нарисовать Rectangle (можно использовать любые объекты, которые принимают кисти (Brush))
Следующий шаг — запускаем приложение. Вы увидите пустой экран с кнопкой, после нажатия на которую, откроется окна запроса для разрешения программе пользоваться веб-камерой и микрофоном. Конечно же нажмите «Да» ;).
Вуаля!.. Теперь вы смотрите на себя, а может и на стенку или потолок.
После запуска приложения, я заметил отзеркаливание, что бы приложение показывало изображение, как зеркало, установите Flip Rectangl'a по X акцизе. Вот как выглядит это меню в Blend: