python - En utilisant ffmpeg pour capturer une vidéo, le processus ne peut pas être terminé avec Terminer
曾经蜡笔没有小新
曾经蜡笔没有小新 2017-06-14 10:51:23
0
1
1149

Je souhaite utiliser ffmpeg pour capturer une vidéo, et le minuteur se terminera automatiquement. Je suis un novice et la commande n'est pas compliquée. J'utilise simplement subprocess.Popen pour démarrer la commande ffmpeng, capturer la vidéo et l'enregistrer au format mp4. . Je l'ai testé sous cmd et il n'y a aucun problème avec la commande, et le test peut également être enregistré en utilisant python, mais le problème est qu'il ne peut pas être terminé. . J'ai utilisé subprocess.kill pour terminer le processus, mais cela n'a mis fin qu'à cmd. ffmpeg démarré par cmd a toujours continué à fonctionner. Je ne sais pas comment terminer le processus qu'il a généré. . .

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()

Vous ne pouvez pas le terminer avec termat ou kill. Vous pouvez uniquement terminer le processus cmd. Le processus ffmpeg1.exe généré ne peut pas être arrêté
S'il existe une méthode de terminaison qui imite ctrl+c, veuillez m'aider. plus tard, ping 127.0.0.1, de la même manière, cmd peut être terminé, mais ping.exe ne peut pas être terminé

曾经蜡笔没有小新
曾经蜡笔没有小新

répondre à tous(1)
扔个三星炸死你

Euh... Je viens de voir une question en double, je vais donc copier la réponse...

Essayez d'utiliser la commande windows pour tuer directement

kill_command = 'taskkill -f ffmpeg1.exe'
cc=subprocess.Popen(kill_command ,shell=True)
....(自己补充)
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal