다음을 통해 공유


Azure AI Video Indexer를 대규모로 사용할 때 고려해야 할 사항

Azure AI Video Indexer를 사용하여 비디오를 인덱싱하고 비디오 보관이 증가하는 경우 스케일링을 고려합니다.

이 문서에서는 다음과 같은 질문에 응답합니다.

  • 고려해야 할 기술 제약 조건이 있나요?
  • 작업을 수행하는 스마트하고 효율적인 방법이 있나요?
  • 프로세스에서 과도한 비용 지출을 방지할 수 있나요?

문서에서는 Azure AI Video Indexer를 대규모로 사용하는 방법의 6가지 모범 사례를 제공합니다.

비디오를 업로드할 때 바이트 배열을 통해 URL을 사용하는 것이 좋습니다.

Azure AI Video Indexer는 URL에서 또는 파일을 바이트 배열로 직접 전송하여 비디오를 업로드할 수 있는 옵션을 제공하며, 후자에는 몇 가지 제약 조건이 있습니다.

첫째, 파일 크기 제한 사항이 있습니다. URL을 사용하는 동안 업로드 크기가 30GB로 제한되는 것에 비해 바이트 배열 파일의 크기는 2GB로 제한됩니다.

그 다음으로, 성능에 영향을 미칠 수 있는 몇 가지 문제와 따라서 확장 능력에 대해서 고려해 보십시오.

  • 다중 파트를 사용하여 파일을 보내는 것은 네트워크에 대한 높은 종속성을 의미합니다.
  • 서비스 안정성,
  • 연결성
  • 업로드 속도,
  • World Wide Web의 어딘가에서 손실된 패킷.

Azure AI Video Indexer를 대규모로 사용하기 위한 첫 번째 고려 사항에 대한 다이어그램

URL을 사용하여 비디오를 업로드하는 경우 미디어 파일 위치의 경로를 제공하면 되고 나머지는 Video Indexer가 처리합니다(videoUrl API에서 필드 참조).

비디오 업로드 API의 videoUrl 선택적 매개 변수를 사용합니다. 또한 AzCopy 를 사용하여 빠르고 신뢰할 수 있는 방법으로 콘텐츠를 스토리지 계정으로 가져올 수 있으며, SAS URL을 사용하여 Azure AI Video Indexer에 제출할 수 있습니다. Azure AI Video Indexer는 읽기 전용 SAS URL을 사용하는 것이 좋습니다.

제한을 준수하다

Azure AI Video Indexer는 대규모 인덱싱을 처리하도록 빌드되었습니다. 최대한 활용하려는 경우 시스템의 기능을 인식하고 그에 따라 통합을 설계해야 합니다. 일부 영화가 업로드되지 않았고 HTTP 429 응답 코드(요청이 너무 많음)를 수신하고 있음을 발견하기 위해 비디오 일괄 처리에 대한 업로드 요청을 보내지 않으려는 경우 초당 10개의 요청과 분당 최대 120개의 요청으로 구성된 API 요청 제한이 있습니다.

Azure AI Video Indexer는 retry-after HTTP 응답에 헤더를 추가합니다. 헤더는 다음 재시도를 시도할 시기를 지정합니다. 다음 요청을 시도하기 전에 제한을 준수하는지 확인합니다.

너무 많은 요청 옵션을 보여 주는 스크린샷.

콜백 URL 사용

요청 업로드 요청의 상태를 반복적으로 폴링하는 대신 콜백 URL을 추가하고 Azure AI Video Indexer가 업데이트되기를 기다릴 수 있습니다. 업로드 요청에 상태가 변경되면 지정한 URL에 POST 알림이 표시됩니다.

콜백 URL을 업로드 비디오 API의 매개 변수 중 하나로 추가할 수 있습니다. GitHub 리포지토리에서 코드 샘플을 확인합니다.

콜백 URL의 경우 Azure Functions를 사용할 수도 있습니다. HTTP에서 트리거되고 다음 흐름을 구현할 수 있는 서버리스 이벤트 기반 플랫폼입니다.

콜백 URL 정의

콜백 URL은 POST 요청을 통해 고객에게 다음 이벤트를 알리는 데 사용됩니다.

  • 인덱싱 상태 변경

    • 속성:

      이름 설명
      id 비디오 아이디
      state 비디오 상태
    • 예: https://test.com/notifyme?projectName=MyProject& id=1234abcd&state=처리됨

  • 비디오에서 식별된 사용자

    • 속성

      이름 설명
      id 비디오 아이디
      faceId 비디오 인덱스에 표시되는 얼굴 ID
      knownPersonId 얼굴 모델 내에서 특정된 고유한 사람 ID
      personName 사람의 이름
    • 예: https://test.com/notifyme?projectName=MyProject& id=1234abcd&faceid=12&knownPersonId=CCA84350-89B7-4262-861C-3CAC796542A5&personName=Inigo_Montoya

적합한 인덱싱 매개 변수 사용

Azure AI Video Indexer를 대규모로 사용하는 것과 관련된 결정을 내릴 때 요구 사항에 적합한 매개 변수를 사용하여 Azure AI Video Indexer를 최대한 활용하는 방법을 살펴봅니다. 다양한 매개 변수를 정의하여 비용을 절감하고 비디오의 인덱싱 프로세스를 더 빠르게 만들 수 있는 사용 사례를 살펴봅니다. 예를 들어, 비디오를 시청하지 않으려는 경우 사전 설정을 스트리밍으로 설정하지 않으며, 오디오 인사이트만 필요한 경우 비디오 인사이트를 인덱싱하지 않습니다.

가장 높은 해상도가 아닌 최적 해상도로 인덱싱

비디오 인덱싱에 필요한 비디오 품질은 무엇인가요?라는 질문을 할 수 있습니다.

대부분의 경우 인덱싱 성능은 HD(720p) 비디오와 4K 비디오 간에 거의 차이가 없습니다. 결국, 동일한 신뢰도로 거의 동일한 인사이트를 얻을 수 있습니다. 업로드하는 동영상의 품질이 높을수록 파일 크기가 높아지고 비디오를 업로드하는 데 필요한 컴퓨팅 성능과 시간이 높아집니다.

예를 들어, 얼굴 감지 기능의 경우 더 높은 해상도를 사용하면 작지만 맥락상 중요한 얼굴이 많이 있는 시나리오에 도움이 될 수 있습니다. 그러나 런타임이 제곱으로 증가하고 오탐의 위험이 증가하는 단점이 있습니다.

따라서 사용 사례에 적합한 결과를 얻는지 확인하고 먼저 로컬로 테스트하는 것이 좋습니다. 동일한 비디오를 720p 및 4K로 업로드하고 얻을 수 있는 인사이트를 비교합니다.