쿠키 기본 설정 선택

당사는 사이트와 서비스를 제공하는 데 필요한 필수 쿠키 및 유사한 도구를 사용합니다. 고객이 사이트를 어떻게 사용하는지 파악하고 개선할 수 있도록 성능 쿠키를 사용해 익명의 통계를 수집합니다. 필수 쿠키는 비활성화할 수 없지만 '사용자 지정' 또는 ‘거부’를 클릭하여 성능 쿠키를 거부할 수 있습니다.

사용자가 동의하는 경우 AWS와 승인된 제3자도 쿠키를 사용하여 유용한 사이트 기능을 제공하고, 사용자의 기본 설정을 기억하고, 관련 광고를 비롯한 관련 콘텐츠를 표시합니다. 필수가 아닌 모든 쿠키를 수락하거나 거부하려면 ‘수락’ 또는 ‘거부’를 클릭하세요. 더 자세한 내용을 선택하려면 ‘사용자 정의’를 클릭하세요.

생산자 SDK 구조

포커스 모드
생산자 SDK 구조 - Amazon Kinesis Video Streams

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

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

이 섹션에는 Kinesis Video Streams 생산자 객체에 데이터를 제공하는 데 사용할 수 있는 구조에 대한 정보가 포함되어 있습니다.

DeviceInfo/DefaultDeviceInfoProvider

DeviceInfoDefaultDeviceInfoProvider 객체는 Kinesis Video Streams 생산자 객체의 동작을 제어합니다.

멤버 필드

  • 버전 - 올바른 버전의 구조가 현재 버전의 코드 기반과 함께 사용되는지 확인하는 데 사용되는 정수 값입니다. 현재 버전은 DEVICE_INFO_CURRENT_VERSION 매크로를 사용하여 지정됩니다.

  • name - 디바이스의 사람이 읽을 수 있는 이름입니다.

  • tagCount/tags - 현재 사용되지 않습니다.

  • streamCount - 디바이스가 처리할 수 있는 최대 스트림 수입니다. 이 값은 초기에 포인터를 위한 스토리지를 스트림 객체에 미리 할당하지만 실제 스트림 객체는 나중에 생성됩니다. 기본값은 16스트림이지만 DefaultDeviceInfoProvider.cpp 파일에서 이 수를 변경할 수 있습니다.

  • storageInfo: 기본 스토리지 구성을 설명하는 객체입니다. 자세한 내용은 StorageInfo 단원을 참조하십시오.

StorageInfo

Kinesis Video Streams의 기본 스토리지 구성을 지정합니다.

기본 구현은 스트리밍에 최적화된 빠른 힙의 낮은 조각화를 기반으로 합니다. 주어진 플랫폼에 중복 기재가 가능한 MEMALLOC 할당자를 사용합니다. 어떤 플랫폼은 피지컬 페이지로 할당을 지원하지 않아도 가상 메모리가 할당됩니다. 메모리가 사용될 때 가상 페이지는 피지컬 페이지로 지원됩니다. 결과적으로 스토리지가 충분히 사용되지 않을 때에도 전체 시스템에 메모리 부족 압력이 발생합니다.

다음 수식을 기반으로 기본 스토리지 크기를 계산합니다. DefragmentationFactor를 1.2(20퍼센트)로 설정해야 합니다.

Size = NumberOfStreams * AverageFrameSize * FramesPerSecond * BufferDurationInSeconds * DefragmentationFactor

다음 예제에서는 디바이스에 오디오 및 비디오 스트림이 있습니다. 오디오 스트림의 초당 샘플 수는 512이며 샘플은 평균 100바이트입니다. 비디오 스트림의 초당 프레임 수는 25이며 평균 10,000바이트입니다. 각 스트림의 버퍼 지속 시간은 3분입니다.

Size = (512 * 100 * (3 * 60) + 25 * 10000 * (3 * 60)) * 1.2 = (9216000 + 45000000) * 1.2 = 65059200 = ~ 66MB.

디바이스에 사용 가능한 메모리가 더 많은 경우 심각한 조각화를 방지하기 위해 스토리지에 메모리를 더 추가하는 것이 좋습니다.

스토리지 크기가 인코딩 복잡성이 높거나(높은 모션으로 인해 프레임 크기가 더 큰 경우) 대역폭이 낮은 모든 스트림의 전체 버퍼를 수용하기에 적합한지 확인합니다. 생산자가 메모리 압력에 도달하면 스토리지 오버플로 압력 콜백()을 내보냅니다StorageOverflowPressureFunc. 그러나 콘텐츠 스토어에서 메모리를 사용할 수 없는 경우 오류()와 함께 Kinesis Video Streams로 푸시되는 프레임을 삭제합니다STATUS_STORE_OUT_OF_MEMORY = 0x5200002e. 자세한 내용은 클라이언트 라이브러리에서 반환한 오류 및 상태 코드 단원을 참조하십시오. 이는 애플리케이션 승인(ACKs)을 사용할 수 없거나 지속된이 지연되는 경우에도 발생할 수 ACKs 있습니다. 이 경우 버퍼는 이전 프레임이 삭제되기 전에 "버퍼 기간" 용량으로 채워집니다.

멤버 필드

  • 버전 - 올바른 버전의 구조가 현재 버전의 코드 기반과 함께 사용되는지 확인하는 데 사용되는 정수 값입니다.

  • storageType - 스토리지의 기본 지원 및 구현을 지정하는 DEVICE_STORAGE_TYPE 열거입니다. 현재 지원되는 값은 DEVICE_STORAGE_TYPE_IN_MEM입니다. 향후 구현에서는 DEVICE_STORAGE_TYPE_HYBRID_FILE이 지원되어, 스토리지가 파일 지원 콘텐츠 저장소로 다시 돌아갈 예정입니다.

  • storageSize - 사전 할당할 바이트 단위의 스토리지 크기입니다. 최소 할당은 10MB이고, 최대 할당은 10GB입니다. (이 값은 파일 지원 콘텐츠 스토어의 향후 구현에서 변경됩니다.)

  • spillRatio - 보조 오버플로 스토리지(파일 스토리지)가 아닌 직접 메모리 스토리지 유형(RAM)에서 할당할 스토리지의 백분율을 나타내는 정수 값입니다. 현재 사용 중이지 않습니다.

  • rootDirectory: 파일 지원 콘텐츠 스토어가 있는 디렉터리의 경로입니다. 현재 사용 중이지 않습니다.

프라이버시사이트 이용 약관쿠키 기본 설정
© 2025, Amazon Web Services, Inc. 또는 계열사. All rights reserved.