Criar fluxos e ingerir dados

A primeira etapa para analisar seus dados de vídeo com um aplicativo é criar um pipeline para o fluxo contínuo de dados. Os streams oferecem a capacidade de ingerir dados de vídeo em tempo real, que podem ser usados como entrada para modelos ou armazenados em um data warehouse.

Criar um stream

Para transmitir dados de vídeo, primeiro você precisa criar uma transmissão.

Na primeira vez que você cria uma transmissão em um novo projeto, pode levar algum tempo para que ela seja criada. Esse tempo é de cerca de 30 minutos. Esse tempo é devido ao sistema precisar inicializar um cluster de computação para cálculos subsequentes.

Console

Crie uma transmissão no console do Google Cloud.

  1. Abra a guia Streams do painel da Vertex AI Vision.

    Acessar a guia "Streams"

  2. Clique em Registrar.

  3. Insira o nome do stream e selecione uma região. Clique em Adicionar linha para registrar várias transmissões ao mesmo tempo.

  4. Clique no botão Register para criar um ou mais streams.

Ingerir vídeos

Depois de criar um stream, você pode começar a ingerir dados usando esse stream.

Há algumas limitações e considerações para vídeos enviados:

  • A origem de vídeo de entrada precisa ter as seguintes especificações:

    Se o vídeo não atender a essas especificações, a Vertex AI Vision talvez não processe bem a entrada.

  • O áudio é descartado durante a transferência.
  • Se o stream fizer parte de um app conectado a um repositório, os parâmetros de vídeo (como QPS ou resolução) precisam ser os mesmos para todo o stream. Não é possível usar variações nos parâmetros de dados de vídeo RTSP ou locais.
  • Devido à latência de inicialização do modelo, os vídeos enviados podem não ter os primeiros segundos de conteúdo. Esse período pode chegar a 15 segundos.
  • O encerramento da transferência pode acontecer após uma conexão longa (cerca de cinco horas, em média). Não há capacidade de reconexão da ferramenta vaictl. Os usuários precisam se reconectar manualmente.
  • Embora o vaictl seja uma ferramenta útil para ingerir dados de vídeo, ele não processa automaticamente a recuperação de erros de rede. Esses erros podem vir da origem de dados ou da ingestão na Nuvem. É responsabilidade do usuário criar um script de reinicialização para processar encerramentos inesperados de operações vaictl.

SDK da Vertex AI Vision

Para enviar uma solicitação de transferência de dados de vídeo usando um stream, é necessário instalar o SDK da Vertex AI Vision.

Faça as seguintes substituições de variáveis:

  • PROJECT_ID: o ID do projeto do Google Cloud .
  • LOCATION_ID: o ID do local. Por exemplo, us-central1. Mais informações. Regiões com suporte.
  • LOCAL_FILE.EXT: o nome de um arquivo de vídeo local. Por exemplo, my-video.mp4.
  • STREAM_ID: o ID do stream que você criou no cluster. Por exemplo, input-1.
  • RTSP_ADDRESS: o endereço do feed do protocolo de streaming em tempo real (RTSP). Por exemplo, rtsp://my-ip-camera.

Dados de vídeo locais:

# This command streams a video file to a stream. Streaming ends when the video ends.
vaictl -p PROJECT_ID \
         -l LOCATION_ID \
         -c application-cluster-0 \
         --service-endpoint visionai.googleapis.com \
send video-file to streams STREAM_ID --file-path LOCAL_FILE.EXT

Dados de vídeo locais (em loop):

# This command streams a video file to a stream. Video is looped into the stream until you stop the command.
vaictl -p PROJECT_ID \
         -l LOCATION_ID \
         -c application-cluster-0 \
         --service-endpoint visionai.googleapis.com \
send video-file to streams STREAM_ID --file-path LOCAL_FILE.EXT --loop

Dados do feed do Real Time Streaming Protocol (RTSP):

# This command will send an RTSP feed into the stream.
# This command has to run in the network that has direct access to the RTSP feed.
vaictl -p PROJECT_ID \
         -l LOCATION_ID \
         -c application-cluster-0 \
         --service-endpoint visionai.googleapis.com \
send rtsp to streams STREAM_ID --rtsp-uri RTSP_ADDRESS

Assistir vídeos transferidos

Depois de criar uma transmissão e enviar conteúdo de vídeo para ela, você pode reproduzir o conteúdo de vídeo.

Se você deixar a guia "Visualização de stream" aberta por mais de uma hora, será necessário atualizar a página para continuar carregando o conteúdo do vídeo.

Console

Reproduza o vídeo transferido no console do Google Cloud.

  1. Abra a guia Streams do painel da Vertex AI Vision.

    Acessar a guia "Streams"

  2. Clique no nome do fluxo na lista.

  3. Na página de detalhes do stream de vídeo, a visualização ao vivo do vídeo transferido é carregada automaticamente.