主pipe启动和停止pipe道进程

我有一种情况,我将ffmpeg的输出传递给一个PHP脚本进行一些处理。 我可能会有一些这样的进程在任何给定的时间运行,我想开始和停止他们,我可能会使用Supervisor。

然而,我遇到了一个问题,我可以开始一个新的过程,但我无法成功阻止它。 我试图执行以下命令:

ffmpeg -i http://mystream.com -v 0 -f s16le -acodec pcm_s16le - | php process.php 

要使“pipe道”工作,我使用以下command在Supervisor中:

 [program:process] command = /bin/bash -c 'exec /usr/bin/ffmpeg -i http://mystream.com -v 0 -f s16le -acodec pcm_s16le - | php /home/me/process.php' 

这似乎是工作,并开始整个过程​​很好,但是,当我停止使用supervisorctl的过程:

 stop process 

我用ps aux看到ffmpeg进程仍在运行。 php process.php似乎已经被杀死了。

主pipe开始和停止pipe道命令的正确方法是什么?

%sh -c'你的一行'我认为这是有效的