como executar 10 processos e montring

1

eu tenho cerca de 10-15 processos FFmpeg para servidor de streaming como este:

ffmpeg -i "http://ip/play/a03i" -vcodec copy -acodec copy -f flv "rtmp://ip:80/APP/Name"

estou usando o módulo Nginx-rtmp para executá-lo usando a diretiva exec_static mas não consigo monitorar todos os canais ou processos, não consigo parar de reiniciar, edite qualquer fluxo sem parar todos os canais

alguma ideia Por favor?

Melhor,

    
por Mohammed 20.02.2017 / 22:51

1 resposta

0

Tente com algo parecido (isso é em PHP, mas você pode usar procedimentos semelhantes de outros scripts):

                    $cmd = "ps aux | grep '-vcodec copy -acodec copy -f flv'";
                    exec($cmd, $output, $returnvalue);

                    $transcoders = 0;
                    foreach ($output as $line) if (strstr($line, "ffmpeg"))
                        {
                            $columns = preg_split('/\s+/',$line);

                            if ($kill) //customise this to kill a process
                            {
                                $kcmd = 'kill -KILL ' . $columns[1];
                                exec($kcmd, $koutput, $kreturnvalue);
                            }
                         }

A funcionalidade é inspirada em um WP Videochat Plugin que tem uma seção de back-end para monitorar e matar processos FFMPEG ( usado para transcodificação de transmissões ao vivo para reprodução de HLS e geração de instantâneos de fluxos).

    
por 21.05.2017 / 16:40