Как мне получить ВИДЕО с камеры WIA? - PullRequest
3 голосов
/ 11 сентября 2009

Я разрабатываю небольшое приложение на C # 3.5 для Windows XP, которое автоматически загружает изображения и видео с камеры на ПК через подключаемый модуль камеры через USB. У меня есть камера Canon ixus 50, и я выясняю, как получить изображения с этой камеры на ПК, но я просто не могу понять, как получить / скачать видео в формате AVI. Может кто-то помочь мне, пожалуйста? Это правда, что я использую WIA 2.0, но, похоже, сейчас работает. :)

1 Ответ

1 голос
/ 19 сентября 2012

Мне никогда не удавалось правильно настроить WIA.

Иногда это работало почти нормально для фотографий, но видео не было. Иногда это никогда не будет работать на ПК моих клиентов (та же камера, те же характеристики ПК).

Наконец, я полностью отказался от WIA и сумел создать свой собственный элемент управления на основе DirectX.

Что я нашел

  1. Использование Expression SDK для получения изображения / видео: http://www.codeproject.com/Articles/202464/How-to-use-a-WebCam-in-C-with-the-NET-Framework-4
  2. DirectShow: http://www.codeproject.com/Articles/18511/Webcam-using-DirectShow-NET.
  3. DirectX Capture (AVI): http://www.codeproject.com/Articles/3566/DirectX-Capture-Class-Library.

Имейте в виду,

  1. С ним действительно легко работать. Требуется некоторая DLL-библиотека Expression (SDK), и для этого она будет работать только в x86, и вам придется настроить приложение с AnyCPU или с x64 на x86. Период.

  2. Работает очень хорошо, но это больше для статических фото.

  3. Никогда не проверял, но выглядит очень близко к вашим потребностям. Не могу сказать, работает ли это, но я пойду таким образом для тестирования, по крайней мере.

Мои мысли

WIA довольно прост и легок. Я использовал его на Delphi и Clarion (оба являются родными Win32). Это несколько хорошо, но в наше время WIA - не тот путь.

Многие веб-камеры просто не будут работать с WIA, и вам придется попросить своих клиентов сменить веб-камеру на странно названный китайский / корейский / wtf бренд, чтобы ваше приложение работало.

Попробуйте последний вариант. Как минимум, скачайте и запустите код.

Надеюсь, это поможет.

...