Usar com um conector de Aplicativos Lógicos
A API REST do Azure AI Video Indexer (VI) dá suporte à comunicação de servidor para servidor e de cliente para servidor. A API permite que você integre insights de vídeo e áudio à lógica do aplicativo.
Oferecemos suporte a conectores de Aplicativos Lógicos e Power Automate compatíveis com a API do Azure AI Video Indexer.
Você pode usar os conectores para configurar fluxos de trabalho personalizados a fim de indexar e extrair insights de uma grande quantidade de arquivos de vídeo e áudio, sem escrever uma só linha de código. O uso dos conectores para a integração oferece visibilidade sobre a integridade do fluxo de trabalho e uma maneira de depurá-lo.
Introdução
O exemplo neste artigo cria fluxos de Aplicativo Lógico. Os recursos do Aplicativo Lógico e do Power Automate e seus editores são quase idênticos.
A abordagem de dois fluxos, dois fluxos que funcionam juntos, dá suporte ao upload assíncrono e à indexação de arquivos maiores de forma eficaz.
- O primeiro fluxo é disparado quando um blob é adicionado ou modificado em uma conta de Armazenamento do Azure. Ele carrega o novo arquivo para o Azure AI Video Indexer com uma URL de retorno de chamada para enviar uma notificação assim que a operação de indexação for concluída.
- O segundo fluxo é disparado com base na URL de retorno de chamada e salva os insights extraídos em um arquivo JSON no Armazenamento do Azure.
Os aplicativos lógicos que você cria neste artigo contêm um fluxo por aplicativo. A segunda seção, Criar um novo aplicativo lógico de consumo de tipo, explica como conectar os dois. O segundo fluxo é autônomo e é acionado pelo primeiro.
Quando um arquivo é carregado e indexado a partir do primeiro fluxo, ele envia uma solicitação HTTP com a URL de retorno de chamada correta para acionar o segundo fluxo. Em seguida, isso recuperará os insights gerados pelo Azure AI Video Indexer. Neste exemplo, ele armazena a saída de seu trabalho de indexação no Armazenamento do Azure. No entanto, você decide o que deseja fazer com a saída.
Pré-requisitos
- Se você não tiver uma assinatura do Azure, crie uma conta gratuita do Azure antes de começar.
- Crie uma conta do Azure AI Video Indexer baseada em ARM.
- Criar uma conta de Armazenamento do Microsoft Azure. As contas de armazenamento para VI devem ser uma conta de armazenamento Standard de uso geral v2. Anote a chave de acesso de sua conta de armazenamento.
- Crie dois contêineres: um para armazenar os arquivos de mídia e o segundo para armazenar os insights gerados pelo Azure AI Video Indexer. Neste artigo, os contêineres são
videos
einsights
.
- Crie dois contêineres: um para armazenar os arquivos de mídia e o segundo para armazenar os insights gerados pelo Azure AI Video Indexer. Neste artigo, os contêineres são
Gerar um token de acesso
- Gere um token de acesso usando o generateAccessToken. Pressione Experimentar para obter os valores corretos para sua conta.
- Copie e cole-o no Bloco de Notas para uma etapa posterior.
Fluxo #1: Configurar o fluxo de upload de arquivo
Esta seção descreve como configurar o primeiro fluxo, upload de arquivo. O primeiro fluxo é disparado quando um blob é adicionado ou modificado em uma conta de Armazenamento do Azure. Ele carrega o novo arquivo para o Azure AI Video Indexer com uma URL de retorno de chamada para enviar uma notificação assim que a operação de indexação for concluída.
As etapas do fluxo são:
- Quando um blob é adicionado ou modificado (somente propriedades) (V2)
- Criar URI SAS por caminho (V2)
- HTTP
- Fazer upload de vídeo e indexar
Criar a etapa Quando um blog é adicionado ou modificado (somente propriedades)(V2)
Crie o Aplicativo Lógico na mesma região que a região da conta do Azure Video Indexer (recomendado, mas não obrigatório).
Chame o aplicativo
UploadIndexVideosApp
lógico .- Selecione Consumo para Tipo de Plano.
- Pressione Examinar + criar – >Criar.
- Depois que a implantação do Aplicativo Lógico for concluída, no portal do Azure, pesquise e navegue até o Aplicativo Lógico recém-criado.
- Na seção Configurações, no painel esquerdo, selecione a guia Identidade.
- Em Sistema atribuído, altere o Status de Desativado para Ativado (a etapa é importante para posteriormente neste tutorial).
- Pressione Salvar na parte superior da página.
- Selecione a guia Designer de Aplicativo Lógico, no painel à esquerda.
- Escolha um fluxo do aplicativo lógico em branco.
- Pesquise "blob" na folha Escolher uma Operação.
- Na guia Todos, escolha o componente Armazenamento de Blobs do Azure.
- Em Gatilhos, selecione o gatilho Quando um blob é adicionado ou modificado (somente propriedade) (V2).
Crie um gatilho Quando um blob é adicionado ou modificado (somente propriedades) (V2).
Defina a conexão de armazenamento para estes valores:
Chave Valor Nome da conexão <Nomeie sua conexão>. Tipo de autenticação Chave de Acesso Nome da conta de armazenamento do Azure <Nome da conta de armazenamento onde os arquivos de mídia serão armazenados>. Chave de acesso da conta de armazenamento do Microsoft Azure Para obter a chave de acesso da sua conta de armazenamento: no portal do Azure – >meu armazenamento> em Segurança + rede – >Chaves de acesso – > copie uma das chaves. - Selecione Criar.
- Especifique o contêiner de armazenamento de blobs que é monitorado quanto a alterações.
Chave Valor Nome da conta de armazenamento Nome da conta de armazenamento em que os arquivos de mídia serão armazenados Contêiner /videos
- Selecione Salvar ->
Criar URI SAS por caminho (V2)
Selecione +Nova etapa
Criar URI SAS por ação de caminho.
- Selecione a guia Ação.
- Pesquise e selecione Criar URI SAS por caminho (V2).
Chave Valor Nome da conta de armazenamento <Nome da conta de armazenamento onde os arquivos de mídia são armazenados>. Caminho do Blob Em conteúdo dinâmico, selecione Lista de Caminho dos Arquivos Identificador da Política de Grupo Mantenha o valor padrão. Permissões Leitura Protocolo de Acesso Compartilhado (aparece depois de pressionar Adicionar novo parâmetro) HttpsOnly - Selecione Salvar.
Selecione + Nova etapa.
Criar uma ação HTTP
Pesquise e crie uma ação HTTP usando os valores na tabela a seguir:
Chave Valor Observações Method POST URI [Token de acesso](#generate um token de acesso) Corpo { "permissionType": "Contributor", "scope": "Account" }
Consulte o exemplo de documento REST e certifique-se de excluir a linha POST. Adicionar novo parâmetro Autenticação - Preencha os parâmetros necessários para autenticação de acordo com a tabela a seguir:
Chave Valor Tipo de autenticação Identidade gerenciada Identidade gerenciada Identidade gerenciada atribuída pelo sistema Público-alvo https://management.core.windows.net
- Selecione Salvar.
Configurar permissões
Configure as permissões entre o aplicativo lógico e a conta do Azure AI Video Indexer.
Configure a identidade gerenciada atribuída pelo sistema para permissão no recurso Azure AI Video Indexer. No portal do Azure, acesse o recurso/conta do Azure AI Video Indexer.
- Na folha do lado esquerdo e selecione Controle de acesso.
- Selecione Adicionar – >Adicionar atribuição de função –>Colaborador – >Próximo – >Usuário, grupo ou entidade de serviço – >+Selecionar membros.
- Em Membros, pesquise o nome dos Aplicativos Lógicos que você criou (neste caso,
UploadIndexVideosApp
). - Pressione Selecionar.
- Pressione Revisar + Atribuir.
Criar uma ação Enviar vídeo e indexar
Selecione Video Indexer(V2).
Em Video Indexer(V2), escolha Carregar vídeo e índice.
Defina a conexão com a conta do Video Indexer com os parâmetros na tabela a seguir:
Chave Valor Nome da conexão <Insira um nome para a conexão >, nesse caso, aviconnection
.Chave de API Essa é sua chave de API pessoal, que está disponível em Perfil no portal do desenvolvedor Como esse Aplicativo Lógico é para contas do ARM, não precisamos da chave de API real e você pode preencher um valor fictício como 12345 Selecione Criar.
Preencha os parâmetros de ação Carregar vídeo e índice.
Dica
Se o ID da conta VI não puder ser encontrado e não estiver no menu suspenso, use o valor personalizado.
Chave Valor Location Local da conta associada do Azure AI Video Indexer. ID da Conta ID da conta do Azure AI Video Indexer associada. É possível encontrar a ID da conta na página Visão geral da conta, no portal do Azure. Ou a guia Configurações da conta, à esquerda do site do Azure AI Video Indexer. Token de acesso Use a expressão body('HTTP')['accessToken']
para extrair da chamada HTTP anterior o token de acesso no formato correto.Nome do vídeo Selecione Lista de Nomes de Arquivos no conteúdo dinâmico de Quando um blob é adicionado ou modificado. URL do Vídeo Selecione a URL da Web no conteúdo dinâmico de Criar URI SAS por ação de caminho. Corpo Pode ser deixado como padrão. Selecione Salvar.
Fluxo #2: Criar um novo aplicativo lógico de consumo de tipo
Crie o segundo fluxo, Aplicativos Lógicos de consumo de tipo. O segundo fluxo é disparado com base na URL de retorno de chamada e salva os insights extraídos em um arquivo JSON no Armazenamento do Azure.
As etapas do fluxo são:
- Quando uma solicitação HTTP é recebida
- HTTP
- Obter índice de vídeo
- Criar blob (V2)
Configurar o gatilho
Pesquise e selecione Quando uma solicitação HTTP é recebida.
Para o gatilho, há um campo URL HTTP POST. A URL não será gerada até que você salve o fluxo. No entanto, você precisará dela em algum momento.
Dica
Voltaremos à URL criada nesta etapa.
Gerar um token de acesso
Talvez seja necessário gerar outro token de acesso, dependendo de como você configurou o primeiro. Copie e cole no Bloco de Notas.
- Gerar um token de acesso.
- Selecione Salvar – >+Nova etapa.
Configurar obter insights do Video Indexer
Pesquise "Video Indexer".
Em Video Indexer(V2), selecione a ação Obter Índice de Vídeo.
Defina o nome da conexão:
Chave Valor Nome da conexão <Um nome para conexão>. Por exemplo, aviconnection
.Chave de API Essa é sua chave de API pessoal, que está disponível em Perfil no portal do desenvolvedor. Para obter mais informações, consulte Assinar API. Selecione Criar.
Preencha os parâmetros necessários de acordo com a tabela:
Chave Valor Location O local da conta do Azure AI Video Indexer. ID da Conta A ID da conta do Video Indexer pode ser copiada da página Visão geral do recurso/conta no portal do Azure. ID de vídeo* Para a ID de Vídeo, adicione conteúdo dinâmico do tipo Expressão e coloque a seguinte expressão: triggerOutputs()['queries']['id']. Token de acesso No conteúdo dinâmico, na seção Analisar JSON, selecione o accessToken que é a saída da ação JSON de análise. Essa expressão instrui o conector a obter a ID de Vídeo da saída do gatilho. Nesse caso, a saída do gatilho será a saída de Carregar vídeo e índice no primeiro gatilho.
Selecione Salvar – >+Nova etapa.
Crie um blob e armazene o JSON de insights.
Pesquise "Blob do Azure", no grupo de ações.
Selecione Criar blob(V2).
Defina a conexão com o armazenamento de blobs que armazenará os arquivos de insights JSON.
Chave Valor Nome da conexão <Insira um nome de conexão>. Tipo de autenticação Chave de Acesso Nome da conta de armazenamento do Azure <* O nome da conta de armazenamento em que os insights serão armazenados*>. Chave de Acesso da Conta de Armazenamento do Microsoft Azure Vá para portal do Azure >meu armazenamento> em Segurança + rede – >Chaves de acesso> – copie uma das chaves. - Selecione Criar.
- Defina a pasta na qual os insights serão armazenados.
Chave Valor Nome da conta de armazenamento <Insira o nome da conta de armazenamento que conteria a saída JSON (neste tutorial é o mesmo que o vídeo de origem).> Caminho da pasta No menu suspenso, selecione /insights
Nome de blob No conteúdo dinâmico, na seção Obter Índice de Vídeo, selecione Nome e adicione _insights.json
, o nome do arquivo de insights será o nome do vídeo + insights.jsonConteúdo do blob No conteúdo dinâmico, na seção Obter Índice de Vídeo, selecione o Corpo. - Selecione Salvar fluxo.
Atualize a URL de retorno de chamada para ser notificado quando um trabalho de índice for concluído.
Após o fluxo ser salvo, uma URL HTTP POST será criada no gatilho.
- Copie a URL do gatilho.
- Agora, volte para o primeiro fluxo e cole a URL na ação Carregar vídeo e índice do Parâmetro de URL de retorno de chamada.
Verifique se ambos os fluxos foram salvos.