Ich möchte ffmpeg zum Aufnehmen von Videos verwenden, und das Timing wird automatisch beendet. Ich bin ein Anfänger und der Befehl ist nicht kompliziert. Ich verwende einfach subprocess.Popen, um den Befehl ffmpeng zu starten, das Video aufzunehmen und es als mp4 zu speichern Ich habe es unter cmd getestet und es gibt kein Problem mit dem Befehl, und der Test kann auch mit Python aufgezeichnet werden, aber das Problem ist, dass er nicht beendet werden kann. . Ich habe subprocess.kill verwendet, um den Prozess zu beenden, aber es beendete nur ffmpeg, das von cmd gestartet wurde, und ich weiß nicht, wie ich den von ihm generierten Prozess beenden soll. . .
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()
Sie können es nicht mit „Terminat“ oder „Kill“ beenden. Der generierte ffmpeg1.exe-Prozess kann nicht gestoppt werden.
Wenn es eine Beendigungsmethode gibt, die Strg+C imitiert, helfen Sie mir bitte später ping 127.0.0.1, ähnlich kann cmd beendet werden, aber ping.exe kann nicht beendet werden
额..刚才看到一个重复的问题, 那我就再复制下答案吧...
试下直接用
windows
的命令去杀死吧