ストリーミング寺子屋

音声・動画のストリーミング機能を
開発するエンジニアのための
実践的なナレッジベース

【クラウド連携-2】Amazon KVSを使うメリットは何ですか?

組込みデバイスでWebRTCを使用する際の課題を解決

Amazon AWSでも使用されるWebRTCは、ウェブブラウザーへのクライアントの実装は比較的容易ですが、PC以外の組込みデバイスに実装する場合、以下のような課題があります。

課題1 Peer Connectionの処理が複雑なため工夫が必要

まず、Peer Connectionを確立するのに必要なSDPやICE候補情報を相手側のPeerに送る必要があります。
Peerが確立していない状態で相手に情報を送るという矛盾を解決するため、MQTTやRESTの中継サーバーを介した通信が良く使用されます。
次に、相手から送られてきた SDPやICE候補情報を元に通信経路や映像Formatを決定する処理の実装が必要です。ChromiumのPeer Connectionの実装などを参考にすることはできますが、その内容は難解です。

課題2 NAT越えのために、TURN / STUNサーバの準備が必要

検証用であれば無償で使用できるサーバもありますが、事業を展開する場合には、自前でTURN / STUNサーバを確保する必要があり、難易度が高くなります。


Amazon KVSを使用することで、上記のような課題を解決できることが大きなメリットです。
Amazon KVSには、クライアント実装用のSDKが各種プラットフォーム向けに用意されており、NAT越えに必要なサーバ類もAWSに準備されています。通信系はAmazon KVS 、AWSに任せ、アプリケーション本来の実装に集中する事ができます。

WebRTCについては、以下の設問も参考にしてください。

【Streaming-8】WebRTCを導入する際の技術的なポイントを教えて下さい。

Q&A

製品情報