Streaming de Vídeos com VLC via SSH
import CodeBlock from '@theme/CodeBlock'
Streaming de Vídeos com VLC via SSH
Se você tem um servidor remoto com vídeos e quer assisti-los em qualquer lugar via navegador, o VLC é uma ferramenta poderosa.
Neste tutorial, vamos criar um script que gera uma playlist automática e permite controle via interface web.
Passo 1: Estrutura da pasta
Suponha que seus vídeos estão em uma pasta como:
/media/jorge/HD externo/Curso Full Cycle/Parte 1/2. Docker/3. Iniciando com Docker/
e os arquivos têm nomes como:
1. Hello World.mp4
2. Executando Ubuntu.mp4
3. Publicando portas com nginx.mp4
Observação: espaços, acentos e subpastas são totalmente suportados pelo script.
Passo 2: Criar o Script start_vlc.sh
Salve o seguinte conteúdo em ~/start_vlc.sh no seu servidor:
--- Configurações ---
HTTP_PASSWORD="senha" # senha da interface web WEB_PORT=8081 # porta da interface web STREAM_PORT=8080 # porta do streaming PLAYLIST="playlist.m3u" # nome da playlist temporária
--- Criar playlist ---
Remove playlist antiga
rm -f "$PLAYLIST"
Adiciona todos os MP4 da pasta e subpastas, ordenando por nome
find . -type f -iname "*.mp4" | sort > "$PLAYLIST"
--- Rodar VLC ---
cvlc --intf dummy
--extraintf http --http-port "$WEB_PORT" --http-password "$HTTP_PASSWORD"
--sout "#standard{access=http,mux=ts,dst=:$STREAM_PORT}"
--loop
"$PLAYLIST"
Esse script faz três coisas importantes:
- Cria uma playlist
playlist.m3ucom todos os vídeos da pasta (mesmo com espaços ou acentos).- Inicia o VLC em modo sem interface gráfica (
dummy).- Habilita HTTP para controlar a reprodução via navegador e faz o streaming para outra porta.
Passo 3: Dar permissão de execução
No SSH, rode:
chmod +x ~/start_vlc.sh
Passo 4: Rodar o VLC
Entre na pasta com os vídeos:
cd "/media/jorge/HD externo/Curso Full Cycle/Parte 1/2. Docker/3. Iniciando com Docker/"
E execute:
~/start_vlc.sh
Passo 5: Acessar o VLC via navegador
- Interface web (controle da playlist e pausa/avançar):
http://<IP_DO_SERVIDOR>:8081
Senha: senha (ou a que você configurou no script)
- Streaming de vídeo (assistir pelo navegador ou VLC local):
http://<IP_DO_SERVIDOR>:8080/
Passo 6: Observações
- O script atualiza automaticamente a playlist toda vez que você rodar, incluindo novos vídeos.
- Arquivos com espaços, acentos e subpastas são suportados.
- A interface web permite pausar, avançar, retroceder e escolher qualquer vídeo da playlist.
- Para cursos longos, você pode repetir o mesmo script em cada pasta de módulo.
💡 Dica extra:
Se quiser que a playlist seja ordenada numericamente (1., 2., 3., …), certifique-se que os nomes dos arquivos tenham prefixo numérico. O sort no script organiza automaticamente nessa ordem.
Enjoyed this post?
If you found this article helpful, consider sharing it with others who might benefit.