python - 用subprocess terminate沒辦法結束進程 求教
伊谢尔伦
伊谢尔伦 2017-06-14 10:51:31
0
1
715

我想用python採集視頻,打算用ffmpeng.exe 進行視頻錄製,然後定時自動結束,我是個小白,命令不復雜,就是用subprocess.Popen 啟動ffmpeng命令,進行視頻採集,保存為mp4,我在cmd下面已經測試好了,指令沒有問題,用python裡面測試也可以錄製,問題就是沒辦法結束。 。我用subprocess.kill結束了進程,但只是結束了cmd進行,cmd開啟的ffmpeg還是在繼續工作,我不知道改怎麼結束他產生的進程。 。

cmd = '''ffmpeg1.exe -i "rtmp://123.123.123.132/live/tv22 live=1" -acodec libmp3lame -vcodec libx264 -y  3.mkv'''

cc=subprocess.Popen(cmd2,shell=True)


print(cc.pid)
time.sleep(15)
cc.terminate()

用terminat 或kill都沒辦法結束進程,只能結束subprocess.Popen產生的cmd進程,cmd執行命令產生的ffmpeg1.exe進程沒辦法停止,
如果有仿ctrl c的終止方法也行,請大神幫忙看看,
我後來測試了ping 127.0.0.1 ,同樣cmd可以結束,ping.exe無法結束

伊谢尔伦
伊谢尔伦

小伙看你根骨奇佳,潜力无限,来学PHP伐。

全部回覆(1)
女神的闺蜜爱上我

其實你自己都已經得出結果, 當你殺掉subprocess.Popen只能殺死cmd, 卻不能殺死ffmpeg1, 所以試試直接用windowsffmpeg1

, 所以試試直接用🎜windows🎜的命令去殺死吧🎜
kill_command = 'taskkill -f ffmpeg1.exe'
cc=subprocess.Popen(kill_command ,shell=True)
....(自己补充)
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板