Streaming usando um plugin GStreamer - Amazon Rekognition

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

Streaming usando um plugin GStreamer

O Amazon Rekognition Video pode analisar uma transmissão de vídeo ao vivo a partir da câmera de um dispositivo. Para acessar a entrada de mídia de uma fonte de dispositivo, você precisa instalar o GStreamer. O GStreamer é um software de estrutura multimídia de terceiros que conecta fontes de mídia e ferramentas de processamento em pipelines de fluxo de trabalho. Você também precisa instalar o Plug-in de produtor do Amazon Kinesis Video Streams para Gstreamer. Esse processo pressupõe que você tenha configurado com êxito seus recursos do Amazon Rekognition Video e do Amazon Kinesis. Para ter mais informações, consulte Configurando seus recursos do Amazon Rekognition Video e do Amazon Kinesis.

Etapa 1: Instale o Gstreamer

Baixe e instale o Gstreamer, um software de plataforma multimídia de terceiros. Você pode usar um software de gerenciamento de pacotes como o Homebrew (Gstreamer no Homebrew) ou obtê-lo diretamente no site do Freedesktop.

Verifique a instalação bem-sucedida do Gstreamer iniciando um feed de vídeo com uma fonte de teste do seu terminal de linha de comando.

$ gst-launch-1.0 videotestsrc ! autovideosink

Etapa 2: Instale o plug-in Kinesis Video Streams Producer

Nesta seção, você fará o download da Amazon Kinesis Video Streams Producer Library e instalará o plug-in Kinesis Video Streams Gstreamer.

Crie um diretório e clone o código-fonte do repositório Github. Certifique-se de incluir o parâmetro --recursive.

$ git clone --recursive https://github.com/awslabs/amazon-kinesis-video-streams-producer-sdk-cpp.git

Siga as instruções fornecidas pela biblioteca para configurar e criar o projeto. Certifique-se de usar os comandos específicos da plataforma para seu sistema operacional. Use o parâmetro -DBUILD_GSTREAMER_PLUGIN=ON ao executar cmake para instalar o plug-in Kinesis Video Streams Gstreamer. Esse projeto requer os seguintes pacotes adicionais que estão incluídos na instalação: GCC ou Clang, Curl, Openssl e Log4cplus. Se sua compilação falhar devido à falta de um pacote, verifique se o pacote está instalado e em seu PATH. Se você encontrar um erro "não é possível executar o programa compilado em C" durante a compilação, execute o comando de compilação novamente. Às vezes, o compilador C correto não é encontrado.

Verifique a instalação do plug-in Kinesis Video Streams executando o comando a seguir.

$ gst-inspect-1.0 kvssink

As informações a seguir, como detalhes de fábrica e do plug-in, devem aparecer:

Factory Details: Rank primary + 10 (266) Long-name KVS Sink Klass Sink/Video/Network Description GStreamer AWS KVS plugin Author AWS KVS <kinesis-video-support@amazon.com> Plugin Details: Name kvssink Description GStreamer AWS KVS plugin Filename /Users/YOUR_USER/amazon-kinesis-video-streams-producer-sdk-cpp/build/libgstkvssink.so Version 1.0 License Proprietary Source module kvssinkpackage Binary package GStreamer Origin URL http://gstreamer.net/ ...

Etapa 3: Execute o Gstreamer com o plugin Kinesis Video Streams

Antes de começar a transmitir da câmera de um dispositivo para o Kinesis Video Streams, talvez seja necessário converter a fonte de mídia em um codec aceitável para o Kinesis Video Streams. Para determinar as especificações e os recursos de formato dos dispositivos atualmente conectados à sua máquina, execute o comando a seguir.

$ gst-device-monitor-1.0

Para começar a transmitir, inicie o Gstreamer com o comando de exemplo a seguir e adicione suas credenciais e informações do Amazon Kinesis Video Streams. Você deve usar as chaves de acesse e a região para o perfil de serviço do IAM que você criou ao conceder ao Amazon Rekognition acesse aos seus streams do Kinesis. Para obter mais informações sobre chaves de acesso, consulte Gerenciando chaves de acesso para usuários do IAM no Guia do usuário do IAM. Além disso, você pode ajustar os parâmetros do argumento do formato de vídeo conforme exigido pelo seu uso e disponíveis no seu dispositivo.

$ gst-launch-1.0 autovideosrc device=/dev/video0 ! videoconvert ! video/x-raw,format=I420,width=640,height=480,framerate=30/1 ! x264enc bframes=0 key-int-max=45 bitrate=500 ! video/x-h264,stream-format=avc,alignment=au,profile=baseline ! kvssink stream-name="YOUR_STREAM_NAME" storage-size=512 access-key="YOUR_ACCESS_KEY" secret-key="YOUR_SECRET_ACCESS_KEY" aws-region="YOUR_AWS_REGION"

Para obter mais comandos de inicialização, consulte Exemplos de comandos de inicialização do GStreamer.

nota

Se o comando de inicialização terminar com um erro de não negociação, verifique a saída do Device Monitor e certifique-se de que os valores dos parâmetros videoconvert sejam recursos válidos do seu dispositivo.

Você verá um feed de vídeo da câmera do seu dispositivo no stream de vídeo do Kinesis após alguns segundos. Para começar a detectar e combinar faces com o Amazon Rekognition, inicie seu processador de stream do Amazon Rekognition Video. Para ter mais informações, consulte Visão geral das operações do processador de stream do Amazon Rekognition Video.