Notice
Recent Posts
Recent Comments
Link
투케이2K
57. (Aws/Amazon) [Aws Kinesis Video Streams] Aws KVS GetMedia 비디오 스트림 검색 API 설명 정리 본문
Aws (Amazon)
57. (Aws/Amazon) [Aws Kinesis Video Streams] Aws KVS GetMedia 비디오 스트림 검색 API 설명 정리
투케이2K 2025. 5. 6. 13:11[개발 환경 설정]
개발 환경 : Aws / Amazon Web Services

[설명 정리]
// --------------------------------------------------------------------------------------
[개발 및 환경]
// --------------------------------------------------------------------------------------
- 인프라 : Aws / Amazon Web Services
- 기술 구분 : Aws / Kinesis Video Streams / KVS / 비디오 스트림
// --------------------------------------------------------------------------------------
// --------------------------------------------------------------------------------------
[설 명]
// --------------------------------------------------------------------------------------
1. Aws KVS 비디오 스트림 설명 :
>> 비디오 스트림은 라이브 비디오 및 기타 시간이 인코딩된 데이터를 캡처하고, 선택적으로 저장하고, 실시간, 배치 혹은 애드혹 형식으로 데이터의 소비를 가능하게 할 수 있도록 해 주는 리소스입니다
>> 비디오 스트림에 데이터를 저장하도록 선택하면 Kinesis Video Streams가 데이터를 암호화하고 저장된 데이터에 시간 기반 인덱스를 생성합니다
>> 일반적인 구성에서는 Kinesis 비디오 스트림은 데이터를 푸시해 주는 생산자가 하나만 있습니다 (실시간 스트리밍 데이터를 밀어 넣어주는 하드웨어 기기)
>> Kinesis 비디오 스트림은 비디오 스트림의 콘텐츠를 처리하는 여러 소비 애플리케이션을 가질 수 있습니다
2. Aws GetMedia 설명 :
>> GetMedia API 를 사용하여 Kinesis 비디오 스트림 미디어 데이터를 검색할 수 있습니다
- 먼저 GetDataEndpointAPI 를 호출하여 엔드포인트를 가져와야 합니다 (Credential EndPoint)
- 가져온 엔드포인트 정보를 사용해 GetMedia API 호출 시 사용합니다
- GetDataEndpointAPI 를 호출하여 엔드포인트 정보를 가져오기 위해서는 IAM 계정에 할당 된 AccessKey , SecretKey 정보가 필요합니다
>> GetMedia API 를 사용 시 제한 사항
- 클라이언트는 GetMedia 스트림당 초당 최대 5번을 호출할 수 있습니다.
- Kinesis Video Streams 는 세션 동안 초당 최대 25 메가바이트 (또는 초당 200메가비트) 의 속도로 미디어 데이터를 전송합니다
>> GetMedia API 사용 요청 구문 예시
POST /getMedia HTTP/1.1 -------------> GetDataEndpointAPI 를 호출하여 얻은 엔드포인트 주소 (Credential EndPoint)
Content-type: application/json
{
"StartSelector": { --------------> 지정된 스트림에서 가져올 시작 청크 식별
"AfterFragmentNumber": "string",
"ContinuationToken": "string",
"StartSelectorType": "string",
"StartTimestamp": number
},
"StreamARN": "string", --------------> Kinesis 비디오 스트림의 Amazon 리소스 이름(ARN)
"StreamName": "string" --------------> Kinesis 비디오 스트림의 이름
}
>> GetMedia API 에러 응답 코드 정리
- HTTP 상태 코드 : 400 - 클라이언트 제한 초과 예외 : 허용된 클라이언트 호출 한도를 초과하여 Kinesis Video Streams에서 요청을 제한했습니다. 나중에 호출해 보세요.
- HTTP 상태 코드 : 400 - 연결 제한 초과 예외 : 허용된 클라이언트 연결 한도를 초과했기 때문에 Kinesis Video Streams에서 요청이 제한되었습니다.
- HTTP 상태 코드 : 400 - InvalidArgumentException : 입력 매개변수의 값이 잘못되었습니다.
- HTTP 상태 코드 : 400 - InvalidEndpointException : 호출자가 잘못된 엔드포인트를 사용하여 스트림에 데이터를 썼습니다. 이러한 예외가 발생하면 사용자는 GetDataEndpoint로 APIName설정된 엔드포인트를 호출 PUT_MEDIA하고 응답의 엔드포인트를 사용하여 다음 PutMedia호출을 실행해야 합니다.
- HTTP 상태 코드 : 401 - 권한이 없음 예외 : 호출자가 주어진 스트림에서 작업을 수행할 권한이 없거나 토큰이 만료되었습니다.
- HTTP 상태 코드 : 404 - 리소스가 발견되지 않음 : 상태 코드: 404, 해당 이름의 스트림이 존재하지 않습니다.
>> GetMedia API Error 필드 오류 정리
- 3002 - 스트림에 쓰는 중 오류가 발생했습니다.
- 4000 - 요청된 조각을 찾을 수 없습니다.
- 4500 - 스트림의 KMS 키에 대한 액세스가 거부되었습니다.
- 4501 - 스트림의 KMS 키가 비활성화되었습니다.
- 4502 - 스트림의 KMS 키에 대한 유효성 검사 오류
- 4503 - 스트림에 지정된 KMS 키를 사용할 수 없습니다.
- 4504 - 스트림에 지정된 KMS 키의 사용이 잘못되었습니다.
- 4505 - 스트림에 지정된 KMS 키의 상태가 잘못되었습니다.
- 4506 - 스트림에 지정된 KMS 키를 찾을 수 없습니다.
- 5000 - 내부 오류
// --------------------------------------------------------------------------------------
// --------------------------------------------------------------------------------------
[참고 사이트]
// --------------------------------------------------------------------------------------
[Aws GetMedia 설명]
https://docs.aws.amazon.com/kinesisvideostreams/latest/dg/API_dataplane_GetMedia.html
[임시 보안 자격 증명 요청]
https://docs.aws.amazon.com/ko_kr/IAM/latest/UserGuide/id_credentials_temp_request.html
[kvs (Kinesis Video Streams) , HLS (HTTP 라이브 스트리밍) 설명 및 정리]
https://blog.naver.com/kkh0977/223724719256?trackingCode=blog_bloghome_searchlist
[AWS 사이트 주요 질문 정리 사이트]
https://aws.amazon.com/ko/kinesis/video-streams/faqs/
// --------------------------------------------------------------------------------------
반응형
'Aws (Amazon)' 카테고리의 다른 글
Comments