Você pode escrever um script com este conteúdo:
#! /bin/bash
function INT_cleanup()
{
kill 'jobs -p'
exit
}
trap INT_cleanup INT
# ${VAR-TEXT} means that TEXT is used if VAR is empty.
STREAM_START=$(($1))
STREAM_END=$(($2))
for ((COUNT=STREAM_START; COUNT<=STREAM_END;COUNT++))
do
while true #Infinite loop
do
rtmpdump -r "rtmp://123.45.6.7/live/" -a "live/" -f "LNX 14,0,0,125" -W \
"http://123.45.6.7/jwplayer.flash.swf[1] " \
-p "http://123.45.6.7/[2] " --live -y "livestream$COUNT" |
avconv -i pipe:0 -y -v:v info -vcodec copy \
-acodec copy -f flv rtmp://localhost:1935/live$COUNT/
done &
done
Ou
#! /bin/bash
function INT_cleanup()
{
kill 'jobs -p'
exit
}
trap INT_cleanup INT
count=0
while [[ $count < 10 ]] # Try 10 times
do
rtmpdump -r "rtmp://123.45.6.7/live/" -a "live/" -f "LNX 14,0,0,125" -W "http://123.45.6.7/jwplayer.flash.swf[1] " -p "http://123.45.6.7/[2] " --live -y "livestream2" | avconv -i pipe:0 -y -v:v info -vcodec copy -acodec copy -f flv rtmp://localhost:1935/live/
count=$((count + 1))
done
em um arquivo, chame-o de stream.sh
, torne-o executável:
chmod +x stream.sh
e execute-o:
sudo ./stream.sh 1 3
Para matar o script, pressione Ctrl C . O primeiro é um loop infinito, o segundo é executado por 10 iterações.