

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

# 스트리밍 비디오 문제 해결
<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 Decode 웹사이트에서 [Decode 도구](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 Support에 문의하세요.

1. `Status` 값이 `RUNNING`라면 [원인 3: Kinesis 비디오 스트림에 활성 데이터가 없는 경우](#ts-no-data) 단원을 참조하십시오.

### 원인 3: Kinesis 비디오 스트림에 활성 데이터가 없는 경우
<a name="ts-no-data"></a>

**Kinesis 비디오 스트림에 활성 데이터가 있는지 확인하려면**

1. 에 로그인 AWS Management Console하고 [https://console.aws.amazon.com/kinesisvideo/](https://console.aws.amazon.com/kinesisvideo/) Amazon Kinesis Video Streams 콘솔을 엽니다.

1. Amazon Rekognition 스트림 프로세서에 입력되는 Kinesis 비디오 스트림을 선택합니다.

1. 미리 보기에 **No data on stream**이 표시되는 경우, Amazon Rekognition Video의 입력 스트림에 처리할 데이터가 없는 것입니다.

Kinesis Video Streams를 사용한 비디오 제작에 대한 자세한 내용은 [Kinesis Video Streams Producer 라이브러리](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 Management Console 하고 [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 Video에 대한 액세스 거부됨 *또는* Kinesis Data에 대한 액세스 거부됨"
<a name="w2aac27c79c29c15c11"></a>

해당 역할에 `GetMedia` 및 `GetDataEndpoint` Kinesis Video Streams API 작업에 대한 액세스 권한이 없습니다. `PutRecord` 및 `PutRecords` Kinesis Data Streams API 작업에 대한 액세스 권한도 없을 수 있습니다.

**API 권한 문제를 해결하려면**

1. 에 로그인 AWS Management Console 하고 [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)