Upgrade to Pro — share decks privately, control downloads, hide ads and more …

WebRTC の現状と未来

WebRTC の現状と未来

[2023/10/31 追記]
WebRTCの新たなAPIであるRTPTransportが提案されている事により、本資料の結論には至らない可能性が出てきています。RTPTransportの詳細はこちら

---
WebRTC Meetup Tokyo #24 2023/06/23 の資料 (一部更新)

2023年6月時点におけるWebRTCに関連する技術動向と未来予想

動画はこちら

tetter

June 26, 2023
Tweet

More Decks by tetter

Other Decks in Technology

Transcript

  1. 自己紹介 2 NAME: - tetter (Tetta Maeda) HOBBY: - AI

    / ML on Browser を試すこと CARRIER: @tttr_mt tetter27 2017 2018 2022 前職 (通信事業会社) Android 〃 EdgeAI NTTコミュニケーションズ株式会社 WebRTC
  2. WebRTC の現状 3 - 2021 年に W3C と IETF によって標準化完了が宣言された

    The World Wide Web Consortium (W3C) and the Internet Engineering Task Force (IETF) announced today that Web Real-Time Communications (WebRTC), which powers myriad services, is now an official standard, bringing audio and video communications anywhere on the Web. [1] https://www.w3.org/2021/01/pressrelease-webrtc-rec.html.en [1]
  3. WebRTC の課題 - WebRTC ≒ おせっかい - 近年のユースケースには適さないことも 5 エンコードしたメディア、送信しといたわよ

    コーデックはあんたの好きな Opus よ 帯域に合わせて映像の画質下げといたわよ 融通が効かない!
  4. どうしてこうなったのか - WebRTC は元々 VoIP (SIP) の発展型 - つまり、目指していたのは主に P2P

    通話 - 以前は融通なんて効かせる必要はなかった - Covid-19 によって多人数通話のニーズが急激に拡大 - ほとんどが client-server 型で使用されるように - 様々なユースケースが求められるように 6
  5. Extensible Web と WebRTC - 2015 年以降、Web API は低レイヤへ向かっている [2]

    - WebRTC も新たなユースケースへ対応するため低レイヤへ 7 WebRTC (legacy) Next WebRTC ORTC WebRTC New APIs / Protocols Past Present Future High Low API Layers [2] https://www.publickey1.jp/blog/15/extensible_webweb_assemblyortcweb.html
  6. WebRTC 関連の標準化動向 - W3C - MediaStreamTrack Insertable Media Processing using

    Streams - WebCodecs - WebAssembly - WebGPU - IETF - MOQT - WebTransport - WHIP / WHEP - MOPS 8
  7. WebRTC 関連の標準化動向 - W3C - MediaStreamTrack Insertable Media Processing using

    Streams - WebCodecs - WebAssembly - WebGPU - IETF - MOQT - WebTransport - WHIP / WHEP - MOPS 9 Picked up !!
  8. MediaStreamTrack Insertable Media Processing using Streams 10 - エンコード前の非圧縮のメディアデータを取り出して処理できる API

    - 仮想背景やノイズキャンセリング等の実装に有用 - エンコード後のデータを取り出せる Encoded Transform も MediaStream Encoder RTP Packetizer SRTP Encryption Sender 任意の処理
  9. MediaStreamTrack Insertable Media Processing using Streams 11 - Chrome M94

    から利用可能 - Firefox と Safari は依然として非対応 - 首を長くしてサポート追加お待ちしてます🙏
  10. WebCodecs 12 - ブラウザが実装しているコーデックを使用できる API - WebRTC では難しかったカスタマイズが可能に MediaStream WebCodecs

    Packetizer Encryption Sender カスタマイズ可 カスタマイズ可 カスタマイズ可 MediaStream Encoder RTP Packetizer SRTP Encryption Sender セットでしか使えず WebRTC カスタマイズ可
  11. WebCodecs 13 - Chrome M94 から利用可能 - Safari は Video

    のみ対応、Firefox は非対応 - 首を長くしてサポート追加お待ちしてます🙏
  12. WebAssembly (Wasm) - ブラウザ上で Native に近い実行速度を実現できる - AI / ML

    - メディア処理 - その他複雑な処理 - JS, HTML, CSS に続く4つ目のブラウザ言語と定義されている - SIMD や Threads を有効にすることで更に高速化 - 特に WebRTC 界隈では非常に注目されている 14
  13. MOQT 17 - Media Over QUIC Transport - QUIC でメディアを高速に送信するためのプロトコル

    - Relay Server を用いた大規模配信など、幅広いユースケースに対応 - ブラウザでは WebTransport を利用する想定 - 現在は MoQ WG で仕様策定中 [4] https://datatracker.ietf.org/meeting/interim-2023-moq-08/materials/slides-interim-2023-moq-08-sessa-warp-streaming-format-00 [4]
  14. WebTransport 18 - client-server 型のプロトコル - WebSocket や WebRTC DataChannel

    の使いづらさの解消が目的 - MOQT をブラウザ上で動作させるために重要 - 現在は Webtrans WG で仕様策定中 - Protocol Framework - HTTP /3 - HTTP /2
  15. WebTransport 19 - Chrome M97 から利用可能 - Firefox は 6/9

    リリースの 114 で対応 🎉 - Safari は非対応だが対応には前向きな姿勢 [5] [5] https://github.com/WebKit/standards-positions/issues/18
  16. MOPS 20 - Media OPerationS - XR 向けの Edge Computing

    や伝送について定義 - MoQ WG と連携することがあり、参照し合っている [6] [7] - 現在は MOPS WG でユースケースの検討中 - IETF 116 では Webex Hologram を元に伝送要件等について議論 [6] https://datatracker.ietf.org/wg/moq/about/ [7] https://datatracker.ietf.org/meeting/116/materials/slides-116-mops-mops-chair-slides-ietf-116-v3
  17. WebRTC の未来予想図 21 MediaStream 任意の処理 WebCodecs MOQT MediaStream Encoder RTP

    Packetizer SRTP Encryption Sender WebRTC Next WebRTC 予想 - Warp - QuicR - VR Special etc. [8] https://datatracker.ietf.org/meeting/116/materials/slides-116-moq-sessb-catalog-specification-for-moq [8]
  18. まとめ - WebRTC の低レイヤ化が加速中 - WebCodecs - MOQT etc. -

    ビデオ通話以外のユースケースが増える [9] - XR - 大規模配信 etc. - WebRTC における一番の過渡期は今!? (異論は認める) 22 [9] https://www.w3.org/TR/webrtc-nv-use-cases/
  19. EOF