geeknees

Web日記(web-nikki)

ビデオ会議サービスの比較検討メモ

Posted at

ざっくりとしたメモです。

tl;dr

  • 悩むのであればZoomがデファクトなのでZoomから始める
  • 要件が精査できるのであれば、他のサービスも検討する
  • G suit 使っているのであればGoogle Meetは良いので試して見る価値あり

検討要件

  • どのくらいセキュリティをもとめるのか
  • どのくらい手軽に参加できるべきか
  • 通信の安定度はどのくらいか(参加人数をどのくらい想定すべきか)
  • モバイルやタブレットのアプリからの参加を想定すべきか
  • 定期的に同じチームで使うのか、はじめて使う人が常にいる状態でつかうのか
  • 録画したいかどうか

ビデオ会議のシステムについて色々サービスがあるのでまとめる

  • Zoom: 事実上デファクトになりつつある。無料で使える。自社のテクノロジーチームの定例でも使っています。一番安定しているし多機能。逆をゆうと、アプリケーションをインストールしたり、会員登録したりする手間が多い。
  • Whereby(旧Appear):URLを共有するだけで使える。無料でも使える。手軽だがその分セキュリティも甘め。あと、速度が不安定になりがちり。
  • Google Meet:G suitをつかっていると無料で使える。URL共有で参加できるし、ルームに入る前に承認があるのである程度のセキュリティも担保されている。回線も安定して30名程度の参加でも問題ない。

ビデオではないが、セミナー配信

  • YouTube Live:現状ではほぼ一択では。Zoom の有料プランでウェビナーができるのもあるので、Zoomで有料入っているのであれば選択肢に入る。

チャットツールの延長でビデオ会議ができるやつもある(未検証)

  • Slack
  • Discord
  • Microsoft Meet

メッセージ系でビデオ対応しているやつ(未検証)

  • Skype
  • Facebook Messenger
  • Google Duo または Google Hangout (Google Meetは別なので注意)

変わり種

自前実装系

技術的な話(技術的な話がわかるとサービスの違いも理解しやすい)

  • ブラウザで参加できるビデオ会議の仕組みは基本的にWebRTCの仕組みを使っている

→ソフトウェアインストールのほうが自由度が高いので最適化しやすい

→ → つまり、インストール不要の利便性と、通信の快適性や機能の多さはトレードオフ

→ → → とはいえインストール型でも、ちゃんと実装できていなければ駄目は駄目

  • モバイルに関してはWebRTCのAPIが対応できていない

→ アプリが必要になる

→ → ライブ配信だけであれば、WebRTCではなく、ただのビデオ閲覧なので見れる

  • ビデオパケットの送信は基本的にはUDPで送られる

→ なので基本的には大量のデータが送られる仕組み

→ → 快適な通信をしているサービスはこのデータの最適化を行っている

→ → → 方法1としては、ソフトウェアをインストールして、そのソフトで圧縮処理

→ → → 方法2としては、後述するSFUをつかって中間サーバーで最適化処理

  • WebRTCの仕組みとしてはP2PとSFU(Selective Forwarding Unit)

→ P2Pは文字通り端末と端末を直接つなぐ

→ → 参加者数が増えるにつれ、指数的に接続数が増えるので4名以上参加してくると厳しくなってくる

→ SFU は中間サーバーを用意する方針、クライアントはSFUとだけ通信するので、基本的には1対1でつなぐのと変わらない(厳密にはダウンロードのデータ量は増えるので、多くの場合は表示できるビデオの数を制限している)

→ → SFU でもある程度のデータのフィルタリングの余地はあるので、開発力のあるところは実施をして最適化をしていると思う(予想)

→ → → さらなる道としてMCU(Multipoint Control Unit)、複数の地点のつなぎリアルタイムで合成処理をするサーバーを用意する方針。TwilioはSFUなので、APIでサクッと実装みたいにはいかない。かつてはこれがデファクトだったらしい。リアルタイムで合成するので、100個の動画を一つにまとめて配信とかできるらしい。