Открытый стандарт для нативного RTC без плагинов


Недавно я работал с WebRTC, и мне интересно, имеет ли смысл реализовать открытый стандарт связи в реальном времени на родном уровне.

Предположим, что вместо API веб-браузера у нас есть собственный API, который может использовать любое собственное приложение, включая браузер.

Частью обещания WebRTC является наличие RTC в браузере без плагинов, но почему бы не остановиться на этом, почему бы не иметь RTC на любом устройстве с мультимедийными возможностями без плагинов. Есть много устройств с медиа-возможностями, которые не будут работать в веб-браузере, например, носимые устройства. Мне кажется, что сам браузер стал плагином, и я думаю, что нам нужно избавиться от него, насколько это касается RTC.

Похоже, чтоOpenWebRTC движется в том же направлении, но пока они работают только внутри браузера.

  • существуют ли открытые стандарты для собственного RTC? Пока это выглядит так, что RTCWeb заботится только о браузере.
  • Есть ли такие проекты / инициативы по нативной реализации открытого стандарта для RTC?
2 2

2 ответа:

  1. Определение Webrtc. webrtc состоит из двух частей, дополняющих друг друга, но разделенных. консорциум W3C занимается стандартизацией JS API для браузеров с именем webRTC. IETF стандартизирует базовые протоколы и то, что происходит на проводе для обеспечения совместимости, называется rtcweb.

  2. Группа rtcweb IETF определяет все, что вам нужно для взаимодействия с браузером, не будучи самим браузером, т. е. для шлюзов, устройств, .... Это было сделано явным на последняя встреча на Гавайях в ноябре прошлого года, и есть, например, соответствующий проект .

  3. На стороне клиента реализация webRTC JS API выполняется поверх реализаций c / C++. Эти" нативные " (как в не-браузере, C/C++) API могут использоваться непосредственно для серверов, встраиваемых устройств, шлюза и т. д., а также могут быть обернуты в различные языки (obj-c, java), чтобы обеспечить "нативные" (как в мобильных нативных) API.

  4. Обратите внимание, что оба openWebrtc.io и еще webrtc.org иметь полную реализацию технологии WebRTC в C/C++, которые вы можете использовать. openWebrtc предоставляет оболочки iOS и webkit (для safari), но не обеспечивает поддержку канала данных, поддержку API ORTC и компиляцию под windows. webrtc.org поддерживает все настольные операционные системы и предоставляет оболочки как для iOS, так и для Android. Однако инструменты сборки специфичны для chrome от google, в отличие от openWebRTC, который использует стандартные автоматические инструменты, github ...

HTH

В настоящее время никаких усилий в этом направлении не предпринимается. Ребята в комитете по стандартизации WebRTC также имеют свои руки полный стандартизация всего API-интерфейса JavaScript. Как вы знаете, текущая спецификация не является окончательной и в настоящее время все еще работает. И теперь ОРТК будет генерировать еще больше работы.

Существует множество причин, по которым в настоящее время никто не пытается стандартизировать какую-либо форму собственного RTC. Вот некоторые из них, которые приходят мне на ум:

  • Что именно является родным? Javascript является родным для браузеры. Chrome версия webrtc находится в C++ , но OpnWebRTC один находится в C. разработчики Android используют в основном Java, разработчики iOS используют ObjectiveC. Должны ли существовать стандарты для всех этих языков? Это займет целую вечность.

  • Как я уже сказал, У комитета по стандартизации уже полно дел.

  • Существует еще довольно много экспериментов, которые продолжаются с WebRTC. Стандартизация может предотвратить это.

  • API собственных библиотек как правило, они очень похожи на JS API.