Der Befehl [dritter subprocess] funktioniert, wenn ich nur die >"< und >,< aus der entsprechenden Zeile entferne und direkt in die Shell kopiere, der Befehl ist also korrekt. Trotzdem bekomme ich eine Fehlermeldung, wenn ich es von Python aus starte.
Die ersten beiden Zeilen funktionieren problemlos. Im gegensatz zum dritten Befehl haben sie keine Ausgaben, das ist für mich der einzige sichtbare Unterschied.
Code: Alles auswählen
import subprocess
subprocess.call(["rm", "-rf", "einzelbilder/"])
subprocess.call(["mkdir", "einzelbilder"])
subprocess.call(["avconv", "-threads:1 2", "-i 20130731_002132.mp4", "einzelbilder/foo-%03d.jpeg"])
Ausgabe aus der Shell:avconv version 0.8.6-6:0.8.6-1, Copyright (c) 2000-2013 the Libav developers
built on Mar 24 2013 07:20:17 with gcc 4.7.2
At least one input file must be specified
Danke schonmal@localhost:~/Dropbox/Python/scanner$ avconv -threads:1 2 -i 20130731_002132.mp4 einzelbilder/foo-%03d.jpeg
avconv version 0.8.6-6:0.8.6-1, Copyright (c) 2000-2013 the Libav developers
built on Mar 24 2013 07:20:17 with gcc 4.7.2
Input #0, mov,mp4,m4a,3gp,3g2,mj2, from '20130731_002132.mp4':
Metadata:
major_brand : isom
minor_version : 0
compatible_brands: isom3gp4
[...]