Arquitetura eMAM + AI
1. Requisitos de configuração de rede
Figura 1 - Arquitetura padrão de comunicação eMAM - Video Indexer
1.1.1 Domínio de acesso público (e.g. mam.minhatv.com.br): a API necessita comunicar-se com o servidor web do eMAM tendo em vista a necessidade do acesso à pasta de proxys deste. Isso decorre do fato de que na requisição de indexação/transcript, busca-se eliminar a necessidade da realização de upload do vídeo para a plataforma. Assim, a API tem acesso ao vídeo via endereço HTML (e.g. mam.minhatv.com.br/proxys/vídeo.mp4);
1.1.2 Endereço de IP Público associado ao domínio citado no item anterior (e.g.: mam.minhatv.com.br – 187.72.152.210) via DNS;
1.1.3 Redirecionamento de portas: O roteador/firewall da rede deve redirecionar as requisições e comunicações advindas dos endereços de IP da API em uma porta TCP livre para o endereço de rede interna do servidor MAM na porta 80 (e.g.: Pacote advindo da API no endereço 187.72.152.210 na porta 9000 é redirecionado para o endereço 192.168.1.200 – referente ao servidor do MAM – na porta 80). Este é o funcionamento padrão adotado para acesso à servidores Web por redes externas;
1.1.4 DNS interno: na rede interna, para todos os computadores que utilizarem o MAM, deve-se aplicar como regra de DNS o mapeamento do domínio público criado ao endereço de IP PRIVADO do servidor (e.g. no DNS interno, ou máquina a máquina, associar mam.minhatv.com.br ao endereço 192.168.1.200). Dessa forma, garante-se que a comunicação dos computadores da rede interna com o MAM seja feita inteiramente em rede interna privada;
1.1.5 Regras de Firewall: por questões de segurança, apenas os endereços da API do Azure Video Indexer devem ser liberados para comunicação com o servidor web do MAM (e.g.: apenas o endereço 104.215.95.187 tem entrada liberada ao servidor). Dessa forma, garante-se que os proxys não estejam acessíveis a nenhum outro usuário externo da rede.
Exemplo de procedimentos para funcionamento da integração com API de inteligência artificial
|
2. Configuração HTTPS
2.1 - Binding HTTPS
Para o envio dos vídeos para análise via API do Video Indexer, eles precisam estar acessíveis via HTTPS. Para isso, é necessária a criação de um binding no servidor web do eMAM em uma porta HTTPS, como no exemplo da figura seguinte.
2.2 - Certificado HTTPS
Para o funcionamento correto do HTTPS, faz-se necessária a configuração de um certificado HTTPS no servidor web do MAM. Para isso, recomenda-se a utilização do certificado LetsEncypt, que é gratuito e de fácil configuração.
2.2.1 – Requisitos de configuração de rede:
Para verificação do certificado HTTPS do LetsEncrypt, o usuário pode optar por duas formas: a verificação via IP na porta 80, ou via registro DNS.
2.2.1.1 – Validação via IP:
Na primeira opção, deve-se realizar o seguinte apontamento no firewall:
(ENDEREÇO PÚBLICO DE IP) na porta de entrada 80 à (ENDEREÇO IP PRIVADO DO SERVIDOR WEB) para porta 80. |
Feito isso, basta utilizar um gerador de certificados (recomenda-se o CertifyTheWeb) e validá-lo com a opção de validação via IP.
O redirecionamento da porta 80 pode ser desfeito assim que o certificado for validado.
2.2.1.2 – Validação via DNS
Caso haja a impossibilidade de redirecionamento da porta 80, o usuário deve utilizar a verificação via DNS.
Nesse tipo de validação, o usuário, de posse do domínio do endereço utilizado (ex.: mamws.tvsnews.com.br), deve criar um registro DNS do tipo TXT para ele utilizando uma chave pré-determinada pelo software CertifyTheWeb (as instruções são todas repassadas pelo software ao gerar o novo certificado).
Uma vez criado o registro, realiza-se a verificação via DNS e o certificado é validado normalmente.
3. Plano de indexação e transcrição via MS Azure Video Indexer
3.1 - Conta trial para testes
A API do Video Indexer fornece, para novos usuários, um plano trial para testes das funcionalidades, com as propriedades de acordo com a tabela 1.
| Quantidade de Minutos |
Usuários do site | 600 |
Usuários da API | 2400 |
Tabela 1 - Plano Trial
Sugere-se que todo o fluxo de trabalho seja previamente testado com as contas trials para homologação e testes de adequação às exigências do cliente.
3.2 - Criando uma conta trial no serviço de mídia da Azure
Primeiramente, faz-se necessária a criação de uma conta no site da API do serviço, seguindo o passo a passo:
Para integração com o MS Video Indexer, o usuário deve criar uma conta trial na plataforma, especificamente em:
www.videoindexer.ai/account/login
O usuário deve selecionar a forma preferida de acesso (outlook, gmail, conta corporativa, etc.) e realizar o cadastro.
Uma vez realizado e confirmado o cadastro, o usuário deve acessar o site da API e realizar o login (clicando no link SIGN IN no canto superior direito da tela) com as credenciais cadastradas no passo anterior. O link para o site da API é:
https://api-portal.videoindexer.ai/
No site da API, o usuário deve clicar no link da aba PRODUCTS, e em seguida no link AUTHORIZATION. Novos usuários são automaticamente cadastrados para authorization, sendo assim, basta clicar no link AUTHORIZATION Subscription. A figura seguinte ilustra o processo.
Uma vez criada a chave de autorização, basta clicar em SHOW ao lado da chave e copiar o código (Primary Key).
Em seguida, o usuário deve obter seu AccountID no site da plataforma. Para tal, deve acessar o link https://www.videoindexer.ai/, realizar o login, navegar até as configurações da conta e copiar e salvar o campo AccountID presente na tela. A figura seguinte ilustra os passos do processo.
Finalizado todo o processo, o usuário deve ter em mãos a chave de acesso (Primary Key), o AccountID, obtido no passo anterior e a localization, que para contas trial, tem valor trial. A chave completa deve então obedecer ao formato:
AccountID:PrimaryKey:trial |
3.3 - Associando uma conta do Video Indexer aos Serviços de Mídia da Azure
Após o término do serviço trial, o usuário deve, obrigatoriamente, associar a conta do Video Indexer a um serviço de mídias da Microsoft Azure.
O link abaixo fornece um tutorial completo da própria Microsoft (em português) sobre como proceder para realizar esta associação.
https://docs.microsoft.com/pt-br/azure/cognitive-services/video-indexer/connect-to-azure
3.4 - Serviços de Mídia Utilizados
Segundo o site da Microsoft (https://azure.microsoft.com/pt-br/pricing/details/cognitive-services/video-indexer), quando os clientes utilizam o grupo de recursos dos Serviços de Mídia do Azure para processar conteúdo adicional acima do limite gratuito, os seguintes encargos poderão ser aplicados:
· Análise de áudio/vídeo – cobrada com base no número de minutos de entrada;
· Codificação – os clientes podem escolher entre o streaming de taxa de bits única, adaptável ou sem codificação com base nos requisitos. Os encargos para a codificação de mídia Standard são aplicáveis a esta operação, se utilizada;
· Streaming – cobrado quando o vídeo é transmitido utilizando o widget do player de vídeo;
· Armazenamento – o custo de armazenamento está sujeito aos arquivos salvos em sua conta de armazenamento vinculada à sua conta dos Serviços de Mídia do Azure;
· Saída de rede – cobrada quando os clientes reproduzem a mídia ou baixam insights (como imagens em miniatura extraídas);
· Unidades Reservadas para Mídia – os clientes pagam pelo número de unidades reservadas disponíveis em suas assinaturas.
3.5 - Precificação
Os valores referidos nesta seção foram retirados do site da Microsoft, no dia 10/09/2018.
Importante: o preço em reais (R$) é apenas uma referência. Esta é uma transação internacional e, como tal, seu preço final está sujeito a taxas de câmbio e à inclusão de IOF. Não será emitida uma NFe (site oficial da MS).
Os valores repassados neste documento podem vir a sofrer mudanças, tanto para mais, quanto para menos. Faz-se necessária uma avaliação em real operação dos serviços para uma estimativa correta de precificação.
3.6 – Análise de Áudio/Vídeo (Insights)
Analise arquivos de áudio e de vídeo para extrair diversos insights em um único trabalho de Serviços de Mídia. A análise de áudio inclui reconhecimento de fala, indexação de locutores e palavras-chave. A análise de vídeo inclui análise de áudio, detecção facial, moderação de conteúdo, reconhecimento de caracteres óticos, detecção de capturas, detecção de quadros-chave e detecção de objetos. A tabela 2 indica o preço cobrado por tal serviço, de acordo com os minutos de entrada de vídeo.
| Análise de Vídeo | Análise de Áudio |
Preço por minuto | R$ 0,558 | R$ 0,149 |
Tabela 2 - Preços por análise de vídeo
3.7 - Indexação
A indexação consiste em tornar os seus arquivos de vídeo e conteúdo de mídia pesquisáveis ao extrair o conteúdo de fala. O preço do Indexador de Mídia do Azure é baseado na duração do arquivo de entrada. O indexador aproveita as unidades reservadas de mídia para executar tarefas de processamento de fala em paralelo, quando possível. A tabela 3 indica o preço cobrado por minuto de entrada.
| Preço |
Primeiros 20,000 minutos / mês | R$ 0,075 /minuto de conteúdo |
Próximos 180.000 minutos | R$ 0,071 /minuto de conteúdo |
Próximos 800.000 minutos | R$ 0,067 /minuto de conteúdo |
Acima de 1.000.000 minutos / mês | R$ 0,064 /minuto de conteúdo |
Tabela 3 - Preços por indexação/transcript
3.8 - Unidades reservadas de mídia
As unidades reservadas de mídia são recomendadas caso sua carga de trabalho exija que várias tarefas sejam executadas simultaneamente. Você pode aumentar a produtividade do serviço ao (a) aumentar o número de unidades reservadas de mídia para obter mais tarefas processadas simultaneamente e (b) usar uma unidade reservada de mídia mais rápida (por exemplo, S3). Para obter mais informações, consulte a documentação. A tabela 4 indica os valores cobrados para as diferentes unidades de mídia.
| S1 | S2 | S3 |
Cada unidade | R$0,075 por hora | R$0,149 por hora | R$0,298 por hora |
Processos simultâneos | 1 por unidade | 1 por unidade | 1 por unidade |
Desempenho relativo | Cerca de 2x S1 | Cerca de 4x S1 |
Tabela 4 - Preços por Unidades de Mídia
Para os clientes que escolherem criar um novo grupo de recursos, criam-se dez unidades reservadas para mídia S3. Os clientes podem modificar o número de unidades reservadas conforme necessário.
3.9 - Armazenamento / Saída de Rede
O custo de armazenamento está sujeito aos arquivos salvos na conta de armazenamento vinculada à conta dos Serviços de Mídia do Azure. O storage de uso geral v1 com redundância local atende aos requisitos de funcionamento junto ao MAM, cujo preços são listados na tabela 5.
Armazenamento | LRS |
Primeiro 1 terabyte (TB) / mês | R$ 0,681 por GB |
3.10 - Cenários possíveis de cobrança do Azure
As tabelas seguintes ilustram cenários possíveis de utilização, com valores finais corrigidos e estimados:
Qtd. de Horas diárias | Preço por análise | Preço diário por 10 unidades de mídia |
2 | R$ 84,84 | R$ 9,00 |
5 | R$ 212,10 | R$ 9,00 |
8 | R$ 339,36 | R$ 9,00 |
10 | R$ 424,20 | R$ 9,00 |
|
|
|
|
|
|
Qtd. de Horas | Preço total estimado | Preço total estimado |
diárias | (Diário) | (Mensal) |
2 | R$ 93,84 | R$ 2.815,20 |
5 | R$ 221,10 | R$ 6.633,00 |
8 | R$ 348,36 | R$ 10.450,80 |
10 | R$ 433,20 | R$ 12.996,00 |
Demais informações
Departamento de Projetos SNEWS: +55 61 3044-7878 – projetos@snews.tv