OSError: [Errno 12] Cannot allocate memory von python-subprocess.rufen

Ich habe gelesen, einige ähnliche Beiträge zu diesem Thema, aber keiner scheint mir helfen direkt. Wenn dies tatsächlich ist, eine doppelter Beitrag, bitte mich direkt zu dem thread mit der Lösung!

Spare ich ein paar Bilder und dann Aufruf von ffmpeg mit subprocess.nennen. Ich mache dies einige Male Sammlungen von verschiedenen Bildern. Dies ist im Grunde das, was ich Tue:

from subprocess import call
for video in videos:
  call(['ffmpeg', ..., '-i', video, video+'.mp4')])

In der isolation einwandfrei ist. Allerdings, wenn ich auch eine andere Verarbeitung durchgeführt, bevor diese Anrufe (nicht innerhalb der Schleife, buchstäblich nur halten die Werte im Speicher, bevor die Schleife beginnt), stürzt es mit einem memory-Fehler, nachdem einige der videos (eigentlich während der letzten). Nach dieser Kommentar, Teilprozess.rufen forks/clones den aktuellen Prozess, das scheint zu bedeuten, dass es Anfragen ein memory allocation gleich, wie viel ich derzeit in Erinnerung haben, das scheint zu sein, Weg zu viel für das, was ich will zu tun, Aufruf von ffmpeg.

Wie kann ich den Aufruf von ffmpeg in python ohne zu Fragen reservieren, unnötige Mengen an Speicher?

Schreibe einen Kommentar