J'ai un problème avec mencoder (SVN-r30531-4.2.1) via un sous-processus python (2.6.1). J'essaye de joindre deux fichiers mp4 qui sont exactement la même taille, codec, etc. Les deux n'ont aucun audio. Le code que j'utilise pour tester est:Sous-processus Python + mencoder ne fonctionne pas, la même commande fonctionne dans le terminal
import subprocess
mp4merge = [ "mencoder", "in1.mp4", "in2.mp4", "-ovc", "copy", "-oac", "copy", "-of", "lavf", "-o", "out.mp4" ]
try:
pMerge = subprocess.Popen(mp4merge, stdout=subprocess.PIPE, stderr=subprocess.PIPE)
while pMerge.poll() == None:
for l in pMerge.stderr.readlines():
print l
if pMerge.poll() is not None:
print "Complete"
except subprocess.CalledProcessError:
print "fail"
Et cela ne fonctionne pas, il se bloque indéfiniment. Cependant, lorsque j'exécute exactement la même commande via Terminal (OS X 10.6.4) cela fonctionne. La commande est:
mencoder in1.mp4 in2.mp4 -ovc copy -oac copy -of lavf -o out.mp4
Vous pouvez télécharger les vidéos from here. Je suis assez confiant que les vidéos ne sont pas le problème à cause du fait que cela fonctionne à partir de Terminal.
Merci! C'est ce qui causait le problème. – betamax