Adiciona suporte a encoders de hardware (NVENC, VAAPI, QSV) no ffmpeg
---
- Implementada função buildEncoderFlags() em supervisor.ts e reprovision.mjs que gera o bloco de flags do ffmpeg conforme a env var FFMPEG_HWACCEL (nvenc, vaapi, qsv ou vazio para libx264);
- Template stream.template.conf refatorado para usar {{ENCODER_FLAGS}} no lugar do bloco x264 fixo;
- NVENC configurado com perfil high, mapeamento de presets x264→p1-p7 e tune zerolatency→ll;
- docker-compose.yml atualizado com seções comentadas para gpus, devices, FFMPEG_HWACCEL e instrução de volume WSL2 para libnvidia-encode;
- Dockerfile adiciona mesa-va-drivers e intel-media-va-driver para suporte a VAAPI e remove declaração VOLUME redundante;
- fetchAllStatuses() corrigido: supervisorctl status || true evita exceção com exit code 3 quando há processos parados;
- reprovision.mjs atualizado para incluir AUTO_RELOAD e AUTO_RELOAD_INTERVAL no contexto de renderização do template;
---
This commit is contained in:
@@ -73,18 +73,7 @@ command=bash -c "sleep {{STREAM_DELAY}} && ffmpeg \
|
||||
-i {{DISPLAY}} \
|
||||
-f lavfi -i anullsrc=channel_layout=stereo:sample_rate=44100 \
|
||||
-shortest \
|
||||
-c:v libx264 \
|
||||
-preset {{PRESET}} \
|
||||
-tune {{TUNE}} \
|
||||
-profile:v baseline \
|
||||
-level 3.1 \
|
||||
-pix_fmt yuv420p \
|
||||
-g {{GOP}} \
|
||||
-keyint_min {{GOP}} \
|
||||
-sc_threshold 0 \
|
||||
-b:v {{BITRATE}} \
|
||||
-maxrate {{BITRATE}} \
|
||||
-bufsize {{BUFSIZE}} \
|
||||
{{ENCODER_FLAGS}}
|
||||
-c:a aac \
|
||||
-b:a 128k \
|
||||
-ar 44100 \
|
||||
|
||||
Reference in New Issue
Block a user