ffmpeg continuar porta de escuta

2

Estou tentando configurar o servidor do restream, ffmpeg listen no rtmp: // ip: port e saída para alguns serviços de fluxo (youtube, twitch ... etc) o problema é quando eu paro o streaming do OBS (usando isso no local pc) ffmpeg no servidor indo para baixo e eu preciso executá-lo manualmente da próxima vez que eu ir transmitir. Não é possível encontrar a opção no ffmpeg dock, o que fará com que o ffmpeg continue escutando, mesmo que a fonte de entrada caia. Talvez eu esteja faltando alguma coisa em docs ou é hora de fazer scripts que irão reiniciar o ffmpeg?

Estou usando este comando para o ffmpeg:

ffmpeg -re -listen 1 -i rtmp://i.p:1234 -c:v libx264 -preset medium -maxrate 3500k -bufsize 6000k -pix_fmt yuv420p -g 50 -c:a aac -b:a 160k -ac 2 -ar 44100 -f flv rtmp://live-ams.twitch.tv/app/key
    
por Shadowraze 17.02.2017 / 15:01

1 resposta

2

Quando você trabalha com o Linux, você pode fazer um serviço systemd:

[Unit]
Description=ffmpeg listening and forward stream
After=syslog.target network.target

[Service]
PIDFile=/tmp/ffstreamer.pid
ExecStart= /usr/local/bin/ffmpeg -re -listen 1 -i rtmp://i.p:1234 -c:v libx264 -preset medium -maxrate 3500k -bufsize 6000k -pix_fmt yuv420p -g 50 -c:a aac -b:a 160k -ac 2 -ar 44100 -f flv rtmp://live-ams.twitch.tv/app/key

ExecStop=/bin/kill -s QUIT $MAINPID
Restart=always
User=www-data

[Install]
WantedBy=multi-user.target

Quando a entrada falha, ela inicia o processo novamente.

    
por 17.05.2017 / 16:51