python - Menggunakan ffmpeg untuk menangkap video, proses tidak boleh ditamatkan menggunakan terminate
曾经蜡笔没有小新
曾经蜡笔没有小新 2017-06-14 10:51:23
0
1
1114

Saya mahu menggunakan ffmpeg untuk menangkap video, dan pemasa akan tamat secara automatik, dan arahan itu tidak rumit. Saya hanya menggunakan subproses.Popen untuk memulakan arahan ffmpeng, menangkap video dan menyimpannya sebagai mp4 . Saya telah mengujinya di bawah cmd dan tidak ada masalah dengan arahan , dan ujian juga boleh direkodkan menggunakan python, tetapi masalahnya ialah ia tidak boleh ditamatkan. . Saya menggunakan subprocess.kill untuk menamatkan proses, tetapi ia hanya menamatkan cmd yang dimulakan oleh cmd. Saya tidak tahu bagaimana untuk menamatkan proses yang dihasilkan. . .

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

Anda tidak boleh menamatkannya dengan terminat atau kill Anda hanya boleh menamatkan proses ffmpeg1.exe yang dihasilkan tidak boleh dihentikan
Jika ada kaedah penamatan yang meniru ctrl+c, sila bantu kemudian ping 127.0.0.1, cmd yang sama boleh ditamatkan, tetapi ping.exe tidak boleh ditamatkan

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

membalas semua(1)
扔个三星炸死你

Um... Saya baru nampak soalan pendua, jadi saya akan salin jawapannya...

Cuba gunakan arahan windows untuk membunuh secara terus

kill_command = 'taskkill -f ffmpeg1.exe'
cc=subprocess.Popen(kill_command ,shell=True)
....(自己补充)
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan
Tentang kita Penafian Sitemap
Laman web PHP Cina:Latihan PHP dalam talian kebajikan awam,Bantu pelajar PHP berkembang dengan cepat!