Skip to content

JS Expert Week 8.0 - đŸŽ„Pre processing videos before uploading in the browser 😏

Notifications You must be signed in to change notification settings

ErickWendel/semana-javascript-expert08

Repository files navigation

JSExpertHub Pre-processing videos on browsers - Semana JS Expert 8.0

Seja bem vindo(a) Ă  oitava Semana Javascript Expert. Este Ă© o cĂłdigo inicial para iniciar nossa jornada.

Marque esse projeto com uma estrela 🌟 e acesse o nosso grupo oficial no WhatsApp

Preview

Pre-reqs

  • Este projeto foi criado usando Node.js v18.17.0
  • O ideal Ă© que vocĂȘ use o projeto em ambiente Unix (Linux). Se vocĂȘ estiver no Windows, Ă© recomendado que use o Windows Subsystem Linux pois nas aulas sĂŁo mostrados comandos Linux que possam nĂŁo existir no Windows.

Importante

  • Todo dia Ă s 18hrs estou subindo o cĂłdigo das aulas do dia corrente aqui no repositĂłrio. Se vocĂȘ for iniciar o projeto, remova as pastas das aulas anteriores para iniciar do zero!

Running

  • Execute npm ci na pasta que contĂ©m o arquivo package.json para restaurar os pacotes
  • Execute npm start e em seguida vĂĄ para o seu navegador em http://localhost:3000 para visualizar a pĂĄgina acima

Checklist Features

  • Video Uploader
    • - Deve entender videos em formato MP4 mesmo se nĂŁo estiverem fragmentados
    • - Deve processar itens em threads isoladas com Web Workers
    • - Deve converter fragmentos de videos em formato 144p
    • - Deve renderizar frames em tempo real em elemento canvas
    • - Deve gerar arquivos WebM a partir de fragmentos

Desafios

  • - Encodar em 360p e 720p
  • - Fazer encoding/decoding track de ĂĄudio
  • - Fazer tambĂ©m upload de track de ĂĄudio
  • - Concatenar o arquivo final no servidor em um arquivo sĂł
  • - Corrigir problema do Webm de nĂŁo mostrar a duração do video
  • - Corrigir a responsividade do site
  • - Tentar usar outros muxers

Links mostrados nos aulas:

ConsideraçÔes

  • Tire suas dĂșvidas sobre os desafios em nossa comunidade, o objetivo Ă© vocĂȘ aprender de forma divertida. Surgiu dĂșvidas? Pergunte por lĂĄ!

  • Ao completar qualquer um dos desafios, envie no canal #desafios da comunidade no Discord

FAQ

  • browser-sync estĂĄ lançando erros no Windows e nunca inicializa:
    • Solução: Trocar o browser-sync pelo http-server.
      1. instale o http-server com npm i -D http-server
      2. no package.json apague todo o comando do browser-sync e substitua por npx http-server .
      3. agora o projeto vai estar executando na :8080 entĂŁo vĂĄ no navegador e tente acessar o http://localhost:8080/ A unica coisa, Ă© que o projeto nĂŁo vai reiniciar quando voce alterar algum cĂłdigo, vai precisar dar um F5 na pĂĄgina toda vez que alterar algo