Partilhar via


Coisas a considerar ao usar o Azure AI Video Indexer em escala

Ao usar o Azure AI Video Indexer para indexar vídeos e seu arquivo de vídeos estiver crescendo, considere o dimensionamento.

Este artigo responde a perguntas como:

  • Há alguma restrição tecnológica que eu precise levar em conta?
  • Existe uma forma inteligente e eficiente de o fazer?
  • Posso evitar gastar dinheiro em excesso no processo?

O artigo fornece seis práticas recomendadas de como usar o Azure AI Video Indexer em escala.

Ao carregar vídeos, considere usar uma matriz de URL sobre bytes;

O Azure AI Video Indexer dá-lhe a opção de carregar vídeos a partir de um URL ou diretamente enviando o ficheiro como uma matriz de bytes, este último vem com algumas restrições.

Primeiro, ele tem limitações de tamanho de arquivo. O tamanho do arquivo de matriz de bytes é limitado a 2 GB em comparação com a limitação de tamanho de upload de 30 GB ao usar URL.

Em segundo lugar, considere apenas alguns dos problemas que podem afetar seu desempenho e, portanto, sua capacidade de escalar:

  • Enviar arquivos usando várias partes significa alta dependência de sua rede,
  • fiabilidade do serviço,
  • Conectividade
  • velocidade de upload,
  • Pacotes perdidos em algum lugar na World Wide Web.

Primeira consideração para usar o Azure AI Video Indexer em escala

Quando você carrega vídeos usando URL, você só precisa fornecer um caminho para o local de um arquivo de mídia e Video Indexer cuida do resto (veja o videoUrl campo na API de upload de vídeo ).

Gorjeta

Use o videoUrl parâmetro opcional da API de upload de vídeo. Além disso, você pode usar o AzCopy para obter uma maneira rápida e confiável de obter seu conteúdo para uma conta de armazenamento a partir da qual você pode enviá-lo para o Azure AI Video Indexer usando a URL SAS. O Azure AI Video Indexer recomenda o uso de URLs SAS somente leitura.

Respeite a limitação

O Azure AI Video Indexer foi criado para lidar com a indexação em escala e, quando quiser tirar o máximo proveito dela, também deve estar ciente dos recursos do sistema e projetar sua integração de acordo. Você não quer enviar uma solicitação de upload para um lote de vídeos apenas para descobrir que alguns dos filmes não foram carregados e você está recebendo um código de resposta HTTP 429 (muitas solicitações). Há um limite de solicitações de API de 10 solicitações por segundo e até 120 solicitações por minuto.

O Azure AI Video Indexer adiciona um retry-after cabeçalho na resposta HTTP, o cabeçalho especifica quando você deve tentar sua próxima tentativa. Certifique-se de respeitá-lo antes de tentar o seu próximo pedido.

Projete bem sua integração, respeite a limitação

Usar URL de retorno de chamada

Recomendamos que, em vez de pesquisar o status da sua solicitação constantemente a partir do segundo em que você enviou a solicitação de carregamento, você possa adicionar uma URL de retorno de chamada e aguardar que o Azure AI Video Indexer o atualize. Assim que houver qualquer alteração de status em sua solicitação de upload, você receberá uma notificação POST para o URL especificado.

Você pode adicionar uma URL de retorno de chamada como um dos parâmetros da API de upload de vídeo. Confira os exemplos de código no repositório GitHub.

Para URL de retorno de chamada, você também pode usar o Azure Functions, uma plataforma orientada a eventos sem servidor que pode ser acionada por HTTP e implementar um fluxo a seguir.

definição de URL de retorno de chamada

Um URL de retorno de chamada é usado para notificar o cliente (por meio de uma solicitação POST) sobre os seguintes eventos:

  • Alteração do estado de indexação:

    • Propriedades:

      Nome Descrição
      id O ID do vídeo
      state O estado do vídeo
    • Exemplo: https://test.com/notifyme?projectName=MyProject& id=1234abcd&state=Processado

  • Pessoa identificada no vídeo:

    • Propriedades

      Nome Descrição
      id O ID do vídeo
      faceId O ID do rosto que aparece no índice de vídeo
      conhecidoPersonId O ID de pessoa que é exclusivo dentro de um modelo de rosto
      nome_da-pessoa O nome da pessoa
    • Exemplo: https://test.com/notifyme?projectName=MyProject& id=1234abcd&faceid=12&knownPersonId=CCA84350-89B7-4262-861C-3CAC796542A5&personName=Inigo_Montoya

Use os parâmetros de indexação corretos para você

Ao tomar decisões relacionadas ao uso do Azure AI Video Indexer em escala, veja como tirar o máximo proveito dele com os parâmetros certos para suas necessidades. Pense no seu caso de uso, definindo diferentes parâmetros você pode economizar dinheiro e tornar o processo de indexação para seus vídeos mais rápido. Por exemplo, não defina a predefinição para streaming se você não planeja assistir ao vídeo, não indexe insights de vídeo se precisar apenas de informações de áudio.

Índice em resolução ideal, não na resolução mais alta

Você pode estar se perguntando, que qualidade de vídeo você precisa para indexar seus vídeos?

Em muitos casos, o desempenho de indexação quase não tem diferença entre vídeos HD (720P) e vídeos 4K. Eventualmente, você obterá quase os mesmos insights com a mesma confiança. Quanto maior a qualidade do filme que você carrega, maior o tamanho do arquivo, e isso leva a um maior poder de computação e tempo necessário para carregar o vídeo.

Por exemplo, para o recurso de deteção de rosto, uma resolução mais alta pode ajudar com o cenário onde há muitos rostos pequenos, mas contextualmente importantes. No entanto, isso vem com um aumento quadrático no tempo de execução e um aumento do risco de falsos positivos.

Portanto, recomendamos que você verifique se obtém os resultados certos para seu caso de uso e primeiro teste-o localmente. Carregue o mesmo vídeo em 720P e em 4K e compare as informações que obtém.