

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

# ストリーミングビデオのトラブルシューティング
<a name="streaming-video-troubleshooting"></a>

**注記**  
ストリーミングビデオと一括イメージ分析は、新しいお客様では利用できなくなりました。詳細については、「[Amazon Rekognition 機能の可用性の変更](rekognition-availability-changes.md)」を参照してください。  
**この変更は、他の Amazon Rekognition 機能の可用性には影響しません。**

このトピックでは、Amazon Rekognition Video を使用したストリーミングビデオにおけるトラブルシューティングについて説明します。

**Topics**
+ [使用するストリーミングプロセッサが正常に作成されたかどうかがわかりません。](#ts-streaming-video-create-sp)
+ [ストリームプロセッサを正しく設定しているかがわかりません](#ts-configured-sp)
+ [使用するストリームプロセッサが結果を返しません](#ts-streaming-video-no-results-from-sp)
+ [ストリームプロセッサの状態が FAILED (失敗) になる](#ts-failed-state)
+ [使用するストリームプロセッサが予測された結果を返さない](#w2aac27c79c29c17)

## 使用するストリーミングプロセッサが正常に作成されたかどうかがわかりません。
<a name="ts-streaming-video-create-sp"></a>

次の AWS CLI コマンドを使用して、ストリームプロセッサとその現在のステータスのリストを取得します。

```
aws rekognition list-stream-processors
```

次の AWS CLI コマンドを使用して、追加の詳細を取得できます。`stream-processor-name` を必要なストリームプロセッサの名前に置き換えます。

```
aws rekognition describe-stream-processor --name {{stream-processor-name}}
```

## ストリームプロセッサを正しく設定しているかがわかりません
<a name="ts-configured-sp"></a>

コードで Amazon Rekognition Video の分析結果が出力されない場合、ストリームプロセッサが正常に設定されていない可能性があります。ストリームプロセッサが正しく設定され、結果を生成することができることを確認するには、次を実行します。

**ソリューションが正しく設定されているかどうか判断するには**

1. 次のコマンドを実行して、ストリームプロセッサが実行状態にあることを確認します。`stream-processor-name` を使用するストリームプロセッサの名前に変更します。ストリームプロセッサが実行されている場合、`Status` の値は `RUNNING` です。ステータスが `RUNNING` であり、結果が表示されない場合には、「[使用するストリームプロセッサが結果を返しません](#ts-streaming-video-no-results-from-sp)」を参照してください。ステータスが `FAILED` の場合には、「[ストリームプロセッサの状態が FAILED (失敗) になる](#ts-failed-state)」を参照してください。

   ```
   aws rekognition describe-stream-processor --name {{stream-processor-name}}
   ```

1. ストリームプロセッサが実行されている場合には、次の Bash あるいは PowerShell コマンドを実行して、出力 Kinesis データストリームからデータを読み込みます。

   **Bash**

   ```
   SHARD_ITERATOR=$(aws kinesis get-shard-iterator --shard-id shardId-000000000000 --shard-iterator-type TRIM_HORIZON --stream-name {{kinesis-data-stream-name}} --query 'ShardIterator')
                           aws kinesis get-records --shard-iterator $SHARD_ITERATOR
   ```

   **PowerShell**

   ```
   aws kinesis get-records --shard-iterator ((aws kinesis get-shard-iterator --shard-id shardId-000000000000 --shard-iterator-type TRIM_HORIZON --stream-name {{kinesis-data-stream-name}}).split('"')[4])
   ```

1. Base64 デコードウェブサイトで[デコードツール](https://www.base64decode.org/)を使用して、人間が読み取れる文字列に出力をデコードします。詳細については、「[ステップ 3: レコードの取得](https://docs.aws.amazon.com/streams/latest/dev/fundamental-stream.html#get-records)」を参照してください。

1. コマンドが動作し、Kinesis データストリームに顔検出結果が表示される場合、ソリューションは適切に設定されています。コマンドが失敗した場合は、他のトラブルシューティング解決策を試し、「[Amazon Rekognition Video にリソースへのアクセス権を付与する](api-streaming-video-roles.md)」を参照してください。

または、kinesis-process-record AWS Lambda 」ブループリントを使用して、Kinesis データストリームから CloudWatch にメッセージをログ記録し、継続的に視覚化することもできます。これには、 AWS Lambda と CloudWatch の追加コストが発生します。

## 使用するストリームプロセッサが結果を返しません
<a name="ts-streaming-video-no-results-from-sp"></a>

いくつかの要因によりストリームプロセッサが結果を返さないことがあります。

### 要因 1: ストリームプロセッサが正しく設定されていない
<a name="w2aac27c79c29c13b5"></a>

ストリームプロセッサが正しく設定されていない可能性があります。詳細については、「[ストリームプロセッサを正しく設定しているかがわかりません](#ts-configured-sp)」を参照してください。

### 要因 2: ストリームプロセッサが RUNNING (実行中) ステータスではない
<a name="w2aac27c79c29c13b7"></a>

**ストリームプロセッサのステータスをトラブルシューティングするには**

1. 次の AWS CLI コマンドを使用して、ストリームプロセッサのステータスを確認します。

   ```
   aws rekognition describe-stream-processor --name {{stream-processor-name}}
   ```

1. `Status` の値が `STOPPED` の場合、ストリームプロセッサを次のコマンドで開始します。

   ```
   aws rekognition start-stream-processor --name {{stream-processor-name}}
   ```

1. `Status` の値が `FAILED` の場合、「[ストリームプロセッサの状態が FAILED (失敗) になる](#ts-failed-state)」を参照してください。

1. `Status` の値が `STARTING` の場合、2 分ほど待機してから、ステップ 1 を繰り返してステータスを確認します。ステータスの値が依然として `STARTING` の場合には、次の操作を行います。

   1. 次のコマンドを実行して、ストリームプロセッサを削除します。

      ```
      aws rekognition delete-stream-processor --name {{stream-processor-name}}
      ```

   1. 同じ設定で新しいストリームプロセッサを作成します。詳細については、「[ストリーミングビデオイベントの操作](streaming-video.md)」を参照してください。

   1. それでも問題が解決しない場合は、 AWS サポートにお問い合わせください。

1. `Status` の値が `RUNNING` の場合、「[要因 3: Kinesis ビデオストリームにアクティブデータがない](#ts-no-data)」を参照してください。

### 要因 3: Kinesis ビデオストリームにアクティブデータがない
<a name="ts-no-data"></a>

**Kinesis ビデオストリームにアクティブなデータがあるかどうかをチェックするには**

1. にサインインし AWS マネジメントコンソール、[https://console.aws.amazon.com/kinesisvideo/](https://console.aws.amazon.com/kinesisvideo/) で Amazon Kinesis Video Streams コンソールを開きます。

1. Amazon Rekognition ストリームプロセッサの入力である Kinesis ビデオストリームを選択します。

1. プレビュー状態が [**ストリームにデータなし**] の場合は、入力ストリームに Amazon Rekognition Video が処理するデータはありません。

Kinesis Video Streams を使用してビデオを作成する詳細については、「[Kinesis Video Streams プロデューサーライブラリ](https://docs.aws.amazon.com/kinesisvideostreams/latest/dg/producer-sdk.html)」を参照してください。

## ストリームプロセッサの状態が FAILED (失敗) になる
<a name="ts-failed-state"></a>

ストリームプロセッサの状態を確認するには、次の AWS CLI コマンドを使用します。

```
aws rekognition describe-stream-processor --name {{stream-processor-name}}
```

ステータスの値が FAILED (失敗) の場合、トラブルシューティング情報で次のエラーメッセージを参照します。

### エラー: "Access denied to Role"
<a name="w2aac27c79c29c15b9"></a>

ストリームプロセッサが使用する IAM ロールが存在しない、または Amazon Rekognition Video にこのロールを引き受ける権限がありません。

**IAM ロールへのアクセスをトラブルシューティングするには**

1. にサインイン AWS マネジメントコンソール し、[https://console.aws.amazon.com/iam/](https://console.aws.amazon.com/iam/) で IAM コンソールを開きます。

1. 左のナビゲーションペインから [**ロール**] を選択し、ロールが存在することを確認します。

1. ロールが存在する場合は、このロールに *AmazonRekognitionServiceRole* アクセス許可ポリシーがあることを確認します。

1. ロールが存在しない、あるいは適切なアクセス許可がない場合には、「[Amazon Rekognition Video にリソースへのアクセス権を付与する](api-streaming-video-roles.md)」を参照してください。

1. 次の AWS CLI コマンドを使用してストリームプロセッサを起動します。

   ```
   aws rekognition start-stream-processor --name {{stream-processor-name}}
   ```

### エラー: 「Kinesis ビデオへのアクセス拒否*または*Kinesis データへのアクセス拒否」
<a name="w2aac27c79c29c15c11"></a>

ロールには、Kinesis Video Streams API オペレーション `GetMedia` および `GetDataEndpoint` へのアクセス権がありません。また、Kinesis Data Streams API オペレーション `PutRecord` および `PutRecords` へのアクセス権がない可能性もあります。

**API アクセス権限をトラブルシューティングするには**

1. にサインイン AWS マネジメントコンソール し、[https://console.aws.amazon.com/iam/](https://console.aws.amazon.com/iam/) で IAM コンソールを開きます。

1. ロールを開き、次のアクセス許可ポリシーがアタッチされていることを確認します。

1. いずれかのアクセス許可がない場合には、ポリシーを更新します。詳細については、「[Amazon Rekognition Video にリソースへのアクセス権を付与する](api-streaming-video-roles.md)」を参照してください。

### エラー: "Stream {{input-video-stream-name}} doesn't exist"
<a name="w2aac27c79c29c15c13"></a>

ストリームプロセッサへの Kinesis ビデオストリームの入力が存在しないか、正しく設定されていません。

**Kinesis ビデオストリームをトラブルシューティングするには**

1. 次のコマンドを使用して、ストリームがあることを確認します。

   ```
   aws kinesisvideo list-streams
   ```

1. ストリームが存在する場合、次を確認します。
   + Amazon リソースネーム (ARN) は、ストリームプロセッサの入力ストリームの ARN と同じです。
   + Kinesis ビデオストリームは、ストリームプロセッサと同じリージョンにあります。

   ストリームプロセッサが正しく設定されていない場合は、次の AWS CLI コマンドを使用して削除します。

   ```
   aws rekognition delete-stream-processor --name {{stream-processor-name}}
   ```

1. 目的の Kinesis ビデオストリームで新しいストリームプロセッサを作成します。詳細については、「[Amazon Rekognition Video 顔検索ストリームプロセッサの作成](rekognition-video-stream-processor-search-faces.md#streaming-video-creating-stream-processor)」を参照してください。

### エラー: "Collection not found"
<a name="w2aac27c79c29c15c15"></a>

顔と一致するためにストリームプロセッサによって使用される Amazon Rekognition コレクションが存在しない、または間違ったコレクションが使用されています。

**コレクションを確認するには**

1. 次の AWS CLI コマンドを使用して、必要なコレクションが存在するかどうかを確認します。ストリームプロセッサを実行している AWS リージョン`region`に変更します。

   ```
   aws rekognition list-collections --region {{region}}
   ```

   必要なコレクションが存在しない場合には、新しいコレクションを作成して顔情報を追加します。詳細については、「[コレクション内での顔の検索](collections.md)」を参照してください。

1. [CreateStreamProcessor](https://docs.aws.amazon.com/rekognition/latest/APIReference/API_CreateStreamProcessor.html) の呼び出しで、`CollectionId` 入力パラメータの値が正確であることを確認します。

1. 次の AWS CLI コマンドを使用してストリームプロセッサを起動します。

   ```
   aws rekognition start-stream-processor --name {{stream-processor-name}}
   ```

### エラー: "Stream {{output-kinesis-data-stream-name}} under account {{account-id}} not found"
<a name="w2aac27c79c29c15c17"></a>

ストリームプロセッサによって使用される出力 Kinesis データストリームは、 に存在しない AWS アカウント か、ストリームプロセッサと同じ AWS リージョンにありません。

**Kinesis データストリームをトラブルシューティングするには**

1. 次の AWS CLI コマンドを使用して、Kinesis データストリームが存在するかどうかを確認します。ストリームプロセッサを使用している AWS リージョン`region`に変更します。

   ```
   aws kinesis list-streams --region {{region}}
   ```

1. Kinesis データストリームが存在する場合、Kinesis データストリーム名がストリームプロセッサによって使用される出力ストリームの名前と同じであることを確認します。

1. Kinesis データストリームが存在しない場合は、別の AWS リージョンに存在する可能性があります。Kinesis データストリームは、ストリームプロセッサと同じリージョンにある必要があります。

1. 必要に応じて、新しい Kinesis データストリームを作成します。

   1. ストリームプロセッサによって使用される名前と同じ名前の Kinesis データストリームを作成します。詳細については、「[ステップ 1: データストリームを作成する](https://docs.aws.amazon.com/streams/latest/dev/learning-kinesis-module-one-create-stream.html)」を参照してください。

   1. 次の AWS CLI コマンドを使用してストリームプロセッサを起動します。

      ```
      aws rekognition start-stream-processor --name {{stream-processor-name}}
      ```

## 使用するストリームプロセッサが予測された結果を返さない
<a name="w2aac27c79c29c17"></a>

ストリームプロセッサが予測された顔の一致を返さない場合、次の情報を使用します。
+ [コレクション内での顔の検索](collections.md)
+ [カメラセットアップの推奨事項 (ストリーミングビデオ)](recommendations-camera-streaming-video.md)