Как я могу передать видео веб-камеры потоком с C#?

54
задан Peter Mortensen 1 January 2010 в 00:00
поделиться

4 ответа

Если Вы хотите «захват/заголовок в коробке» компонент, есть несколько там, как другие упомянули.

, Если Вы хотите перейти к контролю низкого уровня над всем этим, Вы должны будете использовать DirectShow, как указывает thealliedhacker. Лучший способ использовать DirectShow в C# через DirectShow. Чистый библиотека - это обертывает все API DirectShow COM и включает много полезных более легких функций для Вас.

В дополнение к завоеванию и вытеканию, Вы можете также сделать запись, формат аудио и преобразования формата видео, аудио и видео живые фильтры и много материала.

Microsoft утверждает, что DirectShow уходит, но они должны все же освободить новую библиотеку или API, который делает все, что обеспечивает DirectShow. Я подозреваю многие последние вещи, которые они выпустили, все еще DirectShow под капотом. Из-за его статуса в Microsoft нет большого количества книг или ссылок на нем кроме MSDN и что Вы можете найти на форумах. В прошлом году, когда мы начали проект с помощью него, лучшую книгу по предмету - Программирование, Microsoft DirectShow - была распродана и шла приблизительно за 350$ для используемой копии!

22
ответ дан Stephen Kennedy 7 November 2019 в 08:11
поделиться

Обычный API для этого - DirectShow.

Вы можете использовать P/Invoke, чтобы импортировать C ++ API, но я думаю, что уже есть несколько проектов там, которые сделали это.

http://channel9.msdn.com/forums/TechOff/93476-Programatically-Using-A-Webcam-In-C/

http://www.codeproject.com/KB/directx/DirXVidStrm.aspx

, Чтобы получить текущую часть, Вы, вероятно, хотите использовать DirectShow, чтобы применить кодер-декодер сжатия, чтобы уменьшить задержку, тогда Вы можете получить Поток и передать его. Вы могли рассмотреть использование передачи, чтобы уменьшить сетевой груз.

7
ответ дан Excel Kobayashi 7 November 2019 в 08:11
поделиться

Вы могли просто использовать VideoLAN. VideoLAN будет работать сервером (или можно перенести собственное приложение C# вокруг этого для большего количества управления). Существуют также обертки.NET для средства просмотра, которое можно использовать и таким образом встроить в клиент C#.

4
ответ дан Chris Holmes 7 November 2019 в 08:11
поделиться

Я использовал VideoCapX для нашего проекта. Это передаст потоком как поток MMS/ASF, который может быть открыт медиаплеером. Можно тогда встроить медиаплеер в веб-страницу.

, Если Вам не будет нужно много управления, или если Вы хотите испытать VideoCapX, не пишущий код, попробуйте U-широковещательная-передача , они используют VideoCapX позади сцены.

3
ответ дан faulty 7 November 2019 в 08:11
поделиться
Другие вопросы по тегам:

Похожие вопросы: