Skip to content

matheusaraujo/mvideoconverter

Repository files navigation

mvideoconverter

mvideoconverter - Conversor online de vídeo para formato Web.

Live Demo: https://young-spire-26394.herokuapp.com/

Visão Geral

A aplicação nesse repositório é um conversor online de vídeos. Ela recebe vídeos em qualquer formato e converte para o formato MP4, compatível com a Web.

Os arquivos são armazenados na Amazon S3 e convertidos pela ferramenta Zencoder.

A aplicação Demo está rodando no Heroku.

Por limitações da versão free da ferramenta Zencoder, os vídeos convertidos têm, no máximo, 5 segundos.

Diagramas

Diagrama de componentes

A aplicação está dividida em um WebApp AngularJS e uma API em Java Spring, além dos Amazon S3 e Zencoder.

Componentes

Diagrama de sequência

A conversão e exibição do vídeo se dá nos seguintes passos:

  1. Usuário seleciona arquivo
  2. Angular App requisita uma URL Pre-Signed para a API
  3. API requisita a URL Pre-Signed para o Amazon S3
  4. Angular App sobe o arquivo para o Amazon S3
  5. Angular App notifica a API sobre o upload
  6. API cria um Job no Zencoder e retorna para o App
  7. Zencoder armazena o vídeo convertido no Amazon S3
  8. Angular App requisita o status do vídeo até que esteja convertido
  9. O vídeo está convertido
  10. Angular App exibe o vídeo

Sequência

Próximos passos

Algumas sugestão de melhorias são:

  • Funcionalidades
    • Possibilitar escolher formato da conversão
    • Possibilitar converter arquivo a partir de uma URL
    • Armazenar uma referência para os vídeos convertidos, de forma que eles possam ser apenas exibidos em um segundo acesso

Acesse o Projeto para acompanhar.

Referências