Twilio Videoを手軽に始める 〜 無料のビデオルーム「WebRTC Go」

この記事はSean Colemanがこちらで公開した記事(英語)を日本語化したものです。

少し古めのブログですが、2022年年末の(日本語版)投稿というタイミングにおいても記事内容は妥当ですし、何より皆さんにTwilio Videoを評価利用いただきたく、ブログをご紹介しています。

WebRTC技術の利用をより簡単に開始できるようにするため、2020年10月にTwilio Videoの新たなルーム種別としてWebRTC Goを発表しました。その後も、コミュニティからの多大関心や利用拡大を目の当たりにし、WebRTC Goの開発者フィードバックを多くいただくなか、開発者に商用利用の1:1ビデオアプリケーションをもっと(しかも無料のまま)構築いただけるよう、2021年10月に機能拡張を発表いたしました。変更点は以下のとおりです。

  1. WebRTC GoのTURN使用量は無制限となりました。(従来は、25GB/月の制限がありました。)
  2. 参加者またはルームの同時使用数が500に拡大されました。(従来は100でした。)

2020年10月に発表したTwilio VideoのWebRTC Goは、1:1のビデオアプリケーションを構築、起動、実行するためのツールキットを開発者に無償で提供するものです。WebRTC Goを使えば、ICE候補の収集やメディアの中継といったビデオセッション確立にまつわる詳細について、個々の開発者がその実装を心配する必要はありません。そのようなシグナリングの調整やSTUN/TURNサーバの提供は当社が担当します。また、SDK(ソフトウェア開発キット)、クイックスタート、全機能をカバーする参照アプリケーション、トラブルシューティングや診断のためのツール群も提供されます。

このブログでは、WebRTC Goを使って構築されたビデオアプリケーションをいくつか紹介し、2020年10月の発売以来、WebRTC Go開発者のために行った改善点に焦点を当てます。

WebRTC Goの評価利用〜商用ビデオアプリケーションへ

WebRTC Goを2020年10月に発表してから約2年が経過しましたが、WebRTC Goを活用してソリューションをプロトタイプされる様子に本当に驚かされます。リアルタイム型ビデオアプリケーションを始めようと思って週末にサイドプロジェクトを楽しく立ち上げる開発者もいれば、社内や見込み客との交流のために概念実証(PoC)を立ち上げる開発者もいますし、商用ビデオアプリケーションを構築・運用している開発者もいます。

WebRTC Goをベースに構築されたアプリケーションの例をいくつか紹介します。

  • TalkNow – 英語を学びたい人、練習したい人をつなぐ音声のみのアプリケーション
  • aReception – 必要に応じて来客と社内のオペレーターをビデオでつなぐバーチャルアシスタント
  • Cofocus.one – 学生が仮想コワーキングセッションを行うためのアプリケーション

WebRTC Goを使って概念実証を行うにせよ、事業アイデアを素早く検証するにせよ、あるいは商用アプリケーションを立ち上げて実行するにせよ、開発者がしばしばぶつかる最初の難題は、WebRTCが強力な技術だと理解しつつも、そのプロトコルを直接処理することが非常に複雑である点です。開発者は、プログラマビリティを犠牲にすることなく、この複雑さを抽象化し、数週間や数ヶ月ではなく数日といった時間軸でビデオアプリケーションを稼働させるために必要な開発者体験を無料で利用できることを望んでいます。Twilio VideoのWebRTC Goはこのニーズを満たすものとして2020年10月に発表されました。

WebRTC Goに関するアップデート

WebRTC Goの発売から2年が経過し、ツールキットや必要なサポートに関する皆さまからのフィードバックに対応するため、さまざまな改善を行ってきました。以下にそのハイライトをいくつか紹介します。

魅力的なビデオ体験の構築

仮想背景と背景ぼかし

Video ProcessorsコンポーネントのJavaScript ライブラリをVideo Processors APIと組み合わせることにより、ビデオアプリケーションに仮想背景機能を追加して、自宅や外出先でアプリケーションに参加する際にプロフェッショナルな外観を提供できるようになりました。ブログ「Twilio Videoがますます使いやすく〜背景画像のぼかし機能〜」で、その詳細をご確認ください。

customBackgroundJP

React クイックデプロイアプリにテキストチャットを追加

ビデオ体験にチャット機能を追加することで、補足メッセージの送信、質問、関連リンクの共有など、ビデオの主催者側を邪魔することなく、ユーザーに情報を展開する便利なチャネルを提供します。ビデオ体験にチャット機能を追加しようとしている人々のために、その開発を加速することを目的として、この機能の参照実装をReactクイックデプロイアプリケーションに追加しました。ブログ「Twilio Video Reactアプリケーションで短時間でチャット対応ビデオアプリを開発する」で、その詳細をご確認ください。

トラブルシューティング、診断、デバッグのための新ツール

診断アプリケーションとPreflight API

Twilio Videoの診断アプリケーションはオープンソースのReactJSアプリケーションとして提供されます。ビデオセッションの参加者のデバイスやソフトウェアの設定、Twilio Cloudとの接続性、ネットワークパフォーマンスをテストするアプリケーションです。TwilioのRTC Diagnostics SDKPreflight APIを使用し、エンドユーザーのネットワーク品質やデバイス設定に関するフィードバックを提供し、これにはビデオセッションの品質を改善するための推奨事項も含まれます。

TwVideoDiagJP

診断アプリの詳細については、ブログ(英語)またはREADMEをご確認ください。

JavaScript Room Monitor(ルームのモニター機能)

TwilioのJavaScript Room Monitorは、Twilio Videoに関するブラウザベースのツールで、ビデオルームに関する情報や指標をリアルタイムに表示するものです。具体的には、Twilio VideoのRoomオブジェクトから、参加者の帯域幅、パケットロス、ジッターなどの情報を収集・処理し、ビデオアプリケーションのモーダルウィンドウに表示します。

TwVideoRTMonitorJP

JavaScript Room Monitor機能は、Twilio VideoのJavaScriptベースのアプリケーションに追加することができ、進行中のビデオセッションをデバッグするなど、開発のあらゆる段階で使用できます。

JavaScript Logger(ロガー)

JavaScript Loggerを活用することで、Twilio VideoのJavaScript SDKによって生成されたログをリアルタイムでキャプチャし、アプリケーションを監視し、実運用での動作を確認することができます。

今すぐWebRTC Goを使い始める

Twilio WebRTC Goの使用は非常に簡単で、アプリケーションのコード内でルームタイプをgoと指定するだけです。つまり、Goルーム上の1対1の会話からユースケースを拡張する、P2PやGroupルームで提供される高度な機能を利用するビデオアプリケーションを構築する場合、ルームタイプの指定を適宜変更するだけで、コードを大幅に書き直す必要はありません。ルームタイプはRooms REST APIであれば都度指定することができ、Twilioのコンソール画面上であればデフォルトタイプとして設定しておくこともできます。

Rooms REST APIでの例(以下を参照)

curl -X POST https://video.twilio.com/v1/Rooms \ 
--data-urlencode "StatusCallback=http://example.org" \ 
--data-urlencode "Type=go" \ 
--data-urlencode "UniqueName=DailyStandup" \ 
-u ACxxxxxxxxxx:your_auth_token

Twilioコンソールでのデフォルト指定(以下を参照)

TwVideoRoomJP

また、Twilio Videoのほぼ全ての機能を備えた参照アプリケーションを5分以内にデプロイすることも可能です。

Reactアプリケーションを例として、ターミナル ウィンドウで次のコマンドを実行することで、WebRTC Goルームを使用するようにアプリケーションを設定し、デプロイすることができます。

# Clone the web application 
$ git clone https://github.com/twilio/twilio-video-app-react 

# Change directories 
$ cd twilio-video-app-react 

# Build the application 
$ npm install 

# Install the Twilio CLI 
$ npm install -g twilio-cli

# Login to your Twilio account using your Account SID and Auth Token 
$ twilio login 

# Install the RTC plugin 
$ twilio plugins:install @twilio-labs/plugin-rtc 

# Deploy! 
$ npm run deploy:twilio-cli -- --room-type go 

deploying app... done Web App URL: https://video-app-1111-1111-dev.twil.io?passcode=11111111111111 
Passcode: 111 111 1111 1111 
Room Type: go

今後の展望

2020年10月に実施された弊社ユーザーカンファレンスでWebRTC Goルーム機能(無料機能)のベータリリースを発表し、2021年10月実施の同カンファレンスのタイミングでWebRTC Goルームに関連する機能拡張(英語ページ、日本語ページ(ページ真ん中辺り))を実施しました。これにより、WebRTC Goルームを用いてTwilio Videoの評価利用を開始し、その上位ルームにスイッチすることで該当ビデオアプリケーションの商用展開を図るという流れが実施しやすくなったものと考えています。

このブログをお読みいただきTwilio Video、そしてWebRTC Goルームに興味を持っていただけましたら、2021年3月実施のハンズオンウェビナーをレビューいただくことで、さらに具体的なイメージがつかめると思います。レコーディングはこちらをご覧ください。(1.5時間程度となります。)

コミュニケーションの未来を創造しましょう!


This content originally appeared on Twilio Blog and was authored by Sean Coleman

この記事はSean Colemanがこちらで公開した記事(英語)を日本語化したものです。

少し古めのブログですが、2022年年末の(日本語版)投稿というタイミングにおいても記事内容は妥当ですし、何より皆さんにTwilio Videoを評価利用いただきたく、ブログをご紹介しています。

WebRTC技術の利用をより簡単に開始できるようにするため、2020年10月にTwilio Videoの新たなルーム種別としてWebRTC Goを発表しました。その後も、コミュニティからの多大関心や利用拡大を目の当たりにし、WebRTC Goの開発者フィードバックを多くいただくなか、開発者に商用利用の1:1ビデオアプリケーションをもっと(しかも無料のまま)構築いただけるよう、2021年10月に機能拡張を発表いたしました。変更点は以下のとおりです。

  1. WebRTC GoのTURN使用量は無制限となりました。(従来は、25GB/月の制限がありました。)
  2. 参加者またはルームの同時使用数が500に拡大されました。(従来は100でした。)

2020年10月に発表したTwilio VideoのWebRTC Goは、1:1のビデオアプリケーションを構築、起動、実行するためのツールキットを開発者に無償で提供するものです。WebRTC Goを使えば、ICE候補の収集やメディアの中継といったビデオセッション確立にまつわる詳細について、個々の開発者がその実装を心配する必要はありません。そのようなシグナリングの調整やSTUN/TURNサーバの提供は当社が担当します。また、SDK(ソフトウェア開発キット)、クイックスタート、全機能をカバーする参照アプリケーション、トラブルシューティングや診断のためのツール群も提供されます。

このブログでは、WebRTC Goを使って構築されたビデオアプリケーションをいくつか紹介し、2020年10月の発売以来、WebRTC Go開発者のために行った改善点に焦点を当てます。

WebRTC Goの評価利用〜商用ビデオアプリケーションへ

WebRTC Goを2020年10月に発表してから約2年が経過しましたが、WebRTC Goを活用してソリューションをプロトタイプされる様子に本当に驚かされます。リアルタイム型ビデオアプリケーションを始めようと思って週末にサイドプロジェクトを楽しく立ち上げる開発者もいれば、社内や見込み客との交流のために概念実証(PoC)を立ち上げる開発者もいますし、商用ビデオアプリケーションを構築・運用している開発者もいます。

WebRTC Goをベースに構築されたアプリケーションの例をいくつか紹介します。

  • TalkNow - 英語を学びたい人、練習したい人をつなぐ音声のみのアプリケーション
  • aReception - 必要に応じて来客と社内のオペレーターをビデオでつなぐバーチャルアシスタント
  • Cofocus.one - 学生が仮想コワーキングセッションを行うためのアプリケーション

WebRTC Goを使って概念実証を行うにせよ、事業アイデアを素早く検証するにせよ、あるいは商用アプリケーションを立ち上げて実行するにせよ、開発者がしばしばぶつかる最初の難題は、WebRTCが強力な技術だと理解しつつも、そのプロトコルを直接処理することが非常に複雑である点です。開発者は、プログラマビリティを犠牲にすることなく、この複雑さを抽象化し、数週間や数ヶ月ではなく数日といった時間軸でビデオアプリケーションを稼働させるために必要な開発者体験を無料で利用できることを望んでいます。Twilio VideoのWebRTC Goはこのニーズを満たすものとして2020年10月に発表されました。

WebRTC Goに関するアップデート

WebRTC Goの発売から2年が経過し、ツールキットや必要なサポートに関する皆さまからのフィードバックに対応するため、さまざまな改善を行ってきました。以下にそのハイライトをいくつか紹介します。

魅力的なビデオ体験の構築

仮想背景と背景ぼかし

Video ProcessorsコンポーネントのJavaScript ライブラリをVideo Processors APIと組み合わせることにより、ビデオアプリケーションに仮想背景機能を追加して、自宅や外出先でアプリケーションに参加する際にプロフェッショナルな外観を提供できるようになりました。ブログ「Twilio Videoがますます使いやすく〜背景画像のぼかし機能〜」で、その詳細をご確認ください。

customBackgroundJP

React クイックデプロイアプリにテキストチャットを追加

ビデオ体験にチャット機能を追加することで、補足メッセージの送信、質問、関連リンクの共有など、ビデオの主催者側を邪魔することなく、ユーザーに情報を展開する便利なチャネルを提供します。ビデオ体験にチャット機能を追加しようとしている人々のために、その開発を加速することを目的として、この機能の参照実装をReactクイックデプロイアプリケーションに追加しました。ブログ「Twilio Video Reactアプリケーションで短時間でチャット対応ビデオアプリを開発する」で、その詳細をご確認ください。

トラブルシューティング、診断、デバッグのための新ツール

診断アプリケーションとPreflight API

Twilio Videoの診断アプリケーションはオープンソースのReactJSアプリケーションとして提供されます。ビデオセッションの参加者のデバイスやソフトウェアの設定、Twilio Cloudとの接続性、ネットワークパフォーマンスをテストするアプリケーションです。TwilioのRTC Diagnostics SDKPreflight APIを使用し、エンドユーザーのネットワーク品質やデバイス設定に関するフィードバックを提供し、これにはビデオセッションの品質を改善するための推奨事項も含まれます。

TwVideoDiagJP

診断アプリの詳細については、ブログ(英語)またはREADMEをご確認ください。

JavaScript Room Monitor(ルームのモニター機能)

TwilioのJavaScript Room Monitorは、Twilio Videoに関するブラウザベースのツールで、ビデオルームに関する情報や指標をリアルタイムに表示するものです。具体的には、Twilio VideoのRoomオブジェクトから、参加者の帯域幅、パケットロス、ジッターなどの情報を収集・処理し、ビデオアプリケーションのモーダルウィンドウに表示します。

TwVideoRTMonitorJP

JavaScript Room Monitor機能は、Twilio VideoのJavaScriptベースのアプリケーションに追加することができ、進行中のビデオセッションをデバッグするなど、開発のあらゆる段階で使用できます。

JavaScript Logger(ロガー)

JavaScript Loggerを活用することで、Twilio VideoのJavaScript SDKによって生成されたログをリアルタイムでキャプチャし、アプリケーションを監視し、実運用での動作を確認することができます。

今すぐWebRTC Goを使い始める

Twilio WebRTC Goの使用は非常に簡単で、アプリケーションのコード内でルームタイプをgoと指定するだけです。つまり、Goルーム上の1対1の会話からユースケースを拡張する、P2PやGroupルームで提供される高度な機能を利用するビデオアプリケーションを構築する場合、ルームタイプの指定を適宜変更するだけで、コードを大幅に書き直す必要はありません。ルームタイプはRooms REST APIであれば都度指定することができ、Twilioのコンソール画面上であればデフォルトタイプとして設定しておくこともできます。

Rooms REST APIでの例(以下を参照)

curl -X POST https://video.twilio.com/v1/Rooms \ 
--data-urlencode "StatusCallback=http://example.org" \ 
--data-urlencode "Type=go" \ 
--data-urlencode "UniqueName=DailyStandup" \ 
-u ACxxxxxxxxxx:your_auth_token

Twilioコンソールでのデフォルト指定(以下を参照)

TwVideoRoomJP

また、Twilio Videoのほぼ全ての機能を備えた参照アプリケーションを5分以内にデプロイすることも可能です。

Reactアプリケーションを例として、ターミナル ウィンドウで次のコマンドを実行することで、WebRTC Goルームを使用するようにアプリケーションを設定し、デプロイすることができます。

# Clone the web application 
$ git clone https://github.com/twilio/twilio-video-app-react 

# Change directories 
$ cd twilio-video-app-react 

# Build the application 
$ npm install 

# Install the Twilio CLI 
$ npm install -g twilio-cli

# Login to your Twilio account using your Account SID and Auth Token 
$ twilio login 

# Install the RTC plugin 
$ twilio plugins:install @twilio-labs/plugin-rtc 

# Deploy! 
$ npm run deploy:twilio-cli -- --room-type go 

deploying app... done Web App URL: https://video-app-1111-1111-dev.twil.io?passcode=11111111111111 
Passcode: 111 111 1111 1111 
Room Type: go

今後の展望

2020年10月に実施された弊社ユーザーカンファレンスでWebRTC Goルーム機能(無料機能)のベータリリースを発表し、2021年10月実施の同カンファレンスのタイミングでWebRTC Goルームに関連する機能拡張(英語ページ、日本語ページ(ページ真ん中辺り))を実施しました。これにより、WebRTC Goルームを用いてTwilio Videoの評価利用を開始し、その上位ルームにスイッチすることで該当ビデオアプリケーションの商用展開を図るという流れが実施しやすくなったものと考えています。

このブログをお読みいただきTwilio Video、そしてWebRTC Goルームに興味を持っていただけましたら、2021年3月実施のハンズオンウェビナーをレビューいただくことで、さらに具体的なイメージがつかめると思います。レコーディングはこちらをご覧ください。(1.5時間程度となります。)

コミュニケーションの未来を創造しましょう!


This content originally appeared on Twilio Blog and was authored by Sean Coleman


Print Share Comment Cite Upload Translate Updates
APA MLA
" » Twilio Videoを手軽に始める 〜 無料のビデオルーム「WebRTC Go」." Sean Coleman | Sciencx - Wednesday December 28, 2022, https://www.scien.cx/2022/12/28/twilio-video%e3%82%92%e6%89%8b%e8%bb%bd%e3%81%ab%e5%a7%8b%e3%82%81%e3%82%8b-%e3%80%9c-%e7%84%a1%e6%96%99%e3%81%ae%e3%83%93%e3%83%87%e3%82%aa%e3%83%ab%e3%83%bc%e3%83%a0%e3%80%8cwebrtc-go%e3%80%8d/
HARVARD
Sean Coleman | Sciencx Wednesday December 28, 2022 » Twilio Videoを手軽に始める 〜 無料のビデオルーム「WebRTC Go」., viewed ,<https://www.scien.cx/2022/12/28/twilio-video%e3%82%92%e6%89%8b%e8%bb%bd%e3%81%ab%e5%a7%8b%e3%82%81%e3%82%8b-%e3%80%9c-%e7%84%a1%e6%96%99%e3%81%ae%e3%83%93%e3%83%87%e3%82%aa%e3%83%ab%e3%83%bc%e3%83%a0%e3%80%8cwebrtc-go%e3%80%8d/>
VANCOUVER
Sean Coleman | Sciencx - » Twilio Videoを手軽に始める 〜 無料のビデオルーム「WebRTC Go」. [Internet]. [Accessed ]. Available from: https://www.scien.cx/2022/12/28/twilio-video%e3%82%92%e6%89%8b%e8%bb%bd%e3%81%ab%e5%a7%8b%e3%82%81%e3%82%8b-%e3%80%9c-%e7%84%a1%e6%96%99%e3%81%ae%e3%83%93%e3%83%87%e3%82%aa%e3%83%ab%e3%83%bc%e3%83%a0%e3%80%8cwebrtc-go%e3%80%8d/
CHICAGO
" » Twilio Videoを手軽に始める 〜 無料のビデオルーム「WebRTC Go」." Sean Coleman | Sciencx - Accessed . https://www.scien.cx/2022/12/28/twilio-video%e3%82%92%e6%89%8b%e8%bb%bd%e3%81%ab%e5%a7%8b%e3%82%81%e3%82%8b-%e3%80%9c-%e7%84%a1%e6%96%99%e3%81%ae%e3%83%93%e3%83%87%e3%82%aa%e3%83%ab%e3%83%bc%e3%83%a0%e3%80%8cwebrtc-go%e3%80%8d/
IEEE
" » Twilio Videoを手軽に始める 〜 無料のビデオルーム「WebRTC Go」." Sean Coleman | Sciencx [Online]. Available: https://www.scien.cx/2022/12/28/twilio-video%e3%82%92%e6%89%8b%e8%bb%bd%e3%81%ab%e5%a7%8b%e3%82%81%e3%82%8b-%e3%80%9c-%e7%84%a1%e6%96%99%e3%81%ae%e3%83%93%e3%83%87%e3%82%aa%e3%83%ab%e3%83%bc%e3%83%a0%e3%80%8cwebrtc-go%e3%80%8d/. [Accessed: ]
rf:citation
» Twilio Videoを手軽に始める 〜 無料のビデオルーム「WebRTC Go」 | Sean Coleman | Sciencx | https://www.scien.cx/2022/12/28/twilio-video%e3%82%92%e6%89%8b%e8%bb%bd%e3%81%ab%e5%a7%8b%e3%82%81%e3%82%8b-%e3%80%9c-%e7%84%a1%e6%96%99%e3%81%ae%e3%83%93%e3%83%87%e3%82%aa%e3%83%ab%e3%83%bc%e3%83%a0%e3%80%8cwebrtc-go%e3%80%8d/ |

Please log in to upload a file.




There are no updates yet.
Click the Upload button above to add an update.

You must be logged in to translate posts. Please log in or register.