Потоковое видео через веб-сокеты с использованием JavaScript
Какой самый быстрый способ для потокового видео с использованием JavaScript? Является ли WebSockets over TCP достаточно быстрым протоколом для потоковой передачи видео, скажем, со скоростью 30 кадров в секунду?
5 ответов
Является ли WebSockets over TCP достаточно быстрым протоколом для потоковой передачи видео, скажем, со скоростью 30 кадров в секунду?
Да, это так, взгляните на этот проект. Веб-сокеты могут легко обрабатывать видеопоток в формате HD. Однако вам следует использовать Adaptive Streaming. Я объясняю здесь, как вы могли бы реализовать это.
В настоящее время мы работаем над приложением для обмена мгновенными сообщениями с поддержкой чата, обмена файлами и видео / веб-камеры. С некоторыми хитростями мы получили потоковое мультимедиа через веб-сокеты (для захвата потока с наших веб-камер использовался HTML5 Media Capture).
Вам нужно построить stream API
и Media Stream Transceiver
контролировать связанные средства обработки и транспорта.
Были предложены расширения источников мультимедиа, которые позволят реализовать адаптивную потоковую передачу битрейта.
Чтобы ответить на вопрос:
Каков самый быстрый способ потоковой передачи видео в реальном времени с помощью JavaScript? Является ли WebSockets over TCP достаточно быстрым протоколом для потоковой передачи видео со скоростью, скажем, 30 кадров в секунду?
Да, Websocket можно использовать для передачи более 30 кадров в секунду и даже 60 кадров в секунду.
Основная проблема с Websocket заключается в том, что он низкоуровневый, и вам приходится иметь дело с другими проблемами, помимо простой передачи фрагментов видео. В общем, это отличный транспорт для видео и аудио.
Это определенно возможно, но я не уверен, что мы там еще. А пока я бы рекомендовал использовать что-то вроде http://silverlight.net/ с IIS Smooth Streaming. Silverlight основан на плагинах, но работает на Windows/OSX/Linux. Когда-нибудь HTML5 <video>
Элемент будет путь, но это будет нуждаться в поддержке на некоторое время.