Я запускаю следующую команду для записи видео через ffmpeg
ffmpeg -y -rtbufsize 100M -f gdigrab -framerate 10 -i desktop -c:v libx264 -r 10 -tune zerolatency -pix_fmt yuv420p record.mp4
Это прекрасно работает, когда я запускаю его через PowerShell (я прекращаю запись вручную, нажимая ctrl + c).
Я пытаюсь сделать то же самое через Python, и я создал две функции для запуска и остановки операции.
def recThread():
cmd = 'ffmpeg -y -rtbufsize 100M -f gdigrab -framerate 10 -i desktop -c:v libx264 -r 10 -tune zerolatency -pix_fmt yuv420p ' + videoFile
global proc
proc = subprocess.Popen(cmd)
proc.wait()
def stop():
proc.terminate()
Однако, когда я запускаю это, видео повреждено.Я попытался использовать команду os.system вместо подпроцесса и получил тот же результат.Любая помощь будет оценена.