SlideShare uma empresa Scribd logo
1 de 75
Baixar para ler offline
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
アマゾン ウェブ サービス ジャパン株式会社
ソリューションアーキテクト 山﨑 翔太
2018.03.28
【AWS Black Belt Online Seminar】
Amazon Kinesis Video Streams
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
自己紹介
山﨑 翔太
技術統括本部
ソリューションアーキテクト
• IoT や データ分析 や 機械学習 を活用して
新しい仕組みを作ることが好きです
• 好きなサービス
• Amazon Kinesis と AWS Lambda
• そして Amazon Kinesis Video Streams
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
内容についての注意点
• 本資料では2018年3月28日時点のサービス内容および価格についてご説明しています。最新の情報
はAWS公式ウェブサイト(http://aws.amazon.com)にてご確認ください。
• 資料作成には十分注意しておりますが、資料内の価格とAWS公式ウェブサイト記載の価格に相違が
あった場合、AWS公式ウェブサイトの価格を優先とさせていただきます。
• 価格は税抜表記となっています。日本居住者のお客様が東京リージョンを使用する場合、別途消費
税をご請求させていただきます。
• AWS does not offer binding price quotes. AWS pricing is publicly available and is subject to
change in accordance with the AWS Customer Agreement available at
http://aws.amazon.com/agreement/. Any pricing information included in this document is
provided only as an estimate of usage charges for AWS services based on certain
information that you have provided. Monthly charges will be based on your actual use of
AWS services, and may vary from the estimates provided.
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
このセミナーの内容
Amazon Kinesis Video Streams の特徴
Amazon Kinesis Video Streams を動かすまで
1. 動画データのフォーマット
2. プロデューサー (カメラ側)
3. コンシューマー (動画解析側)
4. デモ
Amazon Kinesis Video Streams を活用した構成例
まとめ
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
このセミナーの内容
Amazon Kinesis Video Streams の特徴
Amazon Kinesis Video Streams を動かすまで
1. 動画データのフォーマット
2. プロデューサー (カメラ側)
3. コンシューマー (動画解析側)
4. デモ
Amazon Kinesis Video Streams を活用した構成例
まとめ
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
Amazon Kinesis プラットフォーム(今まで)
ストリームデータを収集・処理するためのフルマネージドサービス群
Amazon Kinesis
Streams
ストリームデータを
処理するための
アプリケーションを
独自に構築
Amazon Kinesis
Analytics
ストリームデータを
標準的な SQL クエリ
でリアルタイムに分析
Amazon Kinesis
Firehose
ストリームデータを
S3、Redshift、
Elasticsearch Service、
Splunk へ配信
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
Amazon Kinesis
Data Firehose
ストリームデータを
S3、Redshift、
Elasticsearch Service、
Splunk へ配信
Amazon Kinesis プラットフォーム
ストリームデータを収集・処理するためのフルマネージドサービス群
Amazon Kinesis
Data Streams
Amazon Kinesis
Data Analytics
Amazon Kinesis Video Streams
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
既に東京リージョンでの一般利用が可能!
• 米国東部(バージニア北部)
• 米国西部(オレゴン)
• EU(アイルランド)
• EU(フランクフルト)
• アジアパシフィック(東京)
2018年2月現在、以下のリージョンで一般利用が可能
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
Amazon Kinesis Video Streams
ビデオストリームをクラウドへ取り込み、
低遅延/オンデマンドで分析処理に配信するためのマネージドサービス
デバイス
カメラ/マイクなど
プロデューサー
動画の送信
Amazon Kinesis Video Streams
ストリーム
動画の保存とインデックス化
コンシューマー
動画解析・加工・再配信/変換・再生
AWS ML Services
MXNet / TensorFlow
Custom Processing
(OpenCV etc)
3rd Party Partners
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
動画データ
カメラから出力される動画データ
• スマートフォン
• セキュリティカメラ
• ウェブカメラ
• 車載カメラ
• ドローン
など
Kinesis Video Streams が扱えるデータ
非動画データ
時系列にエンコードされたデータ
• 音声データ
• 熱画像
• 深度データ
• レーダー信号
• LiDAR信号
など
動画以外の時系列データも扱うことが可能
( https://en.wikipedia.org/wiki/Lidar )
※ データ構造については後述します
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
ユースケースの例
• スマートホーム
• ベビーモニタ、ウェブカメラ、防犯システムといった
カメラを装備した家庭用機器をAWSに接続
• 遠隔監視、インテリジェント照明、温度制御システム、
セキュリティソリューションなどを実現
• スマートシティ
• 交通信号機、ショッピングモール、公共イベント会場、
駐車場などに設置された多数のカメラをAWSに接続
• 膨大な量の動画データを取り込み、交通問題の解決、
犯罪の防止、緊急事態への対応といった用途に活用
• 産業オートメーション
• 電波探知器、レーザー探知器の信号、温度、深度データ
といった産業用機器の時系列データをAWS上に収集
• TensorFlow、OpenCV などの機械学習・画像解析を、
異常検知や予防保全などの産業オートメーションに活用
例:ペットモニタ
例:アンバーアラート
例:装置の予防保全
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
なぜ Kinesis Video Streams が必要なのか
動画データを収集する際の課題
• カメラ台数の増加に耐えられるスケーラビリティが必要
• データを取り出しやすい形で保存することも必要
• 信頼性も可用性もセキュリティも必要
• これらを自分で作るには、手間もコストもかかる
動画データを分析する際の課題
• ストリーム処理では、信頼性やスケーラビリティのために、
データを収集する部分と解析処理をする部分は分けたほうがよい
• そもそも、本当にやりたいことは解析処理なので、そこに集中したい
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
Kinesis Video Streams の特徴
通信および保管データの暗号化と、
IAMでのアクセス管理によるセキュリティ
データの永続的な保存とインデックス化
サーバレスなフルマネージドサービスとして提供
動画解析には低遅延でのリアルタイム処理とバッチ処理
どちらのアプリケーションも構築可能
何百万ものデバイスを接続してのストリーミング
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
アーキテクチャの概要
ストリーム
ストリーム
(内部の)
Amazon S3
プロデューサー
(AWS SDK を使用)
プロデューサー
(AWS SDK を使用)
時間ベースの
インデックス
リアルタイム処理
コンシューマー
EC2 インスタンス
バッチ処理
コンシューマー
EC2 インスタンス
インターネット
メディア
データ
メディア
データ
Kinesis Video Streams
HTTPS
HTTPS
HTTPS
HTTPS
リアルタイム処理
コンシューマー
バッチ処理
コンシューマー
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
主要なコンセプト
コンセプト名 説明
ストリーム
ライブ動画やその他の時系列データをキャプチャして保存し、
リアルタイムやバッチでデータを使用できるようにするためのリソース
プロデューサー ストリームにデータを送信するデバイスまたはソース(カメラなど)
コンシューマー
ストリームのデータをリアルタイムまたはバッチで取得して処理する
カスタムアプリケーション(動画解析アプリケーションなど)
フラグメント
短時間のフレームをまとめたシーケンスであり、固有の番号が割り当てられる。
フラグメントに属するフレームは、他のフラグメントのフレームに依存しない。
チャンク
ストリーム内でのデータの格納形式。
フラグメント、プロデューサーから送信されたメディアメタデータのコピー、
さらにはフラグメント番号、サーバー側とプロデューサー側のタイムスタンプ
などの Kinesis Video Streams 固有のメタデータで構成される。
フレーム
動画のもとになる1コマの静止画像で、フラグメントに含まれる。
必要に応じてコンシューマー側でデコードして取り出し、画像解析等に利用する。
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
フラグメントとフレーム
動画
フラグメント
フレーム
フラグメント長*
フラグメントに属するフレームは、
他のフラグメントのフレームに依存しない
* フラグメント長:1-10秒の間で、プロデューサー側にて設定
フラグメント長* フラグメント長* フラグメント長*
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
主要なコンセプトの関係性
プロデューサー
コンシューマー
GetMedia
GetMediaForFragmentList
PutMedia
フレーム
フラグメント
フラグメント3 フラグメント2 フラグメント1
フラグメント1
Kinesis Video
Pre メタデータ
Kinesis Video
Post メタデータ
メディア
メタデータ
チャンクフラグメント1
Kinesis Video
Pre メタデータ
Kinesis Video
Post メタデータ
メディア
メタデータ
チャンクフラグメント1
Kinesis Video
Pre メタデータ
Kinesis Video
Post メタデータ
メディア
メタデータ
チャンク
フラグメント1
Kinesis Video
Pre メタデータ
Kinesis Video
Post メタデータ
メディア
メタデータ
チャンクフラグメント2
Kinesis Video
Pre メタデータ
Kinesis Video
Post メタデータ
メディア
メタデータ
チャンク
フラグメント1
Kinesis Video
Pre メタデータ
Kinesis Video
Post メタデータ
メディア
メタデータ
チャンク
フラグメントを送信
チャンクとして保存
チャンクを取得
フラグメントを
取り出す
(必要に応じて)
フレームを
取り出す
ストリーム
*フラグメント番号:64ビット整数で表される識別子で、Kinesis Video Streams が受信時に生成してフラグメントに割り当てる
フラグメント番号*を生成
メディア
メタデータ
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
スケールアウトの単位
• 基本的にプロデューサーとストリームは1対1の関係
• ストリームの単位で何百万ものデバイスにスケール
• PutMedia APIに呼出頻度や帯域幅の制限があるが、
それ以外にストリームのキャパシティ管理は不要
• デバイスのプロビジョニング時に、CreateStream
APIによりストリームを動的に作成することを推奨
プロデューサー ストリーム
• ストリームとコンシューマーは1対Nの関係だが、
GetMedia API の同時接続数には制限がある
• コンシューマーは処理内容の役割ごとに分ける
• コンシューマー単位での分散処理はせず、
分散処理が必要であればフレーム単位などで考える
• 同じ理由で、不特定多数への動画配信にも向かない
PutMedia
PutMedia
PutMedia
GetMedia
GetMedia
GetMediaForFragmentList
コンシューマー
分散処理
再生
分析A
分析B
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
マネジメントコンソールの簡易ビューアー
• ストリームを選択して動画を再生可能
• 再生できるのはH.264のコーデックで圧縮された動画のみ(後述)
• 基本的には開発とテスト用途での使用を想定
動画の情報
現在時刻
からの遅延
再生時刻
の指定
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
二種類のタイムスタンプでフラグメントが管理されている
タイムスタンプの扱い
プロデューサー
コンシューマー
GetMedia
GetMediaForFragmentList
PutMedia
フラグメント1
メディア
メタデータ
フラグメント1
Kinesis Video
Pre メタデータ
Kinesis Video
Post メタデータ
メディア
メタデータ
チャンク
フラグメント1
Kinesis Video
Pre メタデータ
Kinesis Video
Post メタデータ
メディア
メタデータ
チャンク
ストリーム
producer_timestamp
をフラグメントと
一緒に送信
producer_timestamp
server_timestamp
server_timestamp
をチャンクに追加
producer_timestamp
または
server_timestamp
を指定して
チャンクを取得可能
producer_timestamp: プロデューサー側でそのフラグメントの記録を開始した時刻
server_timestamp : Kinesis Video Streams がフラグメントの受信を開始した時刻
https://docs.aws.amazon.com/ja_jp/kinesisvideostreams/latest/dg/API_dataplane_PutMedia.html
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
リアルタイム処理とバッチ処理
どちらのアプリケーションも構築可能
 リアルタイム処理
最新の動画ストリームを低レイテンシで取り出すことで、
リアルタイムな動画解析アプリケーションの作成が可能
 バッチ処理
過去のタイムスタンプを指定してフラグメントを取り出す
ことで、一日分や一週間分をまとめて動画解析するような
バッチ処理のアプリケーションの作成も可能
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
通信のセキュリティ
 SSLでの通信暗号化
書き込みと読み込みのAPIを使用した通信は全てHTTPSで暗号化
 IAMでのアクセス管理
AWSの認証メカニズムである Signature Version 4 を利用して、
ストリーム単位、アクション単位でIAMでのアクセス制御が可能
例:
"Resource": arn:aws:kinesisvideo:ap-northeast-1:111122223333:stream/my-stream-*
"Resource": arn:aws:kinesisvideo:*:111122223333:stream/my-stream-1/0123456789012
"Action": "kinesisvideo:PutMedia"
"Action": "kinesisvideo:Get*"
https://docs.aws.amazon.com/ja_jp/kinesisvideostreams/latest/dg/how-iam.html
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
データの暗号化と保存期間
 データの暗号化
• Kinesis Video Streams では常にサーバーサイドの暗号化が有効になっている
• データはストレージレイヤーに書き込まれる前に暗号化され、ストレージから
取得された後に復号化される
• ストリームの作成時に、暗号化に使用する AWS KMS カスタマーマスターキー
(CMK) を指定できる(あとから変更はできない)
• ストリームの作成時にユーザー指定のキーが指定されていない場合は、
既定のキー (Kinesis Video Streams が提供) が使用される
 データの保存期間
• ストリーム作成時にデータの保存期間を指定できる(あとから変更もできる)
• 現在設定可能な範囲は、最短は0(保存しない)で最長は10年(87600時間)
• データの保存量に応じてサービス利用料金が発生する
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
運用監視に使える CloudWatch メトリクス
https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/akac-metricscollected.html
メトリクス 説明
PutMedia.Requests ストリームへの PutMedia API のリクエスト数
PutMedia.IncomingBytes PutMedia によってストリームが受信したデータのバイト数
PutMedia.FragmentIngestionLatency
フラグメントの最初と最後のバイトをストリームが受信した
時間の差(フラグメントを受信する処理のレイテンシ)
PutMedia.Success
書き込みに成功したフラグメントを1、失敗したフラグメント
を0とした平均値(フラグメントの受信成功率を表す指標)
GetMedia.Requests ストリームへの GetMedia API のリクエスト数
GetMedia.OutgoingBytes Get Media によってストリームが送信したデータのバイト数
GetMedia.MillisBehindNow
現在のサーバ時間と最後にフラグメントを送信した時間の差
(コンシューマーがフラグメントを受信する際の遅延)
GetMedia.Success
送信に成功したフラグメントを1、失敗したフラグメントを0
とした平均値(フラグメントの送信成功率を表す指標)
CloudWatch メトリクスをストリーム毎に取得可能(以下は一例)
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
Kinesis Video Streams をサポートする
プロデューサーとコンシューマー
プロデューサー (カメラ側) コンシューマー (動画解析側)
AWS SDK
kinesis-video-pic (C言語)
The Platform Independent Codebase
Producer SDK for C++
Producer SDK for Java
Android Producer Library
3rd Party の対応カメラ
Kinesis Video Streams
https://docs.aws.amazon.com/ja_jp/kinesisvideostreams/latest/dg/producer-sdk.html
https://docs.aws.amazon.com/ja_jp/kinesisvideostreams/latest/dg/parser-library.html
AWS SDK
AWS SDK for Java
Stream Parser Library
Get* API
Amazon Rekognition Video
3rd Party の解析サービス
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
Kinesis Video Streams の料金構成
料金構成 料金
(プロデューサーから)
取り込まれたデータ量 $0.01097 / 1GB
(コンシューマーに)
取り出されたデータ量 $0.01097 / 1GB
保存されたデータ量 $0.02500 / 1GB - 月
東京リージョンの場合
https://aws.amazon.com/jp/kinesis/video-streams/pricing/
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
このセミナーの内容
Amazon Kinesis Video Streams の特徴
Amazon Kinesis Video Streams を動かすまで
1. 動画データのフォーマット
2. プロデューサー (カメラ側)
3. コンシューマー (動画解析側)
4. デモ
Amazon Kinesis Video Streams を活用した構成例
まとめ
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
このセミナーの内容
Amazon Kinesis Video Streams の特徴
Amazon Kinesis Video Streams を動かすまで
1. 動画データのフォーマット
2. プロデューサー (カメラ側)
3. コンシューマー (動画解析側)
4. デモ
Amazon Kinesis Video Streams を活用した構成例
まとめ
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
コンテナ と コーデック
動画データのフォーマット
 コンテナ(コンテナフォーマット)
• 映像データと音声データなどをまとめて動画データ
にするためのファイルフォーマット(入れ物に相当)
• 入れ物なので、画質や音質には影響しない
• 代表的なコンテナとして、MP4、AVI、MOV、MPEG、
MKV、WMV などがある
 コーデック
• コンテナに入れるデータを圧縮するためのアルゴリズム
• 映像データや音声データにそれぞれコーデックがある
• コンテナによって使用可能なコーデックが決まっている
• 代表的な映像コーデックとして H.264 がある
コンテナ
MP4/AVI/MOV/MPEG/MKV/WMV など
映像データ
映像コーデック
H.264/MPEG2/
Motion JPEG/
DivX/Xvid
など
音声データ
音声コーデック
MP3/AAC/
WMA/Vorbis/
FLAC//WAV
など
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
Matroska (MKV)
オープンスタンダードなコンテナフォーマット
• 動画ファイルの拡張子には .mkv が使われる
• 異なるコーデックで圧縮された映像、音声に加えて、
副音声、字幕なども格納できる
• ほとんど全てのコーデックをサポートする
(映像コーデックはH.264/MPEG2/Xvidなど)
• ファイルが一部欠けていても他の部分を再生できる
• オープンソースで開発されている
https://www.matroska.org/technical/whatis/index.html
https://docs.aws.amazon.com/ja_jp/kinesisvideostreams/latest/dg/how-data.html
MKVのデータ構造
EBML Header
Segment
EBML Header
Segment
EBML Header
Segment
Kinesis Video Streams のAPIおよび
周辺ライブラリは、MKVのみをサポート
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
MKVコンテナの中のデータ形式
• ユーザーがコンシューマー側でデータをデコードする必要がある
• そのため、動画以外の時系列データも扱うことが可能
• ただし、マネジメントコンソール上の簡易ビューアで再生できるのは、
H.264 でエンコードされた動画のみ(メディアの種類は video/h264)
Kinesis Video Streams の活用に必須なデータ形式は、
MKVのコンテナフォーマットのみ
+
MKVコンテナの中のコーデックは問わないが、
通常の動画を扱うユースケースでは H.264 を使用することが多い
Kinesis Video Streams では、
MKVコンテナの中に格納するデータのコーデックは問わない
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
このセミナーの内容
Amazon Kinesis Video Streams の特徴
Amazon Kinesis Video Streams を動かすまで
1. 動画データのフォーマット
2. プロデューサー (カメラ側)
3. コンシューマー (動画解析側)
4. デモ
Amazon Kinesis Video Streams を活用した構成例
まとめ
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
PutMedia API
POST /putMedia HTTP/1.1
x-amzn-stream-name: StreamName
x-amzn-stream-arn: StreamARN
x-amzn-fragment-timecode-type: FragmentTimecodeType
x-amzn-producer-start-timestamp: ProducerStartTimestamp
Payload
MKVフォーマットのフラグメントをPayloadとして、HTTPS POSTする
• APIリクエストに必要なパラメータは HTTPヘッダに入れて送信する
• PutMedia API は Long Running Sessionのため、セッションを張って、
そのセッションに対してフラグメントを送信する
Request
https://docs.aws.amazon.com/ja_jp/kinesisvideostreams/latest/dg/API_dataplane_PutMedia.html
HTTP/1.1 200
Payload
Response
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
PutMedia API に必要なリクエストパラメータ
Header 内容
StreamARN Kinesis Video Stream のストリーム の Amazonリソースネーム
(StreamARN か StreamName のいずれかが必須パラメータ)
StreamName Kinesis Video Stream のストリーム名
(StreamARN か StreamName のいずれかが必須パラメータ)
FragmentTimecodeType
(ABSOLUTE | RELATIVE)
ペイロードに含まれるフラグメント内のタイムスタンプが
producerStartTimestamp からの絶対値であるか相対値で
あるかを示すタイプ
Kinesis Video Streamsはこの情報を使用して、Put Media APIで
受信したフラグメントの producer_timestamp を計算する
ProducerStartTimestamp プロデューサーがメディアの記録を開始した時点のプロデューサー
側のタイムスタンプ
(ペイロードに含まれる特定のフラグメントのタイムスタンプではない)
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
PutMedia API の注意点
• PutMedia APIを使用する前に、GetDataEndpoint APIを呼び出して
エンドポイントを取得する必要がある
• PutMedia APIには、以下の制限がある
• PutMedia APIコールの上限:1ストリームあたり、秒間5回
• 同時接続数: 1ストリームあたり1つまで(トークンローテーションをする場合は5まで)
(上限緩和は可能・制限を超えると最後の接続が有効)
• フラグメントの送信上限:1ストリームあたり、秒間5フラグラメント
• フラグメントのサイズ:最小時間 1秒、最大時間 10秒、最大サイズ 50 MB
• Kinesis Video Streamsのデータ受信処理:
1つの PutMedia セッションの間で 12.5 MB/second または 100 Mbps
(上限緩和は可能)
https://docs.aws.amazon.com/ja_jp/kinesisvideostreams/latest/dg/limits.html
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
Amazon Kinesis Video Streams Producer SDK
デバイスのメディアパイプラインを、Kinesis Video Streams の
ストリームに統合するための機能を一気通貫で提供
• 動的なストリームの作成
• AWSの認証メカニズムである Signature Version 4 を利用した
認証やトークンローテーションの仕組み
• PutMedia API を使用して、柔軟にフレームやバッファリングされた
フラグメントをストリーミング、あるいはバッチアップロードする
ためのフレームワーク
• オープンソースとして公開
プロデューサー・アプリケーションの実装を簡易にするためのSDK
https://docs.aws.amazon.com/ja_jp/kinesisvideostreams/latest/dg/producer-sdk.html
https://github.com/awslabs/amazon-kinesis-video-streams-producer-sdk-cpp
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
Producer SDK の構成
デモアプリケーション
• アプリケーション開発者向け
• ターゲットOSにインストールしてそのまま利用
• ハードウェアやビデオソースを全てサポートする
わけではないが、簡単に実行可能
SDK
• カメラから取得した動画を統合したい開発者向け
• 柔軟にカスタマイズが可能な、オブジェクト指向
の統合フレームワークを提供
コア機能を提供するライブラリ
• (カメラ)メーカー向け
• 様々なハードウェア環境に合わせて、ファーム
ウェアレベルで動画ソースとの統合を実装可能
• 他のライブラリとは完全に独立
Platform Independent Layer
(Platform Independent Codebase - C言語)
Wrapper Layer
(C++ and Java)
Linux Android
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
参考:GStreamer とは
• 動画プレイヤーのベースとなる部分などに
使われており、動画のストリーミング配信、
動画の変換・合成などの処理を実装できる
• 核となる部分以外は、プラグインのライブ
ラリ群で構成されており、様々な通信プロ
トコルやコーデックに対応している
• C++ Producer SDK には、GStreamer で
Kinesis Video Stream を使用するための
デモアプリケーションが含まれている
オープンソースのマルチメディアアプリケーション開発用フレームワーク
https://gstreamer.freedesktop.org/
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
GStreamer Webカメラ
デモアプリケーション
端末にUSB等で接続したWebカメラから、
Kinesis Video Streams に動画を送信
以下のカメラが動作対象※
• Mac (macOS) の組み込みカメラ
• Linux または Raspberry Pi の
デバイスに接続されたUSBカメラ
GStreamer のデモアプリケーション
GStreamer RTSP
デモアプリケーション
RTSPで接続可能なネットワークカメラから、
Kinesis Video Streams に動画を送信
※現在は、Windows システム上では動作しません
Mac /
Raspberry Pi
Webカメラ
Kinesis Video
Streams
GStreamer
Demo App
USB等
ネットワークカメラ
(IPカメラ)
Kinesis Video
Streams
GStreamer RTSP
Demo App
RTSP
Mac /
Raspberry Pi
HTTPS
HTTPS
rtsp://x.x.x.x/yy
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
Producer SDK のデモアプリケーションを
すぐに実行可能な環境
Android
Android
デモアプリケーション
(スマートフォン内蔵カメラ)
C++ Producer SDK
GStreamer RTSP
デモアプリケーション
(ネットワークカメラ)
macOS Ubuntu Raspberry Pi
C++ Producer SDK : https://github.com/awslabs/amazon-kinesis-video-streams-producer-sdk-cpp
Android Producer App : https://github.com/awslabs/aws-sdk-android-samples/tree/master/AmazonKinesisVideoDemoApp
GStreamer Webカメラ
デモアプリケーション
(Webカメラ、内蔵カメラ)
Android
Producer Library
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
パートナーの対応カメラ
https://www.slideshare.net/AmazonWebServicesJapan/
ivs-cto-night-dayai-machine-learning-on-aws
X16 type
SMACAME KINESIS GATEWAY
NEW
全スマカメシリーズ Kinesis Video Streamsに対応した
カメラを活用することで、
動画をそのままAWSに取り込む
ことができ、ユーザーはクラウド上
での動画処理に集中できる
例:プラネックスコミュニケーションズ株式会社様
https://www.planex.co.jp/product/network_camera.html#camera01
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
このセミナーの内容
Amazon Kinesis Video Streams の特徴
Amazon Kinesis Video Streams を動かすまで
1. 動画データのフォーマット
2. プロデューサー (カメラ側)
3. コンシューマー (動画解析側)
4. デモ
Amazon Kinesis Video Streams を活用した構成例
まとめ
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
コンシューマー側のAPI
GetMedia API
Kinesis Video Streams のストリームから、メディアデータを取得するためのAPI
• ストリーム名またはストリーム Amazon リソースネーム (ARN) と、
開始チャンクをリクエストする
• Kinesis Video Streams はフラグメント番号順にチャンクのストリームを返す
GetMediaForFragmentList API
ストリームに保存されたアーカイブデータから指定したメディアデータを取得するAPI
• フラグメントのリスト (フラグメント番号で指定)を指定してリクエストする
• 通常は、この API を呼び出す前に、ListFragments API を呼び出す
ListFragments API
フラグメントのリストを取得するAPI
• フラグメント番号またはタイムスタンプを使用して、
ストリームに対して開始位置を指定してリクエストする
リアルタイム
処理指向
バッチ
処理指向
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
GetMedia API
POST /getMedia HTTP/1.1
Content-type: application/json
{
"StartSelector": {
"AfterFragmentNumber": "string",
"ContinuationToken": "string",
"StartSelectorType": "string",
"StartTimestamp": number
},
"StreamARN": "string",
"StreamName": "string"
}
PutMediaで送信されたフラグメントを含むチャンクのストリームを
Payloadとして受信する
• リクエストパラメータは JSON形式でBodyの中に入れて送信する
• GetMedia API は Long Running Sessionのため、セッションを張って、
そのセッションの中でチャンクを受信する
Request
HTTP/1.1 200
Content-Type: ContentType
Payload
Response
https://docs.aws.amazon.com/ja_jp/kinesisvideostreams/latest/dg/API_dataplane_GetMedia.html
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
GetMedia API に必要なリクエストパラメータ
Header 内容
StartSelector ストリームから取得するチャンクの開始地点
AfterFragmentNumber GetMedia APIが返す最初のフラグメントのフラグメント番号
ContinuationToken
前のGetMediaレスポンスで返された ContinuationToken を指定す
ることで、チャンクの開始地点を判別するためのトークン
StartSelectorType
(Required)
GetMedia APIが返す最初のフラグメントの指定方法
(NOW | EARLIEST | FRAGMENT_NUMBER | CONTINUATION_TOKEN |
PRODUCER_TIMESTAMP | SERVER_TIMESTAMP)
StartTimestamp GetMedia APIが返す最初のフラグメントが含むタイムスタンプ
(StartSelectorType に合わせて producer_timestamp か server_timestamp を指定)
StreamARN Kinesis Video Stream のストリーム の Amazonリソースネーム
(StreamARN か StreamName のいずれかが必須パラメータ)
StreamName Kinesis Video Stream のストリーム名
(StreamARN か StreamName のいずれかが必須パラメータ)
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
GetMedia API の注意点
• GetMedia APIを使用する前に、GetDataEndpoint APIを呼び出して
エンドポイントを取得する必要がある
• GetMedia APIには、以下の制限がある
• GetMedia APIコールの上限:1ストリームあたり、秒間5回
• 同時接続数:1ストリームあたり3つまで
(上限緩和は可能・制限を超える接続は拒否される)
• Kinesis Video Streams のデータ送信処理:
1つのGetMedia セッションの間で 25.0 MB/second または 200 Mbps
(上限緩和は可能)
https://docs.aws.amazon.com/ja_jp/kinesisvideostreams/latest/dg/limits.html
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
GetMedia API で取得できるのは、
あくまでMKV形式のチャンクでしかない
コンシューマー
GetMedia
GetMediaForFragmentList
フレーム
フラグメント
フラグメント1
Kinesis Video
Pre メタデータ
Kinesis Video
Post メタデータ
メディア
メタデータ
チャンク
チャンクを取得
フラグメントを
取り出す
(必要に応じて)
フレームを
取り出す
ストリーム
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
Stream Parser Library
• Javaのライブラリ(Jarファイル)として提供され、
AWS SDK for Java と組み合わせてJavaアプリケーション内で使用する
• 現在の実装では、主なツールとして以下のものが含まれる
ストリームから取得したMKV形式のデータを
使いやすい形に加工するためのライブラリ
主なツール 内容
StreamingMkvReader MKVデータをストリームから MKV Element として読み取る
FragmentMetadataVisitor フラグメント(メディアデータ)およびトラック(コーデックの種類や
ピクセル幅・高さなどを含むデータ)からメタデータを取得する。
フラグメント番号やタイムスタンプの情報もここから取得出来る。
OutputSegmentMerger 異なるトラックのメタデータを単一のセグメントを持つストリームに
マージして、連続したフラグメント(チャンク)を結合する
FrameVisitor フラグメントからフレームを取り出してフレーム毎の処理に渡す。
インタフェースが提供されるので、デコードと処理内容は自分で実装する。
KinesisVideoExample Stream Parser Library の使用方法を示すサンプルアプリケーション
https://github.com/aws/amazon-kinesis-video-streams-parser-library
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
フラグメント1
Kinesis Video
Pre メタデータ
Kinesis Video
Post メタデータ
メディア
メタデータ
チャンク
動画ファイルを出力して解析する
Stream Parser Library の OutputSegmentMerger を活用する
コンシューマー
GetMedia
GetMediaForFragmentList
フラグメント
チャンクを取得
フラグメントを
取り出す
ストリーム
フラグメント1
Kinesis Video
Pre メタデータ
Kinesis Video
Post メタデータ
メディア
メタデータ
チャンクフラグメント1
Kinesis Video
Pre メタデータ
Kinesis Video
Post メタデータ
メディア
メタデータ
チャンク
OutputSegmentMerger
1本のMKV動画ファイル
やストリームに結合する
動画ファイル
プレイヤーで再生
動画解析処理へ
StreamingMkvReader
(必要に応じて)
GStreamer などで
動画形式を変換
GStreamer : https://gstreamer.freedesktop.org/
OpenPose : https://github.com/CMU-Perceptual-Computing-Lab/openpose
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
動画ファイルを出力して解析する
コンシューマ側の実装の例(一部のみ)
// Get media request loop.
while (true) {
GetMediaResult result = mediaClient.getMedia(getMediaRequest());
Path outputPath = Paths.get(OUTPUT_FILENAME);
OutputStream fileOutputStream = Files.newOutputStream(outputPath, StandardOpenOption.WRITE, StandardOpenOption.CREATE);
try (BufferedOutputStream outputStream = new BufferedOutputStream(fileOutputStream)) {
StreamingMkvReader mkvStreamReader = StreamingMkvReader.createDefault(new InputStreamParserByteSource(result.getPayload()));
OutputSegmentMerger outputSegmentMerger = OutputSegmentMerger.createDefault(fileOutputStream);
// Apply the OutputSegmentMerger to the mkv elements from the mkv stream reader.
while (mkvStreamReader.mightHaveNext()) {
Optional<MkvElement> mkvElementOptional = mkvStreamReader.nextIfAvailable();
if (mkvElementOptional.isPresent()) {
MkvElement mkvElement = mkvElementOptional.get();
// Apply the segment merger to this element.
mkvElement.accept(outputSegmentMerger);
// Flush output stream per fragment.
if (MkvTypeInfos.SEGMENT.equals(mkvElement.getElementMetaData().getTypeInfo())) {
if (mkvElement instanceof MkvEndMasterElement) {
outputStream.flush();
}
}
}
}
} catch (MkvElementVisitException | IOException e) { }
wait(GETMEDIA_INTERVAL);
}
ここでフラグメントを
マージする
※このコードは簡略化した例です
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
フラグメント1
Kinesis Video
Pre メタデータ
Kinesis Video
Post メタデータ
メディア
メタデータ
チャンク
画像フレームを取り出して解析する
Stream Parser Library の FrameVisitor を活用する
コンシューマー
GetMedia
GetMediaForFragmentList
フラグメント
チャンクを取得
フラグメントを
取り出す
ストリーム
フラグメント1
Kinesis Video
Pre メタデータ
Kinesis Video
Post メタデータ
メディア
メタデータ
チャンクフラグメント1
Kinesis Video
Pre メタデータ
Kinesis Video
Post メタデータ
メディア
メタデータ
チャンク
FrameVisitor + デコード実装
(JCodec などのライブラリを活用)
フレームを
取り出す
静止画として保存
画像解析処理へ
StreamingMkvReader
フレーム
JCodec : http://jcodec.org/
OpenCV : https://opencv.org/
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
画像フレームを取り出して解析する
// Get media request loop.
while (true) {
GetMediaResult result = mediaClient.getMedia(getMediaRequest());
// Fragment metadata visitor to extract Kinesis Video fragment metadata from the GetMedia stream.
FragmentMetadataVisitor fragmentMetadataVisitor = FragmentMetadataVisitor.create();
MyFrameProcessor frameProcessor = MyFrameProcessor.create();
FrameVisitor frameVisitor = FrameVisitor.create(frameProcessor);
MkvElementVisitor elementVisitor = new CompositeMkvElementVisitor(fragmentMetadataVisitor, frameVisitor);
StreamingMkvReader mkvStreamReader = StreamingMkvReader.createDefault(new InputStreamParserByteSource(result.getPayload()));
// Apply the OutputSegmentMerger to the mkv elements from the mkv stream reader.
try {
while (mkvStreamReader.mightHaveNext()) {
Optional<MkvElement> mkvElementOptional = mkvStreamReader.nextIfAvailable();
if (mkvElementOptional.isPresent()) {
MkvElement mkvElement = mkvElementOptional.get();
// Apply the parsing visitor to this element through the element visitor.
mkvElement.accept(elementVisitor);
}
}
} catch (MkvElementVisitException e) { }
wait(GETMEDIA_INTERVAL);
}
ここで FrameProcessor に
実装した処理が呼ばれる
コンシューマ側の実装の例(一部のみ)
実装した FrameProcessor を
FrameVisitor に渡して
ストリーム処理を初期化する
※このコードは簡略化した例です
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
画像フレームを取り出して解析する
public class MyFrameProcessor implements FrameVisitor.FrameProcessor {
private byte[] codecPrivateData;
private final H264Decoder decoder = new H264Decoder();
private final Transform transform = new Yuv420jToRgb();
@Override
public void process(Frame frame, MkvTrackMetadata trackMetadata) {
ByteBuffer frameBuffer = frame.getFrameData();
int pixelWidth = trackMetadata.getPixelWidth().get().intValue();
int pixelHeight = trackMetadata.getPixelHeight().get().intValue();
codecPrivateData = trackMetadata.getCodecPrivateData().array();
Picture rgb = Picture.create(pixelWidth, pixelHeight, ColorSpace.RGB);
BufferedImage imageFrame = new BufferedImage(pixelWidth, pixelHeight, BufferedImage.TYPE_3BYTE_BGR);
AvcCBox avcC = AvcCBox.parseAvcCBox(ByteBuffer.wrap(codecPrivateData));
decoder.addSps(avcC.getSpsList());
decoder.addPps(avcC.getPpsList());
Picture buf = Picture.create(pixelWidth, pixelHeight, ColorSpace.YUV420J);
List<ByteBuffer> byteBuffers = splitMOVPacket(frameBuffer, avcC);
Picture pic = decoder.decodeFrameFromNals(byteBuffers, buf.getData());
// 略…
Picture tmpBuf = Picture.createPicture(pixelWidth, pixelHeight, dataTemp, ColorSpace.YUV420J);
transform.transform(tmpBuf, rgb);
AWTUtil.toBufferedImage(rgb, imageFrame);
// Find the faces in the frame by OpenCV Haar cascade classifier
Mat source = Java2DFrameUtils.toMat(imageFrame);
RectVector faces = new RectVector();
faceDetector.detectMultiScale(source, faces);
LOG.info(faces.size() + " faces are detected!");
}
}
メタデータから
コーデックの種類や
ピクセル幅・高さなど
必要な情報を取り出す
FrameProcessor 実装の例
(Jcodec を利用した H264 デコード処理 と OpenCV を利用した顔検出)
OpenCV の顔検出器に
かけて画像解析を行う
※このコードは簡略化した例です
JCodec による
デコード処理をして
フレームを取り出す
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
画像フレームを取り出して解析する
画像フレームを取り出せれば、様々な画像解析にかけられる
• OpenCV や OpenPose などのライブラリを活用した画像解析
• Amazon Rekognition などの画像解析サービス
• 独自に Deep Learning などで機械学習したモデルでの推論
など・・・
OpenCV : https://opencv.org/
OpenPose : https://github.com/CMU-Perceptual-Computing-Lab/openpose
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
Amazon Rekognition Video と連携する
• Kinesis Video Streams のコンシューマーと
して Amazon Rekognition Video を使用して
動画ストリーム内の顔を検出・認識できる
• 予め Rekognition Video に覚えさせておいた
既知の顔を検出することができる
• Rekognition Video には、動画ストリームの
分析を管理するための Stream Processor が
用意されている
• 分析結果は、Rekognition Video から、
Amazon Kinesis Data Streams のストリーム
に出力される
https://docs.aws.amazon.com/rekognition/latest/dg/streaming-video.html
プロデューサー
(カメラ)
Amazon Kinesis
Video Streams
Amazon
Rekognition Video
Amazon Kinesis
Data Streams
Amazon Kinesis
Data Streams
のコンシューマー
(AWS Lambda など)
Stream Processor
起動・停止も可能
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
Rekognition Video を使用した顔認識の設定
https://docs.aws.amazon.com/ja_jp/rekognition/latest/dg/recognize-faces-in-a-video-stream.html
IAMロールを作成
Rekognition のコレクションを作成
Kinesis Video Streams のストリームを作成
コレクションで検索する顔にインデックスを付与
Kinesis Data Streams のストリームを作成
Rekognition で Stream Processor を作成
Stream Processor を起動
Kinesis Video Streams にデータを送信
Kinesis Data Streams からデータを取得して分析
$ aws rekognition create-stream-processor ¥
--name "MyKinesisVideoStreamProcessor" ¥
--input '{"KinesisVideoStream": {"Arn":
"arn:aws:kinesisvideo:ap-northeast-1:XXXXXXXXXXXX:
stream/my-video-stream/XXXXXXXXXXXXX"}}’ ¥
--stream-processor-output '{"KinesisDataStream": {"Arn":
"arn:aws:kinesis:ap-northeast-1: XXXXXXXXXXXX:
stream/AmazonRekognition"}}’ ¥
--role-arn "arn:aws:iam::XXXXXXXXXXXX:role/
MyRekognitionForKinesisRole" ¥
--settings '{"FaceSearch": {"CollectionId":"MyFaceCollection",
"FaceMatchThreshold": 80.0}}’
$ aws rekognition start-stream-processor ¥
--name "MyKinesisVideoStreamProcessor"
AWS CLI での作成例
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
Rekognition Video による顔認識の分析結果
{
"InputInformation":{
"KinesisVideo":{
"StreamArn":" arn:aws:kinesisvideo:ap-northeast-1:XXXXXXXXXXXX:stream/my-video-stream/XXXXXXXXXXXXX ",
"FragmentNumber":"91343852348798144617425944722918553756896652976",
"ServerTimestamp":1.521183662414E9,
"ProducerTimestamp":821785.28,
"FrameOffsetInSeconds":1.0
}
},
"StreamProcessorInformation":{"Status":"RUNNING"},
"FaceSearchResponse":[{
"DetectedFace":{
"BoundingBox":{"Height":0.45,"Width":0.253125,"Left":0.47109374,"Top":0.3472222},
"Confidence":99.99982,
"Landmarks":[
{"X":0.55657715,"Y":0.48627222,"Type":"eyeLeft"},
{"X":0.65045106,"Y":0.49128634,"Type":"eyeRight"},
{"X":0.60852575,"Y":0.5521961,"Type":"nose"},
{"X":0.5619316,"Y":0.6824252,"Type":"mouthLeft"},
{"X":0.6378561,"Y":0.6886522,"Type":"mouthRight"}
],
"Pose":{"Pitch":17.475468,"Roll":0.80840683,"Yaw":7.7559447},
"Quality":{"Brightness":32.13126,"Sharpness":99.93052}
},
"MatchedFaces":[{
"Similarity":90.26169,
"Face":{
"BoundingBox":{"Height":0.4275,"Width":0.4275,"Left":0.26375,"Top":0.26875},
"FaceId":"063808fa-0018-4f3d-8deb-b0dd4d18fbb3",
"Confidence":99.9869,
"ImageId":"10b0ad0a-c240-7b02-e648-237bc6f5a82b”
}
}]
}]
}
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
パートナーの動画解析サービスを利用
今後はパートナーによる動画解析サービスも利用可能に
DynamoDB
Kinesis Data Streams
IoT
Sensors
+ Tracking
Mobile
Devices
Cameras
On-premise GPU cluster/servers for training
Manufacturing
Use Case
VMD
Optimizations
Preventive
Maintenance
Visual inspection
Retail
Use Case
Automatic
Picking
Measure the
effect of
Marketing
例:株式会社ABEJA様
re:Invent2017 : https://www.youtube.com/watch?v=rjBXbktBxBg&t=39m15s
JAWS-UG AI : https://speakerdeck.com/toshitanian/amazon-kinesis-video-streams-x-deep-learning
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
このセミナーの内容
Amazon Kinesis Video Streams の特徴
Amazon Kinesis Video Streams を動かすまで
1. 動画データのフォーマット
2. プロデューサー (カメラ側)
3. コンシューマー (動画解析側)
4. デモ
Amazon Kinesis Video Streams を活用した構成例
まとめ
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
このセミナーの内容
Amazon Kinesis Video Streams の特徴
Amazon Kinesis Video Streams を動かすまで
1. 動画データのフォーマット
2. プロデューサー (カメラ側)
3. コンシューマー (動画解析側)
4. デモ
Amazon Kinesis Video Streams を活用した構成例
まとめ
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
画像ファイル
解析結果
機械学習モデルや画像処理ライブラリで
画像解析した結果をAPIで公開する
動画データ
フレーム
プロデューサー
(カメラ)
画像解析
Kinesis
Video Streams
コンシューマー
学習モデル
Amazon
S3
Amazon Kinesis
Data Firehose
Amazon
DynamoDB
AWS
Lambda
Amazon
API Gateway
API
サービス・端末
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
画像ファイル
動画解析
解析結果
解析結果
画像解析
動画・画像解析サービスを使って分析する
動画データ
フレーム
プロデューサー
(カメラ)
Kinesis
Video Streams
コンシューマー Amazon
S3
AWS
Lambda
Amazon
Rekognition Video
(3rd Party Services)
Amazon
Rekognition Image
(3rd Party Services)
Amazon Kinesis
Data Streams
Stream Processor
Amazon
DynamoDB
AWS
Lambda
動画ファイル
動画ストリーム
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
クラウドとエッジでの解析処理を使い分ける
エッジサーバ・ゲートウェイ
画像解析アプリ
ローカルLAN
AWS IoT
カメラ
Kinesis Video Streams
Producer SDK
AWS Greengrass
推論
ストリーム
処理アプリ
デプロイ
Amazon S3
Kinesis
Video Streams
コンシューマー
学習モデル
解析結果
Amazon
DynamoDB
AWS
Lambda
Amazon Kinesis
Data Firehose
Amazon
S3
Amazon
SageMaker
学習
データレイク
推論 解析結果
画像データ
動画データ
複数カメラが
必要な解析処理
学習データ
の蓄積
超低遅延応答や
通信量の削減
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
検知と認識を分けて効率的にストリーム分析を行う
エッジサーバ・ゲートウェイ
画像解析アプリ
ローカルLAN
AWS IoT
カメラ
Kinesis Video Streams
Producer SDK
AWS Greengrass
ストリーム
処理アプリ
Kinesis
Video Streams
コンシューマー
特徴量
Amazon
DynamoDB
AWS
Lambda
解析結果
画像フレーム
動画データ
人の検出
行動の認識
行動の認識
特徴量
人の検出人を検出したとき
のみ動画を送信
常に動画を送信
一時クレデンシャル
の配布
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
MKV
RTMP
解析結果をレンダリングして動画を配信する
動画データ
ライブビデオ処理
AWS Elemental
MediaLive
AWS Elemental
MediaPackage
Just In Time
パッケージ&オリジン
AWS Elemental
MediaStore
メディア最適化
ストレージ&オリジン
Amazon
CloudFront
/ CDN
CDN
AWS Elemental
MediaConvert
ファイルベース
トランスコーダ
Amazon
S3
VOD 配信元
動画ファイル
フレーム
プロデューサー
(カメラ)
画像解析
Amazon
CloudFront
/ CDN
CDN
視聴端末
MP4 や HLS など
エンコード
HLS
HLS
Kinesis
Video Streams
コンシューマー
DRM、暗号化など
AWS Lambda
HLS
MPEG-DASH
ライブ配信
(遅延は20-60秒程度)
オンデマンド配信ここまでは低遅延
(数百ミリ秒〜数秒)
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
このセミナーの内容
Amazon Kinesis Video Streams の特徴
Amazon Kinesis Video Streams を動かすまで
1. 動画データのフォーマット
2. プロデューサー (カメラ側)
3. コンシューマー (動画解析側)
4. デモ
Amazon Kinesis Video Streams を活用した構成例
まとめ
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
Amazon Kinesis Video Streams
ビデオストリームをクラウドへ取り込み、
低遅延/オンデマンドで分析処理に配信するためのマネージドサービス
デバイス
カメラ/マイクなど
プロデューサー
動画の送信
Amazon Kinesis Video Streams
ストリーム
動画の保存とインデックス化
コンシューマー
動画解析・加工・再配信/変換・再生
AWS ML Services
MXNet / TensorFlow
Custom Processing
(OpenCV etc)
3rd Party Partners
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
Kinesis Video Streams の特徴
通信および保管データの暗号化と、
IAMでのアクセス管理によるセキュリティ
データの永続的な保存とインデックス化
サーバレスなフルマネージドサービスとして提供
動画解析には低遅延でのリアルタイム処理とバッチ処理
どちらのアプリケーションも構築可能
何百万ものデバイスを接続してのストリーミング
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
さいごに
Amazon Kinesis Video Streams についてもっと知りたい方はこちら
• 公式ドキュメント - https://aws.amazon.com/kinesis/video-streams/
• ドキュメントやSDKなどのリソース - https://aws.amazon.com/jp/kinesis/video-streams/resources/
• Amazon Kinesis Video Streams Forum - https://forums.aws.amazon.com/forum.jspa?forumID=282
• C++ Producer SDK - https://github.com/awslabs/amazon-kinesis-video-streams-producer-sdk-cpp
• Java Producer SDK - https://github.com/awslabs/amazon-kinesis-video-streams-producer-sdk-java
• Android Producer Library -
https://github.com/awslabs/aws-sdk-android-samples/tree/master/AmazonKinesisVideoDemoApp
• Stream Parser Library - https://github.com/aws/amazon-kinesis-video-streams-parser-library
Amazon Kinesis Video Streams で
クラウド上に動画を取り込んで
安全でスケーラブルな動画解析を実現しましょう!
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
オンラインセミナー資料の配置場所
AWS クラウドサービス活用資料集
• https://aws.amazon.com/jp/aws-jp-introduction/
Amazon Web Services ブログ
• 最新の情報、セミナー中のQ&A等が掲載されています。
• https://aws.amazon.com/jp/blogs/news/
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
公式Twitter/Facebook
AWSの最新情報をお届けします
@awscloud_jp
検索
最新技術情報、イベント情報、お役立ち情報、
お得なキャンペーン情報などを日々更新しています!
もしくは
http://on.fb.me/1vR8yWm
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
AWSの導入、お問い合わせのご相談
AWSクラウド導入に関するご質問、お見積、資料請求をご希望のお客様は以
下のリンクよりお気軽にご相談下さい。
https://aws.amazon.com/jp/contact-us/aws-sales/
※「AWS 問い合わせ」で検索して下さい。
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
AWS Well Architected 個別技術相談会お知らせ
• Well Architectedフレームワークに基づく数十個の質問項目を元に、お客様
がAWS上で構築するシステムに潜むリスクやその回避方法をお伝えする個別
相談会です。
https://pages.awscloud.com/well-architected-consulting-2017Q4-
jp.html
• 参加無料
• 毎週火曜・木曜開催

Mais conteúdo relacionado

Mais procurados

AWS Black Belt Online Seminar 2018 AWS Certificate Manager
AWS Black Belt Online Seminar 2018 AWS Certificate ManagerAWS Black Belt Online Seminar 2018 AWS Certificate Manager
AWS Black Belt Online Seminar 2018 AWS Certificate ManagerAmazon Web Services Japan
 
20200930 AWS Black Belt Online Seminar Amazon Kinesis Video Streams
20200930 AWS Black Belt Online Seminar Amazon Kinesis Video Streams20200930 AWS Black Belt Online Seminar Amazon Kinesis Video Streams
20200930 AWS Black Belt Online Seminar Amazon Kinesis Video StreamsAmazon Web Services Japan
 
20191105 AWS Black Belt Online Seminar Amazon Route 53 Hosted Zone
20191105 AWS Black Belt Online Seminar Amazon Route 53 Hosted Zone20191105 AWS Black Belt Online Seminar Amazon Route 53 Hosted Zone
20191105 AWS Black Belt Online Seminar Amazon Route 53 Hosted ZoneAmazon Web Services Japan
 
Kinesis + Elasticsearchでつくるさいきょうのログ分析基盤
Kinesis + Elasticsearchでつくるさいきょうのログ分析基盤Kinesis + Elasticsearchでつくるさいきょうのログ分析基盤
Kinesis + Elasticsearchでつくるさいきょうのログ分析基盤Amazon Web Services Japan
 
20190911 AWS Black Belt Online Seminar AWS Batch
20190911 AWS Black Belt Online Seminar AWS Batch20190911 AWS Black Belt Online Seminar AWS Batch
20190911 AWS Black Belt Online Seminar AWS BatchAmazon Web Services Japan
 
20190521 AWS Black Belt Online Seminar Amazon Simple Email Service (Amazon SES)
20190521 AWS Black Belt Online Seminar Amazon Simple Email Service (Amazon SES)20190521 AWS Black Belt Online Seminar Amazon Simple Email Service (Amazon SES)
20190521 AWS Black Belt Online Seminar Amazon Simple Email Service (Amazon SES)Amazon Web Services Japan
 
20190319 AWS Black Belt Online Seminar Amazon FSx for Windows Server
20190319 AWS Black Belt Online Seminar Amazon FSx for Windows Server20190319 AWS Black Belt Online Seminar Amazon FSx for Windows Server
20190319 AWS Black Belt Online Seminar Amazon FSx for Windows ServerAmazon Web Services Japan
 
AWS IoT Coreを オンプレミス環境と使う際の アーキテクチャ例 (AWS IoT Deep Dive #5)
AWS IoT Coreを オンプレミス環境と使う際の アーキテクチャ例 (AWS IoT Deep Dive #5)AWS IoT Coreを オンプレミス環境と使う際の アーキテクチャ例 (AWS IoT Deep Dive #5)
AWS IoT Coreを オンプレミス環境と使う際の アーキテクチャ例 (AWS IoT Deep Dive #5)Amazon Web Services Japan
 
AWS Black Belt Online Seminar 2016 AWS上でのActive Directory構築
AWS Black Belt Online Seminar 2016 AWS上でのActive Directory構築AWS Black Belt Online Seminar 2016 AWS上でのActive Directory構築
AWS Black Belt Online Seminar 2016 AWS上でのActive Directory構築Amazon Web Services Japan
 
20200804 AWS Black Belt Online Seminar Amazon CodeGuru
20200804 AWS Black Belt Online Seminar Amazon CodeGuru20200804 AWS Black Belt Online Seminar Amazon CodeGuru
20200804 AWS Black Belt Online Seminar Amazon CodeGuruAmazon Web Services Japan
 
20190319 AWS Black Belt Online Seminar Amazon FSx for Lustre
20190319 AWS Black Belt Online Seminar Amazon FSx for Lustre20190319 AWS Black Belt Online Seminar Amazon FSx for Lustre
20190319 AWS Black Belt Online Seminar Amazon FSx for LustreAmazon Web Services Japan
 
20190731 Black Belt Online Seminar Amazon ECS Deep Dive
20190731 Black Belt Online Seminar Amazon ECS Deep Dive20190731 Black Belt Online Seminar Amazon ECS Deep Dive
20190731 Black Belt Online Seminar Amazon ECS Deep DiveAmazon Web Services Japan
 
AWS Black Belt Online Seminar 2017 Auto Scaling
AWS Black Belt Online Seminar 2017 Auto ScalingAWS Black Belt Online Seminar 2017 Auto Scaling
AWS Black Belt Online Seminar 2017 Auto ScalingAmazon Web Services Japan
 
AWS Black Belt Online Seminar AWS Direct Connect
AWS Black Belt Online Seminar AWS Direct ConnectAWS Black Belt Online Seminar AWS Direct Connect
AWS Black Belt Online Seminar AWS Direct ConnectAmazon Web Services Japan
 
20190130 AWS Black Belt Online Seminar AWS Identity and Access Management (AW...
20190130 AWS Black Belt Online Seminar AWS Identity and Access Management (AW...20190130 AWS Black Belt Online Seminar AWS Identity and Access Management (AW...
20190130 AWS Black Belt Online Seminar AWS Identity and Access Management (AW...Amazon Web Services Japan
 
20190730 AWS Black Belt Online Seminar Amazon CloudFrontの概要
20190730 AWS Black Belt Online Seminar Amazon CloudFrontの概要20190730 AWS Black Belt Online Seminar Amazon CloudFrontの概要
20190730 AWS Black Belt Online Seminar Amazon CloudFrontの概要Amazon Web Services Japan
 
パッケージソフトウェアを簡単にSaaS化!?既存の資産を使ったSaaS化手法のご紹介
パッケージソフトウェアを簡単にSaaS化!?既存の資産を使ったSaaS化手法のご紹介パッケージソフトウェアを簡単にSaaS化!?既存の資産を使ったSaaS化手法のご紹介
パッケージソフトウェアを簡単にSaaS化!?既存の資産を使ったSaaS化手法のご紹介Amazon Web Services Japan
 

Mais procurados (20)

AWS Black Belt Online Seminar 2018 AWS Certificate Manager
AWS Black Belt Online Seminar 2018 AWS Certificate ManagerAWS Black Belt Online Seminar 2018 AWS Certificate Manager
AWS Black Belt Online Seminar 2018 AWS Certificate Manager
 
20200930 AWS Black Belt Online Seminar Amazon Kinesis Video Streams
20200930 AWS Black Belt Online Seminar Amazon Kinesis Video Streams20200930 AWS Black Belt Online Seminar Amazon Kinesis Video Streams
20200930 AWS Black Belt Online Seminar Amazon Kinesis Video Streams
 
AWS Black Belt online seminar 2017 Snowball
AWS Black Belt online seminar 2017 SnowballAWS Black Belt online seminar 2017 Snowball
AWS Black Belt online seminar 2017 Snowball
 
20191105 AWS Black Belt Online Seminar Amazon Route 53 Hosted Zone
20191105 AWS Black Belt Online Seminar Amazon Route 53 Hosted Zone20191105 AWS Black Belt Online Seminar Amazon Route 53 Hosted Zone
20191105 AWS Black Belt Online Seminar Amazon Route 53 Hosted Zone
 
Kinesis + Elasticsearchでつくるさいきょうのログ分析基盤
Kinesis + Elasticsearchでつくるさいきょうのログ分析基盤Kinesis + Elasticsearchでつくるさいきょうのログ分析基盤
Kinesis + Elasticsearchでつくるさいきょうのログ分析基盤
 
20190911 AWS Black Belt Online Seminar AWS Batch
20190911 AWS Black Belt Online Seminar AWS Batch20190911 AWS Black Belt Online Seminar AWS Batch
20190911 AWS Black Belt Online Seminar AWS Batch
 
20190521 AWS Black Belt Online Seminar Amazon Simple Email Service (Amazon SES)
20190521 AWS Black Belt Online Seminar Amazon Simple Email Service (Amazon SES)20190521 AWS Black Belt Online Seminar Amazon Simple Email Service (Amazon SES)
20190521 AWS Black Belt Online Seminar Amazon Simple Email Service (Amazon SES)
 
Graph Database and Amazon Neptune
Graph Database and Amazon NeptuneGraph Database and Amazon Neptune
Graph Database and Amazon Neptune
 
20190319 AWS Black Belt Online Seminar Amazon FSx for Windows Server
20190319 AWS Black Belt Online Seminar Amazon FSx for Windows Server20190319 AWS Black Belt Online Seminar Amazon FSx for Windows Server
20190319 AWS Black Belt Online Seminar Amazon FSx for Windows Server
 
AWS IoT Coreを オンプレミス環境と使う際の アーキテクチャ例 (AWS IoT Deep Dive #5)
AWS IoT Coreを オンプレミス環境と使う際の アーキテクチャ例 (AWS IoT Deep Dive #5)AWS IoT Coreを オンプレミス環境と使う際の アーキテクチャ例 (AWS IoT Deep Dive #5)
AWS IoT Coreを オンプレミス環境と使う際の アーキテクチャ例 (AWS IoT Deep Dive #5)
 
AWS Black Belt Online Seminar 2016 AWS上でのActive Directory構築
AWS Black Belt Online Seminar 2016 AWS上でのActive Directory構築AWS Black Belt Online Seminar 2016 AWS上でのActive Directory構築
AWS Black Belt Online Seminar 2016 AWS上でのActive Directory構築
 
20200804 AWS Black Belt Online Seminar Amazon CodeGuru
20200804 AWS Black Belt Online Seminar Amazon CodeGuru20200804 AWS Black Belt Online Seminar Amazon CodeGuru
20200804 AWS Black Belt Online Seminar Amazon CodeGuru
 
20190319 AWS Black Belt Online Seminar Amazon FSx for Lustre
20190319 AWS Black Belt Online Seminar Amazon FSx for Lustre20190319 AWS Black Belt Online Seminar Amazon FSx for Lustre
20190319 AWS Black Belt Online Seminar Amazon FSx for Lustre
 
20190731 Black Belt Online Seminar Amazon ECS Deep Dive
20190731 Black Belt Online Seminar Amazon ECS Deep Dive20190731 Black Belt Online Seminar Amazon ECS Deep Dive
20190731 Black Belt Online Seminar Amazon ECS Deep Dive
 
AWS Black Belt Online Seminar 2017 Auto Scaling
AWS Black Belt Online Seminar 2017 Auto ScalingAWS Black Belt Online Seminar 2017 Auto Scaling
AWS Black Belt Online Seminar 2017 Auto Scaling
 
AWS Black Belt Online Seminar Amazon EC2
AWS Black Belt Online Seminar Amazon EC2AWS Black Belt Online Seminar Amazon EC2
AWS Black Belt Online Seminar Amazon EC2
 
AWS Black Belt Online Seminar AWS Direct Connect
AWS Black Belt Online Seminar AWS Direct ConnectAWS Black Belt Online Seminar AWS Direct Connect
AWS Black Belt Online Seminar AWS Direct Connect
 
20190130 AWS Black Belt Online Seminar AWS Identity and Access Management (AW...
20190130 AWS Black Belt Online Seminar AWS Identity and Access Management (AW...20190130 AWS Black Belt Online Seminar AWS Identity and Access Management (AW...
20190130 AWS Black Belt Online Seminar AWS Identity and Access Management (AW...
 
20190730 AWS Black Belt Online Seminar Amazon CloudFrontの概要
20190730 AWS Black Belt Online Seminar Amazon CloudFrontの概要20190730 AWS Black Belt Online Seminar Amazon CloudFrontの概要
20190730 AWS Black Belt Online Seminar Amazon CloudFrontの概要
 
パッケージソフトウェアを簡単にSaaS化!?既存の資産を使ったSaaS化手法のご紹介
パッケージソフトウェアを簡単にSaaS化!?既存の資産を使ったSaaS化手法のご紹介パッケージソフトウェアを簡単にSaaS化!?既存の資産を使ったSaaS化手法のご紹介
パッケージソフトウェアを簡単にSaaS化!?既存の資産を使ったSaaS化手法のご紹介
 

Semelhante a 20180328 AWS Black Belt Online Seminar Amazon Kinesis Video Streams

Amazon Kinesis Familyを活用したストリームデータ処理
Amazon Kinesis Familyを活用したストリームデータ処理Amazon Kinesis Familyを活用したストリームデータ処理
Amazon Kinesis Familyを活用したストリームデータ処理Amazon Web Services Japan
 
AWS 主要なサービスアップデート 6/3-11/28
AWS 主要なサービスアップデート 6/3-11/28AWS 主要なサービスアップデート 6/3-11/28
AWS 主要なサービスアップデート 6/3-11/28崇之 清水
 
AWS Black Belt Online Seminar 2017 Amazon Kinesis
AWS Black Belt Online Seminar 2017 Amazon KinesisAWS Black Belt Online Seminar 2017 Amazon Kinesis
AWS Black Belt Online Seminar 2017 Amazon KinesisAmazon Web Services Japan
 
AWS Black Belt Online Seminar 2018 動画配信 on AWS
AWS Black Belt Online Seminar 2018 動画配信 on AWSAWS Black Belt Online Seminar 2018 動画配信 on AWS
AWS Black Belt Online Seminar 2018 動画配信 on AWSAmazon Web Services Japan
 
InterBEE 2018 AWS & AWS Elemental Booth Review
InterBEE 2018 AWS & AWS Elemental Booth ReviewInterBEE 2018 AWS & AWS Elemental Booth Review
InterBEE 2018 AWS & AWS Elemental Booth ReviewAmazon Web Services Japan
 
Gaming on aws 〜ゲームにおけるAWS最新活用術〜
Gaming on aws 〜ゲームにおけるAWS最新活用術〜Gaming on aws 〜ゲームにおけるAWS最新活用術〜
Gaming on aws 〜ゲームにおけるAWS最新活用術〜Amazon Web Services Japan
 
【IVS CTO Night & Day】AWS re:Invent 2017 振り返り
【IVS CTO Night & Day】AWS re:Invent 2017 振り返り【IVS CTO Night & Day】AWS re:Invent 2017 振り返り
【IVS CTO Night & Day】AWS re:Invent 2017 振り返りAmazon Web Services Japan
 
20190326 AWS Black Belt Online Seminar Amazon CloudWatch
20190326 AWS Black Belt Online Seminar Amazon CloudWatch20190326 AWS Black Belt Online Seminar Amazon CloudWatch
20190326 AWS Black Belt Online Seminar Amazon CloudWatchAmazon Web Services Japan
 
20180220 AWS Black Belt Online Seminar - Amazon Container Services
20180220 AWS Black Belt Online Seminar - Amazon Container Services20180220 AWS Black Belt Online Seminar - Amazon Container Services
20180220 AWS Black Belt Online Seminar - Amazon Container ServicesAmazon Web Services Japan
 
20180619 AWS Black Belt Online Seminar データレイク入門: AWSで様々な規模のデータレイクを分析する効率的な方法
20180619 AWS Black Belt Online Seminar データレイク入門: AWSで様々な規模のデータレイクを分析する効率的な方法20180619 AWS Black Belt Online Seminar データレイク入門: AWSで様々な規模のデータレイクを分析する効率的な方法
20180619 AWS Black Belt Online Seminar データレイク入門: AWSで様々な規模のデータレイクを分析する効率的な方法Amazon Web Services Japan
 
20180612 AWS Black Belt Online Seminar AWS で実現するライブ動画配信とリアルタイムチャットのアーキテクチャパターン
20180612 AWS Black Belt Online Seminar AWS で実現するライブ動画配信とリアルタイムチャットのアーキテクチャパターン20180612 AWS Black Belt Online Seminar AWS で実現するライブ動画配信とリアルタイムチャットのアーキテクチャパターン
20180612 AWS Black Belt Online Seminar AWS で実現するライブ動画配信とリアルタイムチャットのアーキテクチャパターンAmazon Web Services Japan
 
20190122 AWS Black Belt Online Seminar Amazon Redshift Update
20190122 AWS Black Belt Online Seminar Amazon Redshift Update20190122 AWS Black Belt Online Seminar Amazon Redshift Update
20190122 AWS Black Belt Online Seminar Amazon Redshift UpdateAmazon Web Services Japan
 
AWS Black Belt Online Seminar 2018 re:Invent 2017 Recap Machine Learning / Da...
AWS Black Belt Online Seminar 2018 re:Invent 2017 Recap Machine Learning / Da...AWS Black Belt Online Seminar 2018 re:Invent 2017 Recap Machine Learning / Da...
AWS Black Belt Online Seminar 2018 re:Invent 2017 Recap Machine Learning / Da...Amazon Web Services Japan
 
Amazon kinesisで広がるリアルタイムデータプロセッシングとその未来
Amazon kinesisで広がるリアルタイムデータプロセッシングとその未来Amazon kinesisで広がるリアルタイムデータプロセッシングとその未来
Amazon kinesisで広がるリアルタイムデータプロセッシングとその未来Shinpei Ohtani
 
Security Operations and Automation on AWS
Security Operations and Automation on AWSSecurity Operations and Automation on AWS
Security Operations and Automation on AWSNoritaka Sekiyama
 
(AWS DevOps祭り 2018) AWS Management Toolsサービスアプデートのご紹介
(AWS DevOps祭り 2018) AWS Management Toolsサービスアプデートのご紹介(AWS DevOps祭り 2018) AWS Management Toolsサービスアプデートのご紹介
(AWS DevOps祭り 2018) AWS Management Toolsサービスアプデートのご紹介Yukitaka Ohmura
 
Serverless backendformobilegame and_aws-appsync_gamingtechnight-2
Serverless backendformobilegame and_aws-appsync_gamingtechnight-2Serverless backendformobilegame and_aws-appsync_gamingtechnight-2
Serverless backendformobilegame and_aws-appsync_gamingtechnight-2Amazon Web Services Japan
 

Semelhante a 20180328 AWS Black Belt Online Seminar Amazon Kinesis Video Streams (20)

Amazon Kinesis Familyを活用したストリームデータ処理
Amazon Kinesis Familyを活用したストリームデータ処理Amazon Kinesis Familyを活用したストリームデータ処理
Amazon Kinesis Familyを活用したストリームデータ処理
 
AWS 主要なサービスアップデート 6/3-11/28
AWS 主要なサービスアップデート 6/3-11/28AWS 主要なサービスアップデート 6/3-11/28
AWS 主要なサービスアップデート 6/3-11/28
 
AWS Black Belt Online Seminar 2017 Amazon Kinesis
AWS Black Belt Online Seminar 2017 Amazon KinesisAWS Black Belt Online Seminar 2017 Amazon Kinesis
AWS Black Belt Online Seminar 2017 Amazon Kinesis
 
AWS Black Belt Online Seminar 2018 動画配信 on AWS
AWS Black Belt Online Seminar 2018 動画配信 on AWSAWS Black Belt Online Seminar 2018 動画配信 on AWS
AWS Black Belt Online Seminar 2018 動画配信 on AWS
 
InterBEE 2018 AWS & AWS Elemental Booth Review
InterBEE 2018 AWS & AWS Elemental Booth ReviewInterBEE 2018 AWS & AWS Elemental Booth Review
InterBEE 2018 AWS & AWS Elemental Booth Review
 
Innovation and Startups Today
Innovation and Startups TodayInnovation and Startups Today
Innovation and Startups Today
 
AWS Nightschool20180618
AWS Nightschool20180618AWS Nightschool20180618
AWS Nightschool20180618
 
Gaming on aws 〜ゲームにおけるAWS最新活用術〜
Gaming on aws 〜ゲームにおけるAWS最新活用術〜Gaming on aws 〜ゲームにおけるAWS最新活用術〜
Gaming on aws 〜ゲームにおけるAWS最新活用術〜
 
【IVS CTO Night & Day】AWS re:Invent 2017 振り返り
【IVS CTO Night & Day】AWS re:Invent 2017 振り返り【IVS CTO Night & Day】AWS re:Invent 2017 振り返り
【IVS CTO Night & Day】AWS re:Invent 2017 振り返り
 
20190326 AWS Black Belt Online Seminar Amazon CloudWatch
20190326 AWS Black Belt Online Seminar Amazon CloudWatch20190326 AWS Black Belt Online Seminar Amazon CloudWatch
20190326 AWS Black Belt Online Seminar Amazon CloudWatch
 
20180220 AWS Black Belt Online Seminar - Amazon Container Services
20180220 AWS Black Belt Online Seminar - Amazon Container Services20180220 AWS Black Belt Online Seminar - Amazon Container Services
20180220 AWS Black Belt Online Seminar - Amazon Container Services
 
20180619 AWS Black Belt Online Seminar データレイク入門: AWSで様々な規模のデータレイクを分析する効率的な方法
20180619 AWS Black Belt Online Seminar データレイク入門: AWSで様々な規模のデータレイクを分析する効率的な方法20180619 AWS Black Belt Online Seminar データレイク入門: AWSで様々な規模のデータレイクを分析する効率的な方法
20180619 AWS Black Belt Online Seminar データレイク入門: AWSで様々な規模のデータレイクを分析する効率的な方法
 
20180612 AWS Black Belt Online Seminar AWS で実現するライブ動画配信とリアルタイムチャットのアーキテクチャパターン
20180612 AWS Black Belt Online Seminar AWS で実現するライブ動画配信とリアルタイムチャットのアーキテクチャパターン20180612 AWS Black Belt Online Seminar AWS で実現するライブ動画配信とリアルタイムチャットのアーキテクチャパターン
20180612 AWS Black Belt Online Seminar AWS で実現するライブ動画配信とリアルタイムチャットのアーキテクチャパターン
 
AWS All Stars ~Lightning Talks x 13~
AWS All Stars ~Lightning Talks x 13~AWS All Stars ~Lightning Talks x 13~
AWS All Stars ~Lightning Talks x 13~
 
20190122 AWS Black Belt Online Seminar Amazon Redshift Update
20190122 AWS Black Belt Online Seminar Amazon Redshift Update20190122 AWS Black Belt Online Seminar Amazon Redshift Update
20190122 AWS Black Belt Online Seminar Amazon Redshift Update
 
AWS Black Belt Online Seminar 2018 re:Invent 2017 Recap Machine Learning / Da...
AWS Black Belt Online Seminar 2018 re:Invent 2017 Recap Machine Learning / Da...AWS Black Belt Online Seminar 2018 re:Invent 2017 Recap Machine Learning / Da...
AWS Black Belt Online Seminar 2018 re:Invent 2017 Recap Machine Learning / Da...
 
Amazon kinesisで広がるリアルタイムデータプロセッシングとその未来
Amazon kinesisで広がるリアルタイムデータプロセッシングとその未来Amazon kinesisで広がるリアルタイムデータプロセッシングとその未来
Amazon kinesisで広がるリアルタイムデータプロセッシングとその未来
 
Security Operations and Automation on AWS
Security Operations and Automation on AWSSecurity Operations and Automation on AWS
Security Operations and Automation on AWS
 
(AWS DevOps祭り 2018) AWS Management Toolsサービスアプデートのご紹介
(AWS DevOps祭り 2018) AWS Management Toolsサービスアプデートのご紹介(AWS DevOps祭り 2018) AWS Management Toolsサービスアプデートのご紹介
(AWS DevOps祭り 2018) AWS Management Toolsサービスアプデートのご紹介
 
Serverless backendformobilegame and_aws-appsync_gamingtechnight-2
Serverless backendformobilegame and_aws-appsync_gamingtechnight-2Serverless backendformobilegame and_aws-appsync_gamingtechnight-2
Serverless backendformobilegame and_aws-appsync_gamingtechnight-2
 

Mais de Amazon Web Services Japan

202205 AWS Black Belt Online Seminar Amazon VPC IP Address Manager (IPAM)
202205 AWS Black Belt Online Seminar Amazon VPC IP Address Manager (IPAM)202205 AWS Black Belt Online Seminar Amazon VPC IP Address Manager (IPAM)
202205 AWS Black Belt Online Seminar Amazon VPC IP Address Manager (IPAM)Amazon Web Services Japan
 
202205 AWS Black Belt Online Seminar Amazon FSx for OpenZFS
202205 AWS Black Belt Online Seminar Amazon FSx for OpenZFS202205 AWS Black Belt Online Seminar Amazon FSx for OpenZFS
202205 AWS Black Belt Online Seminar Amazon FSx for OpenZFSAmazon Web Services Japan
 
202204 AWS Black Belt Online Seminar AWS IoT Device Defender
202204 AWS Black Belt Online Seminar AWS IoT Device Defender202204 AWS Black Belt Online Seminar AWS IoT Device Defender
202204 AWS Black Belt Online Seminar AWS IoT Device DefenderAmazon Web Services Japan
 
202204 AWS Black Belt Online Seminar Amazon Connect を活用したオンコール対応の実現
202204 AWS Black Belt Online Seminar Amazon Connect を活用したオンコール対応の実現202204 AWS Black Belt Online Seminar Amazon Connect を活用したオンコール対応の実現
202204 AWS Black Belt Online Seminar Amazon Connect を活用したオンコール対応の実現Amazon Web Services Japan
 
202204 AWS Black Belt Online Seminar Amazon Connect Salesforce連携(第1回 CTI Adap...
202204 AWS Black Belt Online Seminar Amazon Connect Salesforce連携(第1回 CTI Adap...202204 AWS Black Belt Online Seminar Amazon Connect Salesforce連携(第1回 CTI Adap...
202204 AWS Black Belt Online Seminar Amazon Connect Salesforce連携(第1回 CTI Adap...Amazon Web Services Japan
 
Amazon Game Tech Night #25 ゲーム業界向け機械学習最新状況アップデート
Amazon Game Tech Night #25 ゲーム業界向け機械学習最新状況アップデートAmazon Game Tech Night #25 ゲーム業界向け機械学習最新状況アップデート
Amazon Game Tech Night #25 ゲーム業界向け機械学習最新状況アップデートAmazon Web Services Japan
 
20220409 AWS BLEA 開発にあたって検討したこと
20220409 AWS BLEA 開発にあたって検討したこと20220409 AWS BLEA 開発にあたって検討したこと
20220409 AWS BLEA 開発にあたって検討したことAmazon Web Services Japan
 
202202 AWS Black Belt Online Seminar AWS Managed Rules for AWS WAF の活用
202202 AWS Black Belt Online Seminar AWS Managed Rules for AWS WAF の活用202202 AWS Black Belt Online Seminar AWS Managed Rules for AWS WAF の活用
202202 AWS Black Belt Online Seminar AWS Managed Rules for AWS WAF の活用Amazon Web Services Japan
 
202203 AWS Black Belt Online Seminar Amazon Connect Tasks.pdf
202203 AWS Black Belt Online Seminar Amazon Connect Tasks.pdf202203 AWS Black Belt Online Seminar Amazon Connect Tasks.pdf
202203 AWS Black Belt Online Seminar Amazon Connect Tasks.pdfAmazon Web Services Japan
 
SaaS テナント毎のコストを把握するための「AWS Application Cost Profiler」のご紹介
SaaS テナント毎のコストを把握するための「AWS Application Cost Profiler」のご紹介SaaS テナント毎のコストを把握するための「AWS Application Cost Profiler」のご紹介
SaaS テナント毎のコストを把握するための「AWS Application Cost Profiler」のご紹介Amazon Web Services Japan
 
Amazon QuickSight の組み込み方法をちょっぴりDD
Amazon QuickSight の組み込み方法をちょっぴりDDAmazon QuickSight の組み込み方法をちょっぴりDD
Amazon QuickSight の組み込み方法をちょっぴりDDAmazon Web Services Japan
 
マルチテナント化で知っておきたいデータベースのこと
マルチテナント化で知っておきたいデータベースのことマルチテナント化で知っておきたいデータベースのこと
マルチテナント化で知っておきたいデータベースのことAmazon Web Services Japan
 
機密データとSaaSは共存しうるのか!?セキュリティー重視のユーザー層を取り込む為のネットワーク通信のアプローチ
機密データとSaaSは共存しうるのか!?セキュリティー重視のユーザー層を取り込む為のネットワーク通信のアプローチ機密データとSaaSは共存しうるのか!?セキュリティー重視のユーザー層を取り込む為のネットワーク通信のアプローチ
機密データとSaaSは共存しうるのか!?セキュリティー重視のユーザー層を取り込む為のネットワーク通信のアプローチAmazon Web Services Japan
 
202202 AWS Black Belt Online Seminar Amazon Connect Customer Profiles
202202 AWS Black Belt Online Seminar Amazon Connect Customer Profiles202202 AWS Black Belt Online Seminar Amazon Connect Customer Profiles
202202 AWS Black Belt Online Seminar Amazon Connect Customer ProfilesAmazon Web Services Japan
 
Amazon Game Tech Night #24 KPIダッシュボードを最速で用意するために
Amazon Game Tech Night #24 KPIダッシュボードを最速で用意するためにAmazon Game Tech Night #24 KPIダッシュボードを最速で用意するために
Amazon Game Tech Night #24 KPIダッシュボードを最速で用意するためにAmazon Web Services Japan
 
202202 AWS Black Belt Online Seminar AWS SaaS Boost で始めるSaaS開発⼊⾨
202202 AWS Black Belt Online Seminar AWS SaaS Boost で始めるSaaS開発⼊⾨202202 AWS Black Belt Online Seminar AWS SaaS Boost で始めるSaaS開発⼊⾨
202202 AWS Black Belt Online Seminar AWS SaaS Boost で始めるSaaS開発⼊⾨Amazon Web Services Japan
 
[20220126] JAWS-UG 2022初頭までに葬ったAWSアンチパターン大紹介
[20220126] JAWS-UG 2022初頭までに葬ったAWSアンチパターン大紹介[20220126] JAWS-UG 2022初頭までに葬ったAWSアンチパターン大紹介
[20220126] JAWS-UG 2022初頭までに葬ったAWSアンチパターン大紹介Amazon Web Services Japan
 
202111 AWS Black Belt Online Seminar AWSで構築するSmart Mirrorのご紹介
202111 AWS Black Belt Online Seminar AWSで構築するSmart Mirrorのご紹介202111 AWS Black Belt Online Seminar AWSで構築するSmart Mirrorのご紹介
202111 AWS Black Belt Online Seminar AWSで構築するSmart Mirrorのご紹介Amazon Web Services Japan
 
202201 AWS Black Belt Online Seminar Apache Spark Performnace Tuning for AWS ...
202201 AWS Black Belt Online Seminar Apache Spark Performnace Tuning for AWS ...202201 AWS Black Belt Online Seminar Apache Spark Performnace Tuning for AWS ...
202201 AWS Black Belt Online Seminar Apache Spark Performnace Tuning for AWS ...Amazon Web Services Japan
 

Mais de Amazon Web Services Japan (20)

202205 AWS Black Belt Online Seminar Amazon VPC IP Address Manager (IPAM)
202205 AWS Black Belt Online Seminar Amazon VPC IP Address Manager (IPAM)202205 AWS Black Belt Online Seminar Amazon VPC IP Address Manager (IPAM)
202205 AWS Black Belt Online Seminar Amazon VPC IP Address Manager (IPAM)
 
202205 AWS Black Belt Online Seminar Amazon FSx for OpenZFS
202205 AWS Black Belt Online Seminar Amazon FSx for OpenZFS202205 AWS Black Belt Online Seminar Amazon FSx for OpenZFS
202205 AWS Black Belt Online Seminar Amazon FSx for OpenZFS
 
202204 AWS Black Belt Online Seminar AWS IoT Device Defender
202204 AWS Black Belt Online Seminar AWS IoT Device Defender202204 AWS Black Belt Online Seminar AWS IoT Device Defender
202204 AWS Black Belt Online Seminar AWS IoT Device Defender
 
Infrastructure as Code (IaC) 談義 2022
Infrastructure as Code (IaC) 談義 2022Infrastructure as Code (IaC) 談義 2022
Infrastructure as Code (IaC) 談義 2022
 
202204 AWS Black Belt Online Seminar Amazon Connect を活用したオンコール対応の実現
202204 AWS Black Belt Online Seminar Amazon Connect を活用したオンコール対応の実現202204 AWS Black Belt Online Seminar Amazon Connect を活用したオンコール対応の実現
202204 AWS Black Belt Online Seminar Amazon Connect を活用したオンコール対応の実現
 
202204 AWS Black Belt Online Seminar Amazon Connect Salesforce連携(第1回 CTI Adap...
202204 AWS Black Belt Online Seminar Amazon Connect Salesforce連携(第1回 CTI Adap...202204 AWS Black Belt Online Seminar Amazon Connect Salesforce連携(第1回 CTI Adap...
202204 AWS Black Belt Online Seminar Amazon Connect Salesforce連携(第1回 CTI Adap...
 
Amazon Game Tech Night #25 ゲーム業界向け機械学習最新状況アップデート
Amazon Game Tech Night #25 ゲーム業界向け機械学習最新状況アップデートAmazon Game Tech Night #25 ゲーム業界向け機械学習最新状況アップデート
Amazon Game Tech Night #25 ゲーム業界向け機械学習最新状況アップデート
 
20220409 AWS BLEA 開発にあたって検討したこと
20220409 AWS BLEA 開発にあたって検討したこと20220409 AWS BLEA 開発にあたって検討したこと
20220409 AWS BLEA 開発にあたって検討したこと
 
202202 AWS Black Belt Online Seminar AWS Managed Rules for AWS WAF の活用
202202 AWS Black Belt Online Seminar AWS Managed Rules for AWS WAF の活用202202 AWS Black Belt Online Seminar AWS Managed Rules for AWS WAF の活用
202202 AWS Black Belt Online Seminar AWS Managed Rules for AWS WAF の活用
 
202203 AWS Black Belt Online Seminar Amazon Connect Tasks.pdf
202203 AWS Black Belt Online Seminar Amazon Connect Tasks.pdf202203 AWS Black Belt Online Seminar Amazon Connect Tasks.pdf
202203 AWS Black Belt Online Seminar Amazon Connect Tasks.pdf
 
SaaS テナント毎のコストを把握するための「AWS Application Cost Profiler」のご紹介
SaaS テナント毎のコストを把握するための「AWS Application Cost Profiler」のご紹介SaaS テナント毎のコストを把握するための「AWS Application Cost Profiler」のご紹介
SaaS テナント毎のコストを把握するための「AWS Application Cost Profiler」のご紹介
 
Amazon QuickSight の組み込み方法をちょっぴりDD
Amazon QuickSight の組み込み方法をちょっぴりDDAmazon QuickSight の組み込み方法をちょっぴりDD
Amazon QuickSight の組み込み方法をちょっぴりDD
 
マルチテナント化で知っておきたいデータベースのこと
マルチテナント化で知っておきたいデータベースのことマルチテナント化で知っておきたいデータベースのこと
マルチテナント化で知っておきたいデータベースのこと
 
機密データとSaaSは共存しうるのか!?セキュリティー重視のユーザー層を取り込む為のネットワーク通信のアプローチ
機密データとSaaSは共存しうるのか!?セキュリティー重視のユーザー層を取り込む為のネットワーク通信のアプローチ機密データとSaaSは共存しうるのか!?セキュリティー重視のユーザー層を取り込む為のネットワーク通信のアプローチ
機密データとSaaSは共存しうるのか!?セキュリティー重視のユーザー層を取り込む為のネットワーク通信のアプローチ
 
202202 AWS Black Belt Online Seminar Amazon Connect Customer Profiles
202202 AWS Black Belt Online Seminar Amazon Connect Customer Profiles202202 AWS Black Belt Online Seminar Amazon Connect Customer Profiles
202202 AWS Black Belt Online Seminar Amazon Connect Customer Profiles
 
Amazon Game Tech Night #24 KPIダッシュボードを最速で用意するために
Amazon Game Tech Night #24 KPIダッシュボードを最速で用意するためにAmazon Game Tech Night #24 KPIダッシュボードを最速で用意するために
Amazon Game Tech Night #24 KPIダッシュボードを最速で用意するために
 
202202 AWS Black Belt Online Seminar AWS SaaS Boost で始めるSaaS開発⼊⾨
202202 AWS Black Belt Online Seminar AWS SaaS Boost で始めるSaaS開発⼊⾨202202 AWS Black Belt Online Seminar AWS SaaS Boost で始めるSaaS開発⼊⾨
202202 AWS Black Belt Online Seminar AWS SaaS Boost で始めるSaaS開発⼊⾨
 
[20220126] JAWS-UG 2022初頭までに葬ったAWSアンチパターン大紹介
[20220126] JAWS-UG 2022初頭までに葬ったAWSアンチパターン大紹介[20220126] JAWS-UG 2022初頭までに葬ったAWSアンチパターン大紹介
[20220126] JAWS-UG 2022初頭までに葬ったAWSアンチパターン大紹介
 
202111 AWS Black Belt Online Seminar AWSで構築するSmart Mirrorのご紹介
202111 AWS Black Belt Online Seminar AWSで構築するSmart Mirrorのご紹介202111 AWS Black Belt Online Seminar AWSで構築するSmart Mirrorのご紹介
202111 AWS Black Belt Online Seminar AWSで構築するSmart Mirrorのご紹介
 
202201 AWS Black Belt Online Seminar Apache Spark Performnace Tuning for AWS ...
202201 AWS Black Belt Online Seminar Apache Spark Performnace Tuning for AWS ...202201 AWS Black Belt Online Seminar Apache Spark Performnace Tuning for AWS ...
202201 AWS Black Belt Online Seminar Apache Spark Performnace Tuning for AWS ...
 

Último

[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略Ryo Sasaki
 
PHP-Conference-Odawara-2024-04-000000000
PHP-Conference-Odawara-2024-04-000000000PHP-Conference-Odawara-2024-04-000000000
PHP-Conference-Odawara-2024-04-000000000Shota Ito
 
Postman LT Fukuoka_Quick Prototype_By Daniel
Postman LT Fukuoka_Quick Prototype_By DanielPostman LT Fukuoka_Quick Prototype_By Daniel
Postman LT Fukuoka_Quick Prototype_By Danieldanielhu54
 
新人研修のまとめ 2024/04/12の勉強会で発表されたものです。
新人研修のまとめ       2024/04/12の勉強会で発表されたものです。新人研修のまとめ       2024/04/12の勉強会で発表されたものです。
新人研修のまとめ 2024/04/12の勉強会で発表されたものです。iPride Co., Ltd.
 
UPWARD_share_company_information_20240415.pdf
UPWARD_share_company_information_20240415.pdfUPWARD_share_company_information_20240415.pdf
UPWARD_share_company_information_20240415.pdffurutsuka
 
IoT in the era of generative AI, Thanks IoT ALGYAN.pptx
IoT in the era of generative AI, Thanks IoT ALGYAN.pptxIoT in the era of generative AI, Thanks IoT ALGYAN.pptx
IoT in the era of generative AI, Thanks IoT ALGYAN.pptxAtomu Hidaka
 
20240412_HCCJP での Windows Server 2025 Active Directory
20240412_HCCJP での Windows Server 2025 Active Directory20240412_HCCJP での Windows Server 2025 Active Directory
20240412_HCCJP での Windows Server 2025 Active Directoryosamut
 
スマートフォンを用いた新生児あやし動作の教示システム
スマートフォンを用いた新生児あやし動作の教示システムスマートフォンを用いた新生児あやし動作の教示システム
スマートフォンを用いた新生児あやし動作の教示システムsugiuralab
 
Amazon SES を勉強してみる その12024/04/12の勉強会で発表されたものです。
Amazon SES を勉強してみる その12024/04/12の勉強会で発表されたものです。Amazon SES を勉強してみる その12024/04/12の勉強会で発表されたものです。
Amazon SES を勉強してみる その12024/04/12の勉強会で発表されたものです。iPride Co., Ltd.
 

Último (9)

[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
 
PHP-Conference-Odawara-2024-04-000000000
PHP-Conference-Odawara-2024-04-000000000PHP-Conference-Odawara-2024-04-000000000
PHP-Conference-Odawara-2024-04-000000000
 
Postman LT Fukuoka_Quick Prototype_By Daniel
Postman LT Fukuoka_Quick Prototype_By DanielPostman LT Fukuoka_Quick Prototype_By Daniel
Postman LT Fukuoka_Quick Prototype_By Daniel
 
新人研修のまとめ 2024/04/12の勉強会で発表されたものです。
新人研修のまとめ       2024/04/12の勉強会で発表されたものです。新人研修のまとめ       2024/04/12の勉強会で発表されたものです。
新人研修のまとめ 2024/04/12の勉強会で発表されたものです。
 
UPWARD_share_company_information_20240415.pdf
UPWARD_share_company_information_20240415.pdfUPWARD_share_company_information_20240415.pdf
UPWARD_share_company_information_20240415.pdf
 
IoT in the era of generative AI, Thanks IoT ALGYAN.pptx
IoT in the era of generative AI, Thanks IoT ALGYAN.pptxIoT in the era of generative AI, Thanks IoT ALGYAN.pptx
IoT in the era of generative AI, Thanks IoT ALGYAN.pptx
 
20240412_HCCJP での Windows Server 2025 Active Directory
20240412_HCCJP での Windows Server 2025 Active Directory20240412_HCCJP での Windows Server 2025 Active Directory
20240412_HCCJP での Windows Server 2025 Active Directory
 
スマートフォンを用いた新生児あやし動作の教示システム
スマートフォンを用いた新生児あやし動作の教示システムスマートフォンを用いた新生児あやし動作の教示システム
スマートフォンを用いた新生児あやし動作の教示システム
 
Amazon SES を勉強してみる その12024/04/12の勉強会で発表されたものです。
Amazon SES を勉強してみる その12024/04/12の勉強会で発表されたものです。Amazon SES を勉強してみる その12024/04/12の勉強会で発表されたものです。
Amazon SES を勉強してみる その12024/04/12の勉強会で発表されたものです。
 

20180328 AWS Black Belt Online Seminar Amazon Kinesis Video Streams

  • 1. © 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved. アマゾン ウェブ サービス ジャパン株式会社 ソリューションアーキテクト 山﨑 翔太 2018.03.28 【AWS Black Belt Online Seminar】 Amazon Kinesis Video Streams
  • 2. © 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved. 自己紹介 山﨑 翔太 技術統括本部 ソリューションアーキテクト • IoT や データ分析 や 機械学習 を活用して 新しい仕組みを作ることが好きです • 好きなサービス • Amazon Kinesis と AWS Lambda • そして Amazon Kinesis Video Streams
  • 3. © 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved. 内容についての注意点 • 本資料では2018年3月28日時点のサービス内容および価格についてご説明しています。最新の情報 はAWS公式ウェブサイト(http://aws.amazon.com)にてご確認ください。 • 資料作成には十分注意しておりますが、資料内の価格とAWS公式ウェブサイト記載の価格に相違が あった場合、AWS公式ウェブサイトの価格を優先とさせていただきます。 • 価格は税抜表記となっています。日本居住者のお客様が東京リージョンを使用する場合、別途消費 税をご請求させていただきます。 • AWS does not offer binding price quotes. AWS pricing is publicly available and is subject to change in accordance with the AWS Customer Agreement available at http://aws.amazon.com/agreement/. Any pricing information included in this document is provided only as an estimate of usage charges for AWS services based on certain information that you have provided. Monthly charges will be based on your actual use of AWS services, and may vary from the estimates provided.
  • 4. © 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved. このセミナーの内容 Amazon Kinesis Video Streams の特徴 Amazon Kinesis Video Streams を動かすまで 1. 動画データのフォーマット 2. プロデューサー (カメラ側) 3. コンシューマー (動画解析側) 4. デモ Amazon Kinesis Video Streams を活用した構成例 まとめ
  • 5. © 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved. このセミナーの内容 Amazon Kinesis Video Streams の特徴 Amazon Kinesis Video Streams を動かすまで 1. 動画データのフォーマット 2. プロデューサー (カメラ側) 3. コンシューマー (動画解析側) 4. デモ Amazon Kinesis Video Streams を活用した構成例 まとめ
  • 6. © 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Amazon Kinesis プラットフォーム(今まで) ストリームデータを収集・処理するためのフルマネージドサービス群 Amazon Kinesis Streams ストリームデータを 処理するための アプリケーションを 独自に構築 Amazon Kinesis Analytics ストリームデータを 標準的な SQL クエリ でリアルタイムに分析 Amazon Kinesis Firehose ストリームデータを S3、Redshift、 Elasticsearch Service、 Splunk へ配信
  • 7. © 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Amazon Kinesis Data Firehose ストリームデータを S3、Redshift、 Elasticsearch Service、 Splunk へ配信 Amazon Kinesis プラットフォーム ストリームデータを収集・処理するためのフルマネージドサービス群 Amazon Kinesis Data Streams Amazon Kinesis Data Analytics Amazon Kinesis Video Streams
  • 8. © 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
  • 9. © 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved. 既に東京リージョンでの一般利用が可能! • 米国東部(バージニア北部) • 米国西部(オレゴン) • EU(アイルランド) • EU(フランクフルト) • アジアパシフィック(東京) 2018年2月現在、以下のリージョンで一般利用が可能
  • 10. © 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Amazon Kinesis Video Streams ビデオストリームをクラウドへ取り込み、 低遅延/オンデマンドで分析処理に配信するためのマネージドサービス デバイス カメラ/マイクなど プロデューサー 動画の送信 Amazon Kinesis Video Streams ストリーム 動画の保存とインデックス化 コンシューマー 動画解析・加工・再配信/変換・再生 AWS ML Services MXNet / TensorFlow Custom Processing (OpenCV etc) 3rd Party Partners
  • 11. © 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved. 動画データ カメラから出力される動画データ • スマートフォン • セキュリティカメラ • ウェブカメラ • 車載カメラ • ドローン など Kinesis Video Streams が扱えるデータ 非動画データ 時系列にエンコードされたデータ • 音声データ • 熱画像 • 深度データ • レーダー信号 • LiDAR信号 など 動画以外の時系列データも扱うことが可能 ( https://en.wikipedia.org/wiki/Lidar ) ※ データ構造については後述します
  • 12. © 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved. ユースケースの例 • スマートホーム • ベビーモニタ、ウェブカメラ、防犯システムといった カメラを装備した家庭用機器をAWSに接続 • 遠隔監視、インテリジェント照明、温度制御システム、 セキュリティソリューションなどを実現 • スマートシティ • 交通信号機、ショッピングモール、公共イベント会場、 駐車場などに設置された多数のカメラをAWSに接続 • 膨大な量の動画データを取り込み、交通問題の解決、 犯罪の防止、緊急事態への対応といった用途に活用 • 産業オートメーション • 電波探知器、レーザー探知器の信号、温度、深度データ といった産業用機器の時系列データをAWS上に収集 • TensorFlow、OpenCV などの機械学習・画像解析を、 異常検知や予防保全などの産業オートメーションに活用 例:ペットモニタ 例:アンバーアラート 例:装置の予防保全
  • 13. © 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved. なぜ Kinesis Video Streams が必要なのか 動画データを収集する際の課題 • カメラ台数の増加に耐えられるスケーラビリティが必要 • データを取り出しやすい形で保存することも必要 • 信頼性も可用性もセキュリティも必要 • これらを自分で作るには、手間もコストもかかる 動画データを分析する際の課題 • ストリーム処理では、信頼性やスケーラビリティのために、 データを収集する部分と解析処理をする部分は分けたほうがよい • そもそも、本当にやりたいことは解析処理なので、そこに集中したい
  • 14. © 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Kinesis Video Streams の特徴 通信および保管データの暗号化と、 IAMでのアクセス管理によるセキュリティ データの永続的な保存とインデックス化 サーバレスなフルマネージドサービスとして提供 動画解析には低遅延でのリアルタイム処理とバッチ処理 どちらのアプリケーションも構築可能 何百万ものデバイスを接続してのストリーミング
  • 15. © 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved. アーキテクチャの概要 ストリーム ストリーム (内部の) Amazon S3 プロデューサー (AWS SDK を使用) プロデューサー (AWS SDK を使用) 時間ベースの インデックス リアルタイム処理 コンシューマー EC2 インスタンス バッチ処理 コンシューマー EC2 インスタンス インターネット メディア データ メディア データ Kinesis Video Streams HTTPS HTTPS HTTPS HTTPS リアルタイム処理 コンシューマー バッチ処理 コンシューマー
  • 16. © 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved. 主要なコンセプト コンセプト名 説明 ストリーム ライブ動画やその他の時系列データをキャプチャして保存し、 リアルタイムやバッチでデータを使用できるようにするためのリソース プロデューサー ストリームにデータを送信するデバイスまたはソース(カメラなど) コンシューマー ストリームのデータをリアルタイムまたはバッチで取得して処理する カスタムアプリケーション(動画解析アプリケーションなど) フラグメント 短時間のフレームをまとめたシーケンスであり、固有の番号が割り当てられる。 フラグメントに属するフレームは、他のフラグメントのフレームに依存しない。 チャンク ストリーム内でのデータの格納形式。 フラグメント、プロデューサーから送信されたメディアメタデータのコピー、 さらにはフラグメント番号、サーバー側とプロデューサー側のタイムスタンプ などの Kinesis Video Streams 固有のメタデータで構成される。 フレーム 動画のもとになる1コマの静止画像で、フラグメントに含まれる。 必要に応じてコンシューマー側でデコードして取り出し、画像解析等に利用する。
  • 17. © 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved. フラグメントとフレーム 動画 フラグメント フレーム フラグメント長* フラグメントに属するフレームは、 他のフラグメントのフレームに依存しない * フラグメント長:1-10秒の間で、プロデューサー側にて設定 フラグメント長* フラグメント長* フラグメント長*
  • 18. © 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved. 主要なコンセプトの関係性 プロデューサー コンシューマー GetMedia GetMediaForFragmentList PutMedia フレーム フラグメント フラグメント3 フラグメント2 フラグメント1 フラグメント1 Kinesis Video Pre メタデータ Kinesis Video Post メタデータ メディア メタデータ チャンクフラグメント1 Kinesis Video Pre メタデータ Kinesis Video Post メタデータ メディア メタデータ チャンクフラグメント1 Kinesis Video Pre メタデータ Kinesis Video Post メタデータ メディア メタデータ チャンク フラグメント1 Kinesis Video Pre メタデータ Kinesis Video Post メタデータ メディア メタデータ チャンクフラグメント2 Kinesis Video Pre メタデータ Kinesis Video Post メタデータ メディア メタデータ チャンク フラグメント1 Kinesis Video Pre メタデータ Kinesis Video Post メタデータ メディア メタデータ チャンク フラグメントを送信 チャンクとして保存 チャンクを取得 フラグメントを 取り出す (必要に応じて) フレームを 取り出す ストリーム *フラグメント番号:64ビット整数で表される識別子で、Kinesis Video Streams が受信時に生成してフラグメントに割り当てる フラグメント番号*を生成 メディア メタデータ
  • 19. © 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved. スケールアウトの単位 • 基本的にプロデューサーとストリームは1対1の関係 • ストリームの単位で何百万ものデバイスにスケール • PutMedia APIに呼出頻度や帯域幅の制限があるが、 それ以外にストリームのキャパシティ管理は不要 • デバイスのプロビジョニング時に、CreateStream APIによりストリームを動的に作成することを推奨 プロデューサー ストリーム • ストリームとコンシューマーは1対Nの関係だが、 GetMedia API の同時接続数には制限がある • コンシューマーは処理内容の役割ごとに分ける • コンシューマー単位での分散処理はせず、 分散処理が必要であればフレーム単位などで考える • 同じ理由で、不特定多数への動画配信にも向かない PutMedia PutMedia PutMedia GetMedia GetMedia GetMediaForFragmentList コンシューマー 分散処理 再生 分析A 分析B
  • 20. © 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved. マネジメントコンソールの簡易ビューアー • ストリームを選択して動画を再生可能 • 再生できるのはH.264のコーデックで圧縮された動画のみ(後述) • 基本的には開発とテスト用途での使用を想定 動画の情報 現在時刻 からの遅延 再生時刻 の指定
  • 21. © 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved. 二種類のタイムスタンプでフラグメントが管理されている タイムスタンプの扱い プロデューサー コンシューマー GetMedia GetMediaForFragmentList PutMedia フラグメント1 メディア メタデータ フラグメント1 Kinesis Video Pre メタデータ Kinesis Video Post メタデータ メディア メタデータ チャンク フラグメント1 Kinesis Video Pre メタデータ Kinesis Video Post メタデータ メディア メタデータ チャンク ストリーム producer_timestamp をフラグメントと 一緒に送信 producer_timestamp server_timestamp server_timestamp をチャンクに追加 producer_timestamp または server_timestamp を指定して チャンクを取得可能 producer_timestamp: プロデューサー側でそのフラグメントの記録を開始した時刻 server_timestamp : Kinesis Video Streams がフラグメントの受信を開始した時刻 https://docs.aws.amazon.com/ja_jp/kinesisvideostreams/latest/dg/API_dataplane_PutMedia.html
  • 22. © 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved. リアルタイム処理とバッチ処理 どちらのアプリケーションも構築可能  リアルタイム処理 最新の動画ストリームを低レイテンシで取り出すことで、 リアルタイムな動画解析アプリケーションの作成が可能  バッチ処理 過去のタイムスタンプを指定してフラグメントを取り出す ことで、一日分や一週間分をまとめて動画解析するような バッチ処理のアプリケーションの作成も可能
  • 23. © 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved. 通信のセキュリティ  SSLでの通信暗号化 書き込みと読み込みのAPIを使用した通信は全てHTTPSで暗号化  IAMでのアクセス管理 AWSの認証メカニズムである Signature Version 4 を利用して、 ストリーム単位、アクション単位でIAMでのアクセス制御が可能 例: "Resource": arn:aws:kinesisvideo:ap-northeast-1:111122223333:stream/my-stream-* "Resource": arn:aws:kinesisvideo:*:111122223333:stream/my-stream-1/0123456789012 "Action": "kinesisvideo:PutMedia" "Action": "kinesisvideo:Get*" https://docs.aws.amazon.com/ja_jp/kinesisvideostreams/latest/dg/how-iam.html
  • 24. © 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved. データの暗号化と保存期間  データの暗号化 • Kinesis Video Streams では常にサーバーサイドの暗号化が有効になっている • データはストレージレイヤーに書き込まれる前に暗号化され、ストレージから 取得された後に復号化される • ストリームの作成時に、暗号化に使用する AWS KMS カスタマーマスターキー (CMK) を指定できる(あとから変更はできない) • ストリームの作成時にユーザー指定のキーが指定されていない場合は、 既定のキー (Kinesis Video Streams が提供) が使用される  データの保存期間 • ストリーム作成時にデータの保存期間を指定できる(あとから変更もできる) • 現在設定可能な範囲は、最短は0(保存しない)で最長は10年(87600時間) • データの保存量に応じてサービス利用料金が発生する
  • 25. © 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved. 運用監視に使える CloudWatch メトリクス https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/akac-metricscollected.html メトリクス 説明 PutMedia.Requests ストリームへの PutMedia API のリクエスト数 PutMedia.IncomingBytes PutMedia によってストリームが受信したデータのバイト数 PutMedia.FragmentIngestionLatency フラグメントの最初と最後のバイトをストリームが受信した 時間の差(フラグメントを受信する処理のレイテンシ) PutMedia.Success 書き込みに成功したフラグメントを1、失敗したフラグメント を0とした平均値(フラグメントの受信成功率を表す指標) GetMedia.Requests ストリームへの GetMedia API のリクエスト数 GetMedia.OutgoingBytes Get Media によってストリームが送信したデータのバイト数 GetMedia.MillisBehindNow 現在のサーバ時間と最後にフラグメントを送信した時間の差 (コンシューマーがフラグメントを受信する際の遅延) GetMedia.Success 送信に成功したフラグメントを1、失敗したフラグメントを0 とした平均値(フラグメントの送信成功率を表す指標) CloudWatch メトリクスをストリーム毎に取得可能(以下は一例)
  • 26. © 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Kinesis Video Streams をサポートする プロデューサーとコンシューマー プロデューサー (カメラ側) コンシューマー (動画解析側) AWS SDK kinesis-video-pic (C言語) The Platform Independent Codebase Producer SDK for C++ Producer SDK for Java Android Producer Library 3rd Party の対応カメラ Kinesis Video Streams https://docs.aws.amazon.com/ja_jp/kinesisvideostreams/latest/dg/producer-sdk.html https://docs.aws.amazon.com/ja_jp/kinesisvideostreams/latest/dg/parser-library.html AWS SDK AWS SDK for Java Stream Parser Library Get* API Amazon Rekognition Video 3rd Party の解析サービス
  • 27. © 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Kinesis Video Streams の料金構成 料金構成 料金 (プロデューサーから) 取り込まれたデータ量 $0.01097 / 1GB (コンシューマーに) 取り出されたデータ量 $0.01097 / 1GB 保存されたデータ量 $0.02500 / 1GB - 月 東京リージョンの場合 https://aws.amazon.com/jp/kinesis/video-streams/pricing/
  • 28. © 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved. このセミナーの内容 Amazon Kinesis Video Streams の特徴 Amazon Kinesis Video Streams を動かすまで 1. 動画データのフォーマット 2. プロデューサー (カメラ側) 3. コンシューマー (動画解析側) 4. デモ Amazon Kinesis Video Streams を活用した構成例 まとめ
  • 29. © 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved. このセミナーの内容 Amazon Kinesis Video Streams の特徴 Amazon Kinesis Video Streams を動かすまで 1. 動画データのフォーマット 2. プロデューサー (カメラ側) 3. コンシューマー (動画解析側) 4. デモ Amazon Kinesis Video Streams を活用した構成例 まとめ
  • 30. © 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved. コンテナ と コーデック 動画データのフォーマット  コンテナ(コンテナフォーマット) • 映像データと音声データなどをまとめて動画データ にするためのファイルフォーマット(入れ物に相当) • 入れ物なので、画質や音質には影響しない • 代表的なコンテナとして、MP4、AVI、MOV、MPEG、 MKV、WMV などがある  コーデック • コンテナに入れるデータを圧縮するためのアルゴリズム • 映像データや音声データにそれぞれコーデックがある • コンテナによって使用可能なコーデックが決まっている • 代表的な映像コーデックとして H.264 がある コンテナ MP4/AVI/MOV/MPEG/MKV/WMV など 映像データ 映像コーデック H.264/MPEG2/ Motion JPEG/ DivX/Xvid など 音声データ 音声コーデック MP3/AAC/ WMA/Vorbis/ FLAC//WAV など
  • 31. © 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Matroska (MKV) オープンスタンダードなコンテナフォーマット • 動画ファイルの拡張子には .mkv が使われる • 異なるコーデックで圧縮された映像、音声に加えて、 副音声、字幕なども格納できる • ほとんど全てのコーデックをサポートする (映像コーデックはH.264/MPEG2/Xvidなど) • ファイルが一部欠けていても他の部分を再生できる • オープンソースで開発されている https://www.matroska.org/technical/whatis/index.html https://docs.aws.amazon.com/ja_jp/kinesisvideostreams/latest/dg/how-data.html MKVのデータ構造 EBML Header Segment EBML Header Segment EBML Header Segment Kinesis Video Streams のAPIおよび 周辺ライブラリは、MKVのみをサポート
  • 32. © 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved. MKVコンテナの中のデータ形式 • ユーザーがコンシューマー側でデータをデコードする必要がある • そのため、動画以外の時系列データも扱うことが可能 • ただし、マネジメントコンソール上の簡易ビューアで再生できるのは、 H.264 でエンコードされた動画のみ(メディアの種類は video/h264) Kinesis Video Streams の活用に必須なデータ形式は、 MKVのコンテナフォーマットのみ + MKVコンテナの中のコーデックは問わないが、 通常の動画を扱うユースケースでは H.264 を使用することが多い Kinesis Video Streams では、 MKVコンテナの中に格納するデータのコーデックは問わない
  • 33. © 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved. このセミナーの内容 Amazon Kinesis Video Streams の特徴 Amazon Kinesis Video Streams を動かすまで 1. 動画データのフォーマット 2. プロデューサー (カメラ側) 3. コンシューマー (動画解析側) 4. デモ Amazon Kinesis Video Streams を活用した構成例 まとめ
  • 34. © 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved. PutMedia API POST /putMedia HTTP/1.1 x-amzn-stream-name: StreamName x-amzn-stream-arn: StreamARN x-amzn-fragment-timecode-type: FragmentTimecodeType x-amzn-producer-start-timestamp: ProducerStartTimestamp Payload MKVフォーマットのフラグメントをPayloadとして、HTTPS POSTする • APIリクエストに必要なパラメータは HTTPヘッダに入れて送信する • PutMedia API は Long Running Sessionのため、セッションを張って、 そのセッションに対してフラグメントを送信する Request https://docs.aws.amazon.com/ja_jp/kinesisvideostreams/latest/dg/API_dataplane_PutMedia.html HTTP/1.1 200 Payload Response
  • 35. © 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved. PutMedia API に必要なリクエストパラメータ Header 内容 StreamARN Kinesis Video Stream のストリーム の Amazonリソースネーム (StreamARN か StreamName のいずれかが必須パラメータ) StreamName Kinesis Video Stream のストリーム名 (StreamARN か StreamName のいずれかが必須パラメータ) FragmentTimecodeType (ABSOLUTE | RELATIVE) ペイロードに含まれるフラグメント内のタイムスタンプが producerStartTimestamp からの絶対値であるか相対値で あるかを示すタイプ Kinesis Video Streamsはこの情報を使用して、Put Media APIで 受信したフラグメントの producer_timestamp を計算する ProducerStartTimestamp プロデューサーがメディアの記録を開始した時点のプロデューサー 側のタイムスタンプ (ペイロードに含まれる特定のフラグメントのタイムスタンプではない)
  • 36. © 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved. PutMedia API の注意点 • PutMedia APIを使用する前に、GetDataEndpoint APIを呼び出して エンドポイントを取得する必要がある • PutMedia APIには、以下の制限がある • PutMedia APIコールの上限:1ストリームあたり、秒間5回 • 同時接続数: 1ストリームあたり1つまで(トークンローテーションをする場合は5まで) (上限緩和は可能・制限を超えると最後の接続が有効) • フラグメントの送信上限:1ストリームあたり、秒間5フラグラメント • フラグメントのサイズ:最小時間 1秒、最大時間 10秒、最大サイズ 50 MB • Kinesis Video Streamsのデータ受信処理: 1つの PutMedia セッションの間で 12.5 MB/second または 100 Mbps (上限緩和は可能) https://docs.aws.amazon.com/ja_jp/kinesisvideostreams/latest/dg/limits.html
  • 37. © 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Amazon Kinesis Video Streams Producer SDK デバイスのメディアパイプラインを、Kinesis Video Streams の ストリームに統合するための機能を一気通貫で提供 • 動的なストリームの作成 • AWSの認証メカニズムである Signature Version 4 を利用した 認証やトークンローテーションの仕組み • PutMedia API を使用して、柔軟にフレームやバッファリングされた フラグメントをストリーミング、あるいはバッチアップロードする ためのフレームワーク • オープンソースとして公開 プロデューサー・アプリケーションの実装を簡易にするためのSDK https://docs.aws.amazon.com/ja_jp/kinesisvideostreams/latest/dg/producer-sdk.html https://github.com/awslabs/amazon-kinesis-video-streams-producer-sdk-cpp
  • 38. © 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Producer SDK の構成 デモアプリケーション • アプリケーション開発者向け • ターゲットOSにインストールしてそのまま利用 • ハードウェアやビデオソースを全てサポートする わけではないが、簡単に実行可能 SDK • カメラから取得した動画を統合したい開発者向け • 柔軟にカスタマイズが可能な、オブジェクト指向 の統合フレームワークを提供 コア機能を提供するライブラリ • (カメラ)メーカー向け • 様々なハードウェア環境に合わせて、ファーム ウェアレベルで動画ソースとの統合を実装可能 • 他のライブラリとは完全に独立 Platform Independent Layer (Platform Independent Codebase - C言語) Wrapper Layer (C++ and Java) Linux Android
  • 39. © 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved. 参考:GStreamer とは • 動画プレイヤーのベースとなる部分などに 使われており、動画のストリーミング配信、 動画の変換・合成などの処理を実装できる • 核となる部分以外は、プラグインのライブ ラリ群で構成されており、様々な通信プロ トコルやコーデックに対応している • C++ Producer SDK には、GStreamer で Kinesis Video Stream を使用するための デモアプリケーションが含まれている オープンソースのマルチメディアアプリケーション開発用フレームワーク https://gstreamer.freedesktop.org/
  • 40. © 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved. GStreamer Webカメラ デモアプリケーション 端末にUSB等で接続したWebカメラから、 Kinesis Video Streams に動画を送信 以下のカメラが動作対象※ • Mac (macOS) の組み込みカメラ • Linux または Raspberry Pi の デバイスに接続されたUSBカメラ GStreamer のデモアプリケーション GStreamer RTSP デモアプリケーション RTSPで接続可能なネットワークカメラから、 Kinesis Video Streams に動画を送信 ※現在は、Windows システム上では動作しません Mac / Raspberry Pi Webカメラ Kinesis Video Streams GStreamer Demo App USB等 ネットワークカメラ (IPカメラ) Kinesis Video Streams GStreamer RTSP Demo App RTSP Mac / Raspberry Pi HTTPS HTTPS rtsp://x.x.x.x/yy
  • 41. © 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Producer SDK のデモアプリケーションを すぐに実行可能な環境 Android Android デモアプリケーション (スマートフォン内蔵カメラ) C++ Producer SDK GStreamer RTSP デモアプリケーション (ネットワークカメラ) macOS Ubuntu Raspberry Pi C++ Producer SDK : https://github.com/awslabs/amazon-kinesis-video-streams-producer-sdk-cpp Android Producer App : https://github.com/awslabs/aws-sdk-android-samples/tree/master/AmazonKinesisVideoDemoApp GStreamer Webカメラ デモアプリケーション (Webカメラ、内蔵カメラ) Android Producer Library
  • 42. © 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved. パートナーの対応カメラ https://www.slideshare.net/AmazonWebServicesJapan/ ivs-cto-night-dayai-machine-learning-on-aws X16 type SMACAME KINESIS GATEWAY NEW 全スマカメシリーズ Kinesis Video Streamsに対応した カメラを活用することで、 動画をそのままAWSに取り込む ことができ、ユーザーはクラウド上 での動画処理に集中できる 例:プラネックスコミュニケーションズ株式会社様 https://www.planex.co.jp/product/network_camera.html#camera01
  • 43. © 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved. このセミナーの内容 Amazon Kinesis Video Streams の特徴 Amazon Kinesis Video Streams を動かすまで 1. 動画データのフォーマット 2. プロデューサー (カメラ側) 3. コンシューマー (動画解析側) 4. デモ Amazon Kinesis Video Streams を活用した構成例 まとめ
  • 44. © 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved. コンシューマー側のAPI GetMedia API Kinesis Video Streams のストリームから、メディアデータを取得するためのAPI • ストリーム名またはストリーム Amazon リソースネーム (ARN) と、 開始チャンクをリクエストする • Kinesis Video Streams はフラグメント番号順にチャンクのストリームを返す GetMediaForFragmentList API ストリームに保存されたアーカイブデータから指定したメディアデータを取得するAPI • フラグメントのリスト (フラグメント番号で指定)を指定してリクエストする • 通常は、この API を呼び出す前に、ListFragments API を呼び出す ListFragments API フラグメントのリストを取得するAPI • フラグメント番号またはタイムスタンプを使用して、 ストリームに対して開始位置を指定してリクエストする リアルタイム 処理指向 バッチ 処理指向
  • 45. © 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved. GetMedia API POST /getMedia HTTP/1.1 Content-type: application/json { "StartSelector": { "AfterFragmentNumber": "string", "ContinuationToken": "string", "StartSelectorType": "string", "StartTimestamp": number }, "StreamARN": "string", "StreamName": "string" } PutMediaで送信されたフラグメントを含むチャンクのストリームを Payloadとして受信する • リクエストパラメータは JSON形式でBodyの中に入れて送信する • GetMedia API は Long Running Sessionのため、セッションを張って、 そのセッションの中でチャンクを受信する Request HTTP/1.1 200 Content-Type: ContentType Payload Response https://docs.aws.amazon.com/ja_jp/kinesisvideostreams/latest/dg/API_dataplane_GetMedia.html
  • 46. © 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved. GetMedia API に必要なリクエストパラメータ Header 内容 StartSelector ストリームから取得するチャンクの開始地点 AfterFragmentNumber GetMedia APIが返す最初のフラグメントのフラグメント番号 ContinuationToken 前のGetMediaレスポンスで返された ContinuationToken を指定す ることで、チャンクの開始地点を判別するためのトークン StartSelectorType (Required) GetMedia APIが返す最初のフラグメントの指定方法 (NOW | EARLIEST | FRAGMENT_NUMBER | CONTINUATION_TOKEN | PRODUCER_TIMESTAMP | SERVER_TIMESTAMP) StartTimestamp GetMedia APIが返す最初のフラグメントが含むタイムスタンプ (StartSelectorType に合わせて producer_timestamp か server_timestamp を指定) StreamARN Kinesis Video Stream のストリーム の Amazonリソースネーム (StreamARN か StreamName のいずれかが必須パラメータ) StreamName Kinesis Video Stream のストリーム名 (StreamARN か StreamName のいずれかが必須パラメータ)
  • 47. © 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved. GetMedia API の注意点 • GetMedia APIを使用する前に、GetDataEndpoint APIを呼び出して エンドポイントを取得する必要がある • GetMedia APIには、以下の制限がある • GetMedia APIコールの上限:1ストリームあたり、秒間5回 • 同時接続数:1ストリームあたり3つまで (上限緩和は可能・制限を超える接続は拒否される) • Kinesis Video Streams のデータ送信処理: 1つのGetMedia セッションの間で 25.0 MB/second または 200 Mbps (上限緩和は可能) https://docs.aws.amazon.com/ja_jp/kinesisvideostreams/latest/dg/limits.html
  • 48. © 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved. GetMedia API で取得できるのは、 あくまでMKV形式のチャンクでしかない コンシューマー GetMedia GetMediaForFragmentList フレーム フラグメント フラグメント1 Kinesis Video Pre メタデータ Kinesis Video Post メタデータ メディア メタデータ チャンク チャンクを取得 フラグメントを 取り出す (必要に応じて) フレームを 取り出す ストリーム
  • 49. © 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Stream Parser Library • Javaのライブラリ(Jarファイル)として提供され、 AWS SDK for Java と組み合わせてJavaアプリケーション内で使用する • 現在の実装では、主なツールとして以下のものが含まれる ストリームから取得したMKV形式のデータを 使いやすい形に加工するためのライブラリ 主なツール 内容 StreamingMkvReader MKVデータをストリームから MKV Element として読み取る FragmentMetadataVisitor フラグメント(メディアデータ)およびトラック(コーデックの種類や ピクセル幅・高さなどを含むデータ)からメタデータを取得する。 フラグメント番号やタイムスタンプの情報もここから取得出来る。 OutputSegmentMerger 異なるトラックのメタデータを単一のセグメントを持つストリームに マージして、連続したフラグメント(チャンク)を結合する FrameVisitor フラグメントからフレームを取り出してフレーム毎の処理に渡す。 インタフェースが提供されるので、デコードと処理内容は自分で実装する。 KinesisVideoExample Stream Parser Library の使用方法を示すサンプルアプリケーション https://github.com/aws/amazon-kinesis-video-streams-parser-library
  • 50. © 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved. フラグメント1 Kinesis Video Pre メタデータ Kinesis Video Post メタデータ メディア メタデータ チャンク 動画ファイルを出力して解析する Stream Parser Library の OutputSegmentMerger を活用する コンシューマー GetMedia GetMediaForFragmentList フラグメント チャンクを取得 フラグメントを 取り出す ストリーム フラグメント1 Kinesis Video Pre メタデータ Kinesis Video Post メタデータ メディア メタデータ チャンクフラグメント1 Kinesis Video Pre メタデータ Kinesis Video Post メタデータ メディア メタデータ チャンク OutputSegmentMerger 1本のMKV動画ファイル やストリームに結合する 動画ファイル プレイヤーで再生 動画解析処理へ StreamingMkvReader (必要に応じて) GStreamer などで 動画形式を変換 GStreamer : https://gstreamer.freedesktop.org/ OpenPose : https://github.com/CMU-Perceptual-Computing-Lab/openpose
  • 51. © 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved. 動画ファイルを出力して解析する コンシューマ側の実装の例(一部のみ) // Get media request loop. while (true) { GetMediaResult result = mediaClient.getMedia(getMediaRequest()); Path outputPath = Paths.get(OUTPUT_FILENAME); OutputStream fileOutputStream = Files.newOutputStream(outputPath, StandardOpenOption.WRITE, StandardOpenOption.CREATE); try (BufferedOutputStream outputStream = new BufferedOutputStream(fileOutputStream)) { StreamingMkvReader mkvStreamReader = StreamingMkvReader.createDefault(new InputStreamParserByteSource(result.getPayload())); OutputSegmentMerger outputSegmentMerger = OutputSegmentMerger.createDefault(fileOutputStream); // Apply the OutputSegmentMerger to the mkv elements from the mkv stream reader. while (mkvStreamReader.mightHaveNext()) { Optional<MkvElement> mkvElementOptional = mkvStreamReader.nextIfAvailable(); if (mkvElementOptional.isPresent()) { MkvElement mkvElement = mkvElementOptional.get(); // Apply the segment merger to this element. mkvElement.accept(outputSegmentMerger); // Flush output stream per fragment. if (MkvTypeInfos.SEGMENT.equals(mkvElement.getElementMetaData().getTypeInfo())) { if (mkvElement instanceof MkvEndMasterElement) { outputStream.flush(); } } } } } catch (MkvElementVisitException | IOException e) { } wait(GETMEDIA_INTERVAL); } ここでフラグメントを マージする ※このコードは簡略化した例です
  • 52. © 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved. フラグメント1 Kinesis Video Pre メタデータ Kinesis Video Post メタデータ メディア メタデータ チャンク 画像フレームを取り出して解析する Stream Parser Library の FrameVisitor を活用する コンシューマー GetMedia GetMediaForFragmentList フラグメント チャンクを取得 フラグメントを 取り出す ストリーム フラグメント1 Kinesis Video Pre メタデータ Kinesis Video Post メタデータ メディア メタデータ チャンクフラグメント1 Kinesis Video Pre メタデータ Kinesis Video Post メタデータ メディア メタデータ チャンク FrameVisitor + デコード実装 (JCodec などのライブラリを活用) フレームを 取り出す 静止画として保存 画像解析処理へ StreamingMkvReader フレーム JCodec : http://jcodec.org/ OpenCV : https://opencv.org/
  • 53. © 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved. 画像フレームを取り出して解析する // Get media request loop. while (true) { GetMediaResult result = mediaClient.getMedia(getMediaRequest()); // Fragment metadata visitor to extract Kinesis Video fragment metadata from the GetMedia stream. FragmentMetadataVisitor fragmentMetadataVisitor = FragmentMetadataVisitor.create(); MyFrameProcessor frameProcessor = MyFrameProcessor.create(); FrameVisitor frameVisitor = FrameVisitor.create(frameProcessor); MkvElementVisitor elementVisitor = new CompositeMkvElementVisitor(fragmentMetadataVisitor, frameVisitor); StreamingMkvReader mkvStreamReader = StreamingMkvReader.createDefault(new InputStreamParserByteSource(result.getPayload())); // Apply the OutputSegmentMerger to the mkv elements from the mkv stream reader. try { while (mkvStreamReader.mightHaveNext()) { Optional<MkvElement> mkvElementOptional = mkvStreamReader.nextIfAvailable(); if (mkvElementOptional.isPresent()) { MkvElement mkvElement = mkvElementOptional.get(); // Apply the parsing visitor to this element through the element visitor. mkvElement.accept(elementVisitor); } } } catch (MkvElementVisitException e) { } wait(GETMEDIA_INTERVAL); } ここで FrameProcessor に 実装した処理が呼ばれる コンシューマ側の実装の例(一部のみ) 実装した FrameProcessor を FrameVisitor に渡して ストリーム処理を初期化する ※このコードは簡略化した例です
  • 54. © 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved. 画像フレームを取り出して解析する public class MyFrameProcessor implements FrameVisitor.FrameProcessor { private byte[] codecPrivateData; private final H264Decoder decoder = new H264Decoder(); private final Transform transform = new Yuv420jToRgb(); @Override public void process(Frame frame, MkvTrackMetadata trackMetadata) { ByteBuffer frameBuffer = frame.getFrameData(); int pixelWidth = trackMetadata.getPixelWidth().get().intValue(); int pixelHeight = trackMetadata.getPixelHeight().get().intValue(); codecPrivateData = trackMetadata.getCodecPrivateData().array(); Picture rgb = Picture.create(pixelWidth, pixelHeight, ColorSpace.RGB); BufferedImage imageFrame = new BufferedImage(pixelWidth, pixelHeight, BufferedImage.TYPE_3BYTE_BGR); AvcCBox avcC = AvcCBox.parseAvcCBox(ByteBuffer.wrap(codecPrivateData)); decoder.addSps(avcC.getSpsList()); decoder.addPps(avcC.getPpsList()); Picture buf = Picture.create(pixelWidth, pixelHeight, ColorSpace.YUV420J); List<ByteBuffer> byteBuffers = splitMOVPacket(frameBuffer, avcC); Picture pic = decoder.decodeFrameFromNals(byteBuffers, buf.getData()); // 略… Picture tmpBuf = Picture.createPicture(pixelWidth, pixelHeight, dataTemp, ColorSpace.YUV420J); transform.transform(tmpBuf, rgb); AWTUtil.toBufferedImage(rgb, imageFrame); // Find the faces in the frame by OpenCV Haar cascade classifier Mat source = Java2DFrameUtils.toMat(imageFrame); RectVector faces = new RectVector(); faceDetector.detectMultiScale(source, faces); LOG.info(faces.size() + " faces are detected!"); } } メタデータから コーデックの種類や ピクセル幅・高さなど 必要な情報を取り出す FrameProcessor 実装の例 (Jcodec を利用した H264 デコード処理 と OpenCV を利用した顔検出) OpenCV の顔検出器に かけて画像解析を行う ※このコードは簡略化した例です JCodec による デコード処理をして フレームを取り出す
  • 55. © 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved. 画像フレームを取り出して解析する 画像フレームを取り出せれば、様々な画像解析にかけられる • OpenCV や OpenPose などのライブラリを活用した画像解析 • Amazon Rekognition などの画像解析サービス • 独自に Deep Learning などで機械学習したモデルでの推論 など・・・ OpenCV : https://opencv.org/ OpenPose : https://github.com/CMU-Perceptual-Computing-Lab/openpose
  • 56. © 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Amazon Rekognition Video と連携する • Kinesis Video Streams のコンシューマーと して Amazon Rekognition Video を使用して 動画ストリーム内の顔を検出・認識できる • 予め Rekognition Video に覚えさせておいた 既知の顔を検出することができる • Rekognition Video には、動画ストリームの 分析を管理するための Stream Processor が 用意されている • 分析結果は、Rekognition Video から、 Amazon Kinesis Data Streams のストリーム に出力される https://docs.aws.amazon.com/rekognition/latest/dg/streaming-video.html プロデューサー (カメラ) Amazon Kinesis Video Streams Amazon Rekognition Video Amazon Kinesis Data Streams Amazon Kinesis Data Streams のコンシューマー (AWS Lambda など) Stream Processor 起動・停止も可能
  • 57. © 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Rekognition Video を使用した顔認識の設定 https://docs.aws.amazon.com/ja_jp/rekognition/latest/dg/recognize-faces-in-a-video-stream.html IAMロールを作成 Rekognition のコレクションを作成 Kinesis Video Streams のストリームを作成 コレクションで検索する顔にインデックスを付与 Kinesis Data Streams のストリームを作成 Rekognition で Stream Processor を作成 Stream Processor を起動 Kinesis Video Streams にデータを送信 Kinesis Data Streams からデータを取得して分析 $ aws rekognition create-stream-processor ¥ --name "MyKinesisVideoStreamProcessor" ¥ --input '{"KinesisVideoStream": {"Arn": "arn:aws:kinesisvideo:ap-northeast-1:XXXXXXXXXXXX: stream/my-video-stream/XXXXXXXXXXXXX"}}’ ¥ --stream-processor-output '{"KinesisDataStream": {"Arn": "arn:aws:kinesis:ap-northeast-1: XXXXXXXXXXXX: stream/AmazonRekognition"}}’ ¥ --role-arn "arn:aws:iam::XXXXXXXXXXXX:role/ MyRekognitionForKinesisRole" ¥ --settings '{"FaceSearch": {"CollectionId":"MyFaceCollection", "FaceMatchThreshold": 80.0}}’ $ aws rekognition start-stream-processor ¥ --name "MyKinesisVideoStreamProcessor" AWS CLI での作成例
  • 58. © 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Rekognition Video による顔認識の分析結果 { "InputInformation":{ "KinesisVideo":{ "StreamArn":" arn:aws:kinesisvideo:ap-northeast-1:XXXXXXXXXXXX:stream/my-video-stream/XXXXXXXXXXXXX ", "FragmentNumber":"91343852348798144617425944722918553756896652976", "ServerTimestamp":1.521183662414E9, "ProducerTimestamp":821785.28, "FrameOffsetInSeconds":1.0 } }, "StreamProcessorInformation":{"Status":"RUNNING"}, "FaceSearchResponse":[{ "DetectedFace":{ "BoundingBox":{"Height":0.45,"Width":0.253125,"Left":0.47109374,"Top":0.3472222}, "Confidence":99.99982, "Landmarks":[ {"X":0.55657715,"Y":0.48627222,"Type":"eyeLeft"}, {"X":0.65045106,"Y":0.49128634,"Type":"eyeRight"}, {"X":0.60852575,"Y":0.5521961,"Type":"nose"}, {"X":0.5619316,"Y":0.6824252,"Type":"mouthLeft"}, {"X":0.6378561,"Y":0.6886522,"Type":"mouthRight"} ], "Pose":{"Pitch":17.475468,"Roll":0.80840683,"Yaw":7.7559447}, "Quality":{"Brightness":32.13126,"Sharpness":99.93052} }, "MatchedFaces":[{ "Similarity":90.26169, "Face":{ "BoundingBox":{"Height":0.4275,"Width":0.4275,"Left":0.26375,"Top":0.26875}, "FaceId":"063808fa-0018-4f3d-8deb-b0dd4d18fbb3", "Confidence":99.9869, "ImageId":"10b0ad0a-c240-7b02-e648-237bc6f5a82b” } }] }] }
  • 59. © 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved. パートナーの動画解析サービスを利用 今後はパートナーによる動画解析サービスも利用可能に DynamoDB Kinesis Data Streams IoT Sensors + Tracking Mobile Devices Cameras On-premise GPU cluster/servers for training Manufacturing Use Case VMD Optimizations Preventive Maintenance Visual inspection Retail Use Case Automatic Picking Measure the effect of Marketing 例:株式会社ABEJA様 re:Invent2017 : https://www.youtube.com/watch?v=rjBXbktBxBg&t=39m15s JAWS-UG AI : https://speakerdeck.com/toshitanian/amazon-kinesis-video-streams-x-deep-learning
  • 60. © 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved. このセミナーの内容 Amazon Kinesis Video Streams の特徴 Amazon Kinesis Video Streams を動かすまで 1. 動画データのフォーマット 2. プロデューサー (カメラ側) 3. コンシューマー (動画解析側) 4. デモ Amazon Kinesis Video Streams を活用した構成例 まとめ
  • 61. © 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
  • 62. © 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved. このセミナーの内容 Amazon Kinesis Video Streams の特徴 Amazon Kinesis Video Streams を動かすまで 1. 動画データのフォーマット 2. プロデューサー (カメラ側) 3. コンシューマー (動画解析側) 4. デモ Amazon Kinesis Video Streams を活用した構成例 まとめ
  • 63. © 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved. 画像ファイル 解析結果 機械学習モデルや画像処理ライブラリで 画像解析した結果をAPIで公開する 動画データ フレーム プロデューサー (カメラ) 画像解析 Kinesis Video Streams コンシューマー 学習モデル Amazon S3 Amazon Kinesis Data Firehose Amazon DynamoDB AWS Lambda Amazon API Gateway API サービス・端末
  • 64. © 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved. 画像ファイル 動画解析 解析結果 解析結果 画像解析 動画・画像解析サービスを使って分析する 動画データ フレーム プロデューサー (カメラ) Kinesis Video Streams コンシューマー Amazon S3 AWS Lambda Amazon Rekognition Video (3rd Party Services) Amazon Rekognition Image (3rd Party Services) Amazon Kinesis Data Streams Stream Processor Amazon DynamoDB AWS Lambda 動画ファイル 動画ストリーム
  • 65. © 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved. クラウドとエッジでの解析処理を使い分ける エッジサーバ・ゲートウェイ 画像解析アプリ ローカルLAN AWS IoT カメラ Kinesis Video Streams Producer SDK AWS Greengrass 推論 ストリーム 処理アプリ デプロイ Amazon S3 Kinesis Video Streams コンシューマー 学習モデル 解析結果 Amazon DynamoDB AWS Lambda Amazon Kinesis Data Firehose Amazon S3 Amazon SageMaker 学習 データレイク 推論 解析結果 画像データ 動画データ 複数カメラが 必要な解析処理 学習データ の蓄積 超低遅延応答や 通信量の削減
  • 66. © 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved. 検知と認識を分けて効率的にストリーム分析を行う エッジサーバ・ゲートウェイ 画像解析アプリ ローカルLAN AWS IoT カメラ Kinesis Video Streams Producer SDK AWS Greengrass ストリーム 処理アプリ Kinesis Video Streams コンシューマー 特徴量 Amazon DynamoDB AWS Lambda 解析結果 画像フレーム 動画データ 人の検出 行動の認識 行動の認識 特徴量 人の検出人を検出したとき のみ動画を送信 常に動画を送信 一時クレデンシャル の配布
  • 67. © 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved. MKV RTMP 解析結果をレンダリングして動画を配信する 動画データ ライブビデオ処理 AWS Elemental MediaLive AWS Elemental MediaPackage Just In Time パッケージ&オリジン AWS Elemental MediaStore メディア最適化 ストレージ&オリジン Amazon CloudFront / CDN CDN AWS Elemental MediaConvert ファイルベース トランスコーダ Amazon S3 VOD 配信元 動画ファイル フレーム プロデューサー (カメラ) 画像解析 Amazon CloudFront / CDN CDN 視聴端末 MP4 や HLS など エンコード HLS HLS Kinesis Video Streams コンシューマー DRM、暗号化など AWS Lambda HLS MPEG-DASH ライブ配信 (遅延は20-60秒程度) オンデマンド配信ここまでは低遅延 (数百ミリ秒〜数秒)
  • 68. © 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved. このセミナーの内容 Amazon Kinesis Video Streams の特徴 Amazon Kinesis Video Streams を動かすまで 1. 動画データのフォーマット 2. プロデューサー (カメラ側) 3. コンシューマー (動画解析側) 4. デモ Amazon Kinesis Video Streams を活用した構成例 まとめ
  • 69. © 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Amazon Kinesis Video Streams ビデオストリームをクラウドへ取り込み、 低遅延/オンデマンドで分析処理に配信するためのマネージドサービス デバイス カメラ/マイクなど プロデューサー 動画の送信 Amazon Kinesis Video Streams ストリーム 動画の保存とインデックス化 コンシューマー 動画解析・加工・再配信/変換・再生 AWS ML Services MXNet / TensorFlow Custom Processing (OpenCV etc) 3rd Party Partners
  • 70. © 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Kinesis Video Streams の特徴 通信および保管データの暗号化と、 IAMでのアクセス管理によるセキュリティ データの永続的な保存とインデックス化 サーバレスなフルマネージドサービスとして提供 動画解析には低遅延でのリアルタイム処理とバッチ処理 どちらのアプリケーションも構築可能 何百万ものデバイスを接続してのストリーミング
  • 71. © 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved. さいごに Amazon Kinesis Video Streams についてもっと知りたい方はこちら • 公式ドキュメント - https://aws.amazon.com/kinesis/video-streams/ • ドキュメントやSDKなどのリソース - https://aws.amazon.com/jp/kinesis/video-streams/resources/ • Amazon Kinesis Video Streams Forum - https://forums.aws.amazon.com/forum.jspa?forumID=282 • C++ Producer SDK - https://github.com/awslabs/amazon-kinesis-video-streams-producer-sdk-cpp • Java Producer SDK - https://github.com/awslabs/amazon-kinesis-video-streams-producer-sdk-java • Android Producer Library - https://github.com/awslabs/aws-sdk-android-samples/tree/master/AmazonKinesisVideoDemoApp • Stream Parser Library - https://github.com/aws/amazon-kinesis-video-streams-parser-library Amazon Kinesis Video Streams で クラウド上に動画を取り込んで 安全でスケーラブルな動画解析を実現しましょう!
  • 72. © 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved. オンラインセミナー資料の配置場所 AWS クラウドサービス活用資料集 • https://aws.amazon.com/jp/aws-jp-introduction/ Amazon Web Services ブログ • 最新の情報、セミナー中のQ&A等が掲載されています。 • https://aws.amazon.com/jp/blogs/news/
  • 73. © 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved. 公式Twitter/Facebook AWSの最新情報をお届けします @awscloud_jp 検索 最新技術情報、イベント情報、お役立ち情報、 お得なキャンペーン情報などを日々更新しています! もしくは http://on.fb.me/1vR8yWm
  • 74. © 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved. AWSの導入、お問い合わせのご相談 AWSクラウド導入に関するご質問、お見積、資料請求をご希望のお客様は以 下のリンクよりお気軽にご相談下さい。 https://aws.amazon.com/jp/contact-us/aws-sales/ ※「AWS 問い合わせ」で検索して下さい。
  • 75. © 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved. AWS Well Architected 個別技術相談会お知らせ • Well Architectedフレームワークに基づく数十個の質問項目を元に、お客様 がAWS上で構築するシステムに潜むリスクやその回避方法をお伝えする個別 相談会です。 https://pages.awscloud.com/well-architected-consulting-2017Q4- jp.html • 参加無料 • 毎週火曜・木曜開催