「AWSとWebRTCを活用してリアルタイム通信を実現したいけれど、AWSの提供するサービスがどれも似ていて迷っている…」そんな方へ。AWSが提供するビデオサービスを活用することで、さまざまなビデオソリューションの開発が可能です。
本記事では、WebRTCプラットフォームを運営するSkyWayが、WebRTCの基本から、AWSが提供するKinesis Video StreamsやKinesis Video Streams WebRTC、IVS、Chimeなどの主要サービスの違いや特徴をわかりやすく解説します。
- WebRTCとは
- AWSのWebRTCとビデオサービスについて
- Amazon Kinesis Video Streams(KVS)について
- Amazon Kinesis Video Streams with WebRTCについて
- Amazon Interactive Video Service(IVS)について
- Amazon Chimeについて
- AWS Elemental Media Servicesについて
- WebRTCを簡単に実装するには
- まとめ
WebRTCの代表的なSDKとして、NTTコミュニケーションズが開発、運営する「SkyWay」があります。 「SkyWay」とは、ビデオ・音声通話をアプリケーションに簡単に実装できる国産SDKです。⇒無料で始めてみる
WebRTCとは
AWSのWebRTCサービスについて解説する前に、まずWebRTCについて理解する必要があります。
WebRTCとは、Web Real-Time Communicationの略で、ウェブブラウザ間でリアルタイムに音声、映像、そしてデータをやり取りできるオープンソース技術です。ライセンス料は不要で、Chrome、Firefox、Safariといった主要なブラウザで利用可能です。
この技術は、TeamsやGoogle Meetなどのビデオ会議アプリだけでなく、リアルタイム通信が求められるオンラインゲームやライブストリーミングなど、さまざまな用途で活用されています。
WebRTCを活用すれば、開発者はエンドユーザーにシームレスなリアルタイムコミュニケーション体験を提供することができます。
以下の記事にてWebRTCを詳しく解説しているので、ご参考ください。
AWSのWebRTCとビデオサービスについて
AWSには、WebRTCをの技術を活用したものを含め、5つのビデオサービスがあります。
AWSの5つのビデオサービスの特徴や料金について、以下表にまとめました。
サービス名 | 特徴 | 接続範囲 | ユースケース |
---|---|---|---|
Amazon Kinesis Video Streams(KVS) |
動画や音声データを クラウドにストリーミングして 保存・再生・分析可能にする サービス |
多 対 1の接続 | ・監視カメラ映像のクラウド保存 ・IoTデバイスからのデータ収集 |
Amazon Kinesis Video Streams with WebRTC |
WebRTCを用いたリアルタイム 通信を支援するKVS の拡張版。P2P接続や低遅延 ストリーミングに対応 |
1 対 1 1 対 多 多 対 多の接続 |
・リモート監視 ・遠隔操作 ・IoTデバイスの双方向通信 |
Amazon Interactive Video Service (IVS) |
低遅延のライブ配信を簡単に 構築できるマネージド サービス。主に インタラクティブな ライブ動画に特化 |
1 対 多 の接続 | ・ゲーム配信 ・ライブQ&Aセッション ・ECサイトと連携したライブコマース |
Amazon Chime | クラウドベースのビデオ会議、 チャット、音声通話を 提供するコミュニケーション プラットフォーム |
1 対 1 1 対 多 多 対 多 の接続 |
・リモートワークでのWeb会議 ・教育やセミナーでのオンライン授業 ・ビジネスチャット |
AWS Elemental Media Service |
ライブ動画の収録、 パッケージング、配信を 行うための複数の ソリューションサービス。 オンデマンド動画の 配信にも適している |
1 対 多 の接続 | ・オンデマンド動画配信サービス ・大規模なスポーツやイベントのストリーミング配信 |
つまり、監視カメラ映像のクラウド保存や解析、またはIoTデバイスから動画データを収集する場合には、Amazon Kinesis Video Streams(KVS)が最適です。一方、赤ちゃんやペットのリモート監視、またはIoTデバイス間でのリアルタイム通信には、Amazon Kinesis Video Streams with WebRTCが適しています。
リモートワークでのWeb会議や教育現場でのオンライン授業には、会議チャットや画面共有機能を備えたAmazon Chimeが便利です。
ゲーム配信やライブコマースのように低遅延のライブ配信を行いたい場合は、Amazon Interactive Video Service (IVS)が適しています。また、大規模なライブイベント配信やオンデマンド動画サービスを構築する際には、AWS Elemental Media Service内の複数ソリューションを組み合わせることで実現可能です。
各サービスについて、詳しくご紹介します。
Amazon Kinesis Video Streams(KVS)について
Amazon Kinesis Video Streams(KVS)は、AWS IoTと組み合わせることで、スマートシティやスマートホーム、産業オートメーションなどのIoTユースケースに活用できる柔軟なソリューションを提供します。この仕組みにより、ビデオ対応の製品やサービスを迅速かつ簡単に開発・導入することが可能です。
詳細は公式サイトをご参照ください。
KVSのSDK
KVSでは専用のソフトウェア開発キット(SDK)を利用できます。KVSのSDKは、Producer SDKと呼ばれています。このSDKを接続されたカメラデバイスやIoTデバイスにインストールすることで、映像や音声をクラウドに安全にストリーミングし、保存や分析を行えます。
SDKは、デバイスのメディアデータを取得し、KVSに送信するプロセス全体を効率的に管理します。これにより、開発者はビデオデータの活用に集中でき、さまざまなデバイス環境での実装を容易に行うことができます。
KVSのSDK(Producer SDK)の詳細については、以下の公式開発ガイドをご参照ください。
https://docs.aws.amazon.com/ja_jp/kinesisvideostreams/latest/dg/producer-sdk.html
KVSのGitHub(C/C++/java)
KVSのGitHubリポジトリは、映像ストリーミングの開発をサポートするためのリソースが豊富に用意されています。
以下のGitHubをご参照ください。
https://github.com/awslabs/amazon-kinesis-video-streams-producer-sdk-cpp
https://github.com/awslabs/amazon-kinesis-video-streams-producer-sdk-java
KVSの料金
Amazon Kinesis Video Streams(KVS)の料金は、使用したリソースに基づく従量課金制です。以下の要素ごとに課金されます。
- データの取り込み: 1GBあたり 0.0085 USD
- データの消費: 1GBあたり 0.0085 USD(HLSでの再生は1GBあたり 0.0119 USD)
- データの保存: 1GBを1ヶ月保存するごとに 0.023 USD
- 画像生成:
- 1080p以下: 100万件あたり 10 USD
- 1080p超: 100万件あたり 18 USD
これらの料金は国や地域によって異なる場合があるため、正確な料金はAWS公式ページをご参照ください。
https://aws.amazon.com/jp/kinesis/video-streams/pricing/
Amazon Kinesis Video Streams with WebRTCについて
KVSは、WebRTCによるリアルタイム通信にも対応しており、Amazon Kinesis Video Streams with WebRTC(KVS WebRTC)と呼ばれます。KVS WebRTCは、低遅延なP2P接続を提供し、ブラウザ、モバイルアプリ、IoTデバイス間での双方向の映像・音声ストリーミングを実現します。
AWSの管理により、シグナリングサーバーやメディアリレーサーバーなど、WebRTC関連のクラウドインフラを構築・運用する必要はありません。
KVS WebRTCを利用すれば、リアルタイム通信やP2Pのライブストリーミングを活用したアプリケーションを短期間で開発できます。代表的なユースケースには以下が含まれます。
- カメラ付きインターホンやベビーモニターの双方向通信
- 自動車とモバイルデバイス間でのビデオ・オーディオ通信
- ビデオチャットやP2Pストリーミング
さらに、自動運転の高度なユースケースとして、高精細センサーのデータ共有、追い越し支援、遠隔操作、視界不良時のアシスト、インフラ連携による環境認識補助といった機能にも活用されています。
詳細は公式サイトをご参照ください。
KVS WebRTCのSDK
KVS WebRTCでは専用のソフトウェア開発キット(SDK)を利用できます。KVS WebRTCのSDKは、WebRTC SDKと呼ばれおり、WebRTCを活用したリアルタイム通信アプリケーションを簡単に構築するためのツールです。
このSDKは、JavaScriptやC、AndroidおよびiOSなどの多様なプラットフォームに対応し、デバイス間での低遅延通信やメディアストリーミングを効率的に実現します。
KVS WebRTCのSDK(WebRTC SDK)の詳細については、以下の公式開発ガイドをご参照ください。
https://docs.aws.amazon.com/ja_jp/kinesisvideostreams/latest/dg/producer-sdk.html
KVS WebRTCのGitHub(JavaScript/C/iOS/Android)
KVSのGitHubリポジトリは、WebRTCを活用したリアルタイム通信の開発をサポートするためのリソースが豊富に用意されています。
以下のGitHubをご参照ください。
https://github.com/awslabs/amazon-kinesis-video-streams-webrtc-sdk-js
https://github.com/awslabs/amazon-kinesis-video-streams-webrtc-sdk-c
https://github.com/awslabs/amazon-kinesis-video-streams-webrtc-sdk-ios
https://github.com/awslabs/amazon-kinesis-video-streams-webrtc-sdk-android
KVS WebRTCの料金
Amazon Kinesis Video Streams with WebRTCの料金は、使用したリソースに基づく従量課金制です。以下の要素ごとに課金されます。
- シグナリングチャネル: 1チャネルあたり月額 0.03 USD
- シグナリングメッセージ: 100万件あたり 2.25 USD
- TURNストリーミング時間: 1000分あたり 0.12 USD
- WebRTC経由のメディア取り込み: 1分あたり 0.0034 USD
これらの料金は国や地域によって異なる場合があるため、正確な料金はAWS公式ページをご参照ください。
https://aws.amazon.com/jp/kinesis/video-streams/pricing/
KVS WebRTCとKVSの比較
ここまで説明してきたように、KVCとKVS WebRTCにはストリーミング方法が大きく異なります。
KVSはデバイスから時系列で動画データを収集・保存し、AIや分析ツール(例: Amazon RekognitionやSageMaker)と統合できる、主に録画データや非リアルタイムの用途向けです。
一方、KVS WebRTCは、双方向のリアルタイムストリーミングします。シグナリングやTURN/STUNサーバーを使ってデバイス間を接続し、低遅延で通信でき、ビデオ通話やリアルタイム制御に最適です。
KVSとKVS WebRTCを使い分けるための、比較表を以下にまとめました。
Kinesis Video Streams (KVS) | Kinesis Video Streams WebRTC | |
---|---|---|
動画データのクラウド保存 機械学習サービスでの分析 |
◯ | ✗ |
双方向ストリーミング | ✗ | ◯ |
ライブ配信の遅延時間 | 2秒~ | 1秒未満 |
利用するSDK | Producer SDK | WebRTC SDK |
詳細は、AWSの公式ブログをご参照ください。 https://aws.amazon.com/jp/blogs/news/choose-the-right-aws-video-service-for-your-use-case/
Amazon Interactive Video Service(IVS)について
Amazon Interactive Video Service(IVS)は、低遅延でのライブストリーミングを簡単に実現できるフルマネージドサービスです。このサービスは、グローバルなAWSインフラを活用し、リアルタイムでのインタラクティブなビデオ体験を提供します。
主な特徴は以下の通りです。
- 低遅延: ライブイベントやゲーム配信に適した1秒未満の遅延を実現。
- 高スケーラビリティ: 数百万人規模の同時視聴者にも対応可能。
- 簡単な統合: インタラクティブな機能(投票、チャット、カスタムレイアウト)を迅速にアプリに統合。
上記の特徴から代表的なユースケースには以下が挙げられます。
- ゲーム実況配信
- ECサイトと連携したライブコマース
Amazon IVSを活用することで、高品質かつ動的なライブストリーミングを短期間で構築できます。
詳細は以下の公式サイトをご参照ください。
https://aws.amazon.com/jp/ivs/
IVSの料金
Amazon IVSの料金は、主に以下の要素に基づいて課金されます。
- 低遅延ストリーミング
- 入力動画(Video Input): 動画の送信時間に応じて、チャンネルのタイプ(標準、基本、高度HDなど)ごとに異なる料金が発生。例: 標準チャンネルで1時間あたり2.00 USD。
- 出力動画(Video Output): 解像度(SD、HD、Full HD)に応じた時間単位の料金が課金。例: 北米のSD出力で1時間あたり0.036 USD。
- リアルタイムストリーミング
- 参加者時間(Participant Hours): ステージに接続するホストや視聴者ごとに課金。例: 標準視聴者1時間あたり0.072 USD。
- チャット機能
- メッセージ送信・配信: メッセージ数に基づき課金。例: 送信1,000件で0.56 USD。
無料利用枠も提供されており、新規AWSアカウントでは12か月間、基本チャンネルで5時間の動画入力や、100時間のSD出力が無料です。
料金は使った分だけの従量課金制で、視聴者数や解像度、配信地域によって異なるため、詳細は公式サイトを参照してください。
https://aws.amazon.com/jp/ivs/pricing/
IVSのSDKとAPI
Amazon IVSのSDKとAPIは、開発者がライブストリーミングアプリケーションを迅速かつ効率的に構築するためのツールを提供します。これらはモバイル(iOS、Android)およびWeb環境での映像・音声の配信と受信をサポートします。
- モバイルとWeb対応: iOS、Android用のモバイルSDKおよびブラウザ向けのWeb SDKを利用可能。
- リアルタイムストリーミング: 300ミリ秒以下の低遅延で、視聴者とインタラクティブなエクスペリエンスを実現。
- 多機能API: 映像配信、チャット、デバイスカメラや画面共有の制御を含む多様な機能をサポート。
これにより、開発者は複雑なストリーミング要件を簡単に実装し、視聴者に高品質な体験を提供できます。
詳細は以下の公式サイトをご参照ください。
https://docs.aws.amazon.com/ivs/
IVSのGithub
Amazon IVSのGitHubリポジトリは、開発をサポートするためのリソースが豊富に用意されており、IVSには複数あります。
以下のGitHubをご参照ください。
https://github.com/orgs/aws-samples/repositories?language=&q=ivs&sort=&type=all
Amazon Chimeについて
Amazon Chimeは、ビデオ会議、チャット、音声通話を1つのアプリケーションで提供するAWSのコミュニケーションサービスです。企業内外でのオンライン会議やビジネス通話、画面共有をシームレスに行えるため、業務の効率化に役立ちます。
主な特徴は以下の通りです。
- マルチデバイス対応: Windows、Mac、iOS、Android、Webブラウザで利用可能。
- 高機能会議: HDビデオ、ダイヤルイン番号、会議チャット、画面共有をサポート。
- 管理機能: SSOやポリシー設定などのエンタープライズ管理が簡単に行える管理コンソールを提供。
上記の特徴から代表的なユースケースには以下が挙げられます。
- リモートワーク: チームメンバーとの日常的な会議やチャットで効率的なコラボレーションを実現。
- 顧客対応: 外部クライアントとの商談やカスタマーサポートのビデオ会議で信頼を構築。
- 教育・トレーニング: リモート学習や従業員トレーニングを実施するための使いやすいツール。
Amazon Chimeは、さまざまな業界や状況で、柔軟かつ効率的なコミュニケーション基盤として活用されています。
詳細は公式サイトをご参照ください。
https://aws.amazon.com/jp/chime/
Chimeの料金
Amazon Chimeは従量課金制を採用しており、使用した分だけ支払う仕組みです。Basic機能は無料で利用可能で、Pro機能や追加機能は必要に応じて課金されます。
- Basic機能: 無料。チャット、Chime 間での音声通話、会議への出席など。
- Pro機能: 日ごとに課金。1日あたり1ユーザー3 USD(例: 1カ月5日利用で15 USD)。
- Business Calling:
- インバウンドコール: アメリカ国内通話は1分あたり0.002216 USD。
- 電話番号: 1つにつき月1 USD。通話やSMSは使用量に応じて課金。
初回利用時には30日間の無料トライアルが提供され、すべてのPro機能を試すことが可能です。また、Chime-to-Chime間の通話では追加料金が発生しないため、コストを抑えた運用が実現できます。
企業規模や利用頻度に応じて柔軟にカスタマイズ可能で、コスト効率の高いコミュニケーションソリューションを提供します。
詳細は公式サイトをご参照ください。
https://aws.amazon.com/jp/chime/pricing/
Amazon Chime SDK
Amazon Chime SDKは、音声、ビデオ、画面共有などのリアルタイムコミュニケーション機能をWebアプリやモバイルアプリに統合するためのツールです。これにより、複雑な管理を省略し、迅速にシステムの構築が可能になります。
以下が主な機能と特徴です。
- 音声とビデオ: 高品質な通話や会議を簡単に実装。
- 画面共有: リアルタイムでの共同作業を支援。
- チャット機能: メッセージングAPIでスムーズなコミュニケーションを実現。
Amazon Chime SDKは、WebRTCを基盤とした柔軟性のある設計を採用しており、幅広いデバイスやネットワーク条件に対応しています。公式ドキュメントを確認することで、詳細な実装手順を学べます。
詳細は以下の公式サイトをご参照ください。
https://docs.aws.amazon.com/chime-sdk/
ChimeのGithub
Amazon ChimeのGitHubリポジトリは、開発をサポートするためのリソースが豊富に用意されており、Chimeには複数あります。
以下のGitHubをご参照ください。
https://github.com/orgs/aws-samples/repositories?language=&q=Chime&sort=&type=all
AWS Elemental Media Servicesについて
AWS Elemental Media Servicesは、クラウドベースで動画コンテンツの処理、保護、配信を行うサービス群です。これにより、高品質のライブ配信やオンデマンド動画の提供が簡単に実現できます。
AWS Elemental Media Servicesには、以下のサービスが存在し、KVSやIVSもその一つにあたります。
- AWS Deadline Cloud
- Amazon Interactive Video Service
- AWS Elemental アプライアンスとソフトウェア
- AWS Elemental MediaConnect
- AWS Elemental MediaConvert
- AWS Elemental MediaLive
- AWS Elemental MediaPackage
- AWS Elemental MediaStore
- AWS Elemental MediaTailor
- AWS Thinkbox Deadline
- AWS Thinkbox Frost
- AWS Thinkbox Krakatoa
- AWS Thinkbox Stoke
- AWS Thinkbox XMesh
- Amazon Kinesis Video Streams
主な特徴は以下の通りです。
- ライブ配信対応: AWS Elemental MediaLiveと連携してエンコードされた動画を複数のストリーミング形式に変換。
- オンデマンド対応: 動画ライブラリの作成と管理を簡略化。
- DRMサポート: 著作権保護を強化し、セキュリティを確保。
- 視聴者需要に応じた自動スケーリング: トラフィックの増減に対応し、安定した配信を実現。
上記の特徴から代表的なユースケースには以下が挙げられます。
- テレビ放送やスポーツイベントのライブ配信
- 動画オンデマンドサービス(VOD)の構築
- 教育や企業内研修用の動画配信プラットフォーム
AWSの他のメディアサービスと統合することで、効率的な動画配信システムを構築できます。
各サービスの料金やその他詳細については公式サイトをご参照ください。
https://aws.amazon.com/jp/media-services/
WebRTCを簡単に実装するには
「AWS以外でビデオ・音声通話機能を拡充したいが、WebRTC技術を活用した自社開発するのは、ノウハウや社内リソースはなく、フルスクラッチのコストもかけられない……」という方におすすめなのが、NTTコミュニケーションズが開発、運営する「SkyWay」です。
「SkyWay」とは、ビデオ・音声通話をアプリケーションに簡単に実装できる国産SDKです。
大きな特徴としては、以下が挙げられます。
- スピーディーな開発ができる:
開発資料が豊富かつ日本語でわかりやすい、国内エンジニアがサポートしてくれる - 信頼性・安全性が高い:
NTTコミュニケーションズが開発、運営する国産SDK。サービス歴は10年以上で、累計導入サービス数も21,000件以上 - 無料で開発スタート:
開発検証用として、Freeプランあり。テスト検証期間中は無料で利用可能。商用サービス提供後も基本利用料11万 + 従量課金制で安心。
WebRTCのSDKとして提供されているものは、海外製が多いため、開発ドキュメントも英語か和訳のもので開発しにくい傾向にあります。 「SkyWay」であれば、NTTグループが開発、運営する安心の国産SDKかつ、国内エンジニアがサポートしてくれるため、開発運用工数も大幅に削減でき、開発のしやすさからもおすすめです。
テスト検証用は無料のため、ぜひアカウント登録をしてみください。
まとめ
AWSはWebRTC技術を活用したKinesis Video Streams WebRTCや、低遅延のライブ配信を簡単に実現するIVS、包括的なビデオ会議ツールであるChimeなど、多彩なビデオサービスを提供しています。各サービスは、ユースケースに応じて異なる特徴を持ち、リアルタイム通信、ストリーミング、クラウド保存と分析など、さまざまなニーズに対応可能です。これらのサービスを効果的に組み合わせることで、柔軟なビデオシステムを構築できます。また、WebRTCのSDK「SkyWay」を使えば、さらに手軽にリアルタイム通信を実装できるのでおすすめです。