2013-09-16 35 views
8

einstellen Ich möchte einige Parzellen mit Matplotlib animieren. Die Version, die ich habe, ist die Enthough Canopy Distribution (Version: 1.1.0.1371), die auf einem Mac OS X 10.8 (Mountain Lion) läuft. Ich habe die FuncAnimation-Routine aus dem Animationspaket von Matplotlib verwendet. Mein Problem kommt zum Speichern der Animation. Ich möchte im mp4-Format speichern:Wie man ffmpeg für Matplotlib in Mac OS x

anim.save('test.mp4',fps=30) 

Der Fehler, den ich bekommen ist:

UserWarning: MovieWriter ffmpeg unavailable 
warnings.warn("MovieWriter %s unavailable" % writer) 

So installierte ich ffmpeg über Macports. Aber ich habe immer noch den gleichen Fehler. Wissen Sie, wie man matplotlib einrichtet, um ffmpeg zu erkennen? Muss ich die Matplotlib-Datei ändern? Danke.

EDIT: Ich habe festgestellt, dass ich '/ opt/local/bin' in den PYTHONPATH manuell setzen kann, aber es ändert nicht den Pfad in Enthough Canopy. Weiß jemand, wie man den PFAD in der Überdachung ändert?

+0

Ist 'ffmpeg' in Weg? Wenn Sie 'ffmpeg' in der Konsole eingeben, wird es ausgeführt? –

+0

Ja, es läuft. Ich habe überprüft, dass der Pfad OK ist und das Programm läuft. – AlexNoir

+1

In Bezug auf die Änderung von PATH und anderen Umgebungen unter OSX: https://support.enthought.com/entries/23665767-How-do-I-set-PYTHONPATH-and-other-environment-variables-for-Canopy- –

Antwort

1

Ich denke, die Lösung kann in der Problemumgehung in this und this Post gefunden werden.

Es scheint, dass der Pfad der Shell nicht von Matplotlib geladen wird, und da Macports in /opt/local/bin installiert sind, kann ffmpeg nicht gefunden werden.

Entweder geht für den Hack oben beschrieben, versuchen Sie einen Symlink in /bin für ffmpeg machen, oder versuchen, den Pfad zu ffmpeg auf den Python-Pfad hinzugefügt, wie in den Kommentaren des zweiten Lenkers vorgeschlagen

+0

Danke für die Antwort. Ich habe die Lösung des zweiten Pfostens versucht und eine launch.conf Akte eingeschlossen. Es hat die Variable PYTHONPATH geändert, aber wenn ich 'os.environ ['PATH']' eintippe, ist der Pfad '/ opt7local/bin' nicht vorhanden. So bekomme ich den gleichen Fehler. – AlexNoir

+0

über welche launch.conf sprichst du? Versuchen Sie etwas wie 'sudo ln -s/opt/local/bin/ffmpeg/usr/bin/ffmpeg' – gg349

5

hatte ich das gleiche Problem . Meine Lösung war sehr einfach.

Laden Sie die Binärdatei von here herunter.

Dann tun

sudo mv ~/Downloads/ffmpeg /usr/bin/ 
+6

Wenn Sie diese Route gehen, würde ich dringend vorschlagen, ffmeg zu Ihrem usr/local/bin hinzuzufügen. Es ist allgemein gut, dass Sie Ihr Verzeichnis usr/bin nicht ändern. –