Frage

Ich suche nach einem Python -Framework, mit dem ich Video abspielen und auf dieses Video zeichnen kann (zu Kennzeichnungszwecken).

Ich habe Pyglet ausprobiert, aber das scheint nicht besonders gut zu funktionieren - beim Zeichnen auf ein vorhandenes Video gibt es Flimmern (auch mit doppelter Pufferung und all dem guten Zeug), und es scheint keinen Weg zu geben Um den Frame-Index im Video während des Rückrufs pro Frame zu erhalten (nur seit dem letzten Frame verstrichen).

War es hilfreich?

Lösung

Probieren Sie einen Python -Wrapper für openCV wie zum Beispiel ctypes-opencv. Die C API -Referenz ist hier, und der Wrapper ist sehr nahe (siehe Docstrings für Änderungen).

Ich habe es verwendet, um auf Video ohne Flackern zu zeichnen, also sollten Sie damit keine Probleme haben.

Eine grobe Übersicht über Anrufe, die Sie benötigen:

  • Laden Sie das Video mit CVCreateFileCapture und laden Sie die Schriftart mit CVFONT.
  • Schnappen Sie sich den Rahmen mit CvQueryFrame, erhöhen Sie Ihren Rahmenzähler.
  • Zeichnen Sie mit CvputText, Cvellipse usw. auf den Rahmen usw. usw.
  • Zeigen Sie dem Benutzer mit CVShowimage an.

Andere Tipps

QT (PYQT) hat Phonon, was helfen könnte. PYQT ist als GPL oder Payware erhältlich. (QT hat auch LGPL, aber die Pyqt -Wrapper nicht)

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top