Я работаю над приложением, которое объединяет два проекта в двух разных курсах моей степени в области разработки программного обеспечения:
SWE 490: Разработка программного обеспечения на основе компонентов
SWE 344: IP и программирование клиент-сервер
Вот, о чем мое приложение:
Клиентская сторона (настольная) : Основная функция - захват видео с веб-камеры и его потоковая передача на сервер.
Серверная сторона. (Веб-версия) : Основная функция - получение потокового видео от клиента и отображение его на веб-сайте в режиме реального времени.
Краткое описание приложения: Пользователи смогут удаленно контролировать свои веб-камеры путем потоковой передачи выходных данных с веб-камер на удаленный сервер, доступный через Интернет. Система также будет служить системой обнаружения движения (если она активирована пользователем), чтобы уведомлять пользователей по электронной почте, если на их веб-камерах было обнаружено какое-либо движение. Кроме того, система также позволяет пользователям планировать записи и просматривать их в режиме реального времени.
Я готовлю предложение по проекту, и я сделал некоторые первоначальные планы относительно структуры системы, представленной ниже:
Компоненты на стороне клиента (рабочий стол):
Компоненты на стороне сервера (веб-сервер):
Мой вопрос:
Мои основные проблемы связаны с потоковой передачей видео в реальном времени (отправка и получение компонентов), поскольку это новая тема для меня.
Я знаю, что могу запрограммировать сокет и отправлять захваченные видео в виде потока байтов на главный сервер, но меня беспокоит то, как я собираюсь отобразить полученный поток в веб-браузере на на стороне сервера .
Моя ситуация похожа на этот вопрос , за исключением того, что он касается потоковой передачи видео, а не потоковой передачи изображений.
Я читал несколько статей, и мне кажется, что это можно сделать, используя Silverlight и я ' Я надеюсь, что кто-то может указать мне правильное направление.
Ваше мнение о проекте в целом более чем приветствуется.