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 đ
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 cina pasta que contém o arquivopackage.jsonpara restaurar os pacotes - Execute
npm starte 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:
-
Reuni todos os links em referĂȘncias
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.
- instale o http-server com
npm i -D http-server - no package.json apague todo o comando do
browser-synce substitua pornpx http-server . - 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
- instale o http-server com
- Solução: Trocar o browser-sync pelo http-server.