2008-10-21 9 views
29

me gustaría incluir algunas funciones de edición de vídeo sencillo para la aplicación Python que estoy escribiendo y buscando en Google trae como:¿La mejor biblioteca de manipulación de video para Python?

  1. pymedia
  2. Pyglet (utilizando el módulo de medios)
  3. GST-pitón

Requisitos:

  1. poco espacio. Ya estoy usando wxPython (solo porque), lo que aumenta el archivo EXE final con bastante facilidad, así que de preferencia todo lo que utilizo para implementar esta funcionalidad de edición de video no debería aumentar significativamente la saturación.
  2. La biblioteca todavía se debe mantener activamente.
  3. No debe requerir licencias de propiedad, por lo que FMOD está fuera de cuestión.
  4. dependencias mínimas
  5. No
  6. un editor de vídeo en toda regla. No hay necesidad de pantalones elegantes. Solo la capacidad de saltar a diferentes partes de un video y tomar un fotograma o poner (múltiples) marcadores para las secciones de inicio y fin de video para cortar bits.
  7. Plataforma cruzada: debería poder ejecutarse en Windows, Linux y OS   X al final del día.

Si ha utilizado alguna de las bibliotecas de edición de video mencionadas anteriormente u otras que aún no he encontrado en su aplicación Python, me gustaría saber las trampas para cada una y cómo se comparan con cada una otro. Si también conoce un enlace de Python para avbin, me gustaría saber dónde encontrarlo.

gst-python (Gstreamer con enlaces de Python) no parece estar muy bien documentado. También parece estar estrechamente relacionado con pyGTK, que también es un conjunto de herramientas bastante grande.

Respuesta

13

¡Recomendaría que volviera a mirar gst-python! Es no junto con pyGTK. Puede usarlo completamente por separado, sin dependencias ni de los enlaces Python ni de las bibliotecas C de GTK. He escrito varias utilidades de línea de comandos que usan gst-python y no GTK.

Es cierto que the gst-python docs no son tan geniales. Sin embargo, el documentation for the C API and modules es realmente muy extenso, y la asignación de la API de C a la API de Python es muy sencilla. ¡Y hay una comunidad muy activa de Gstreamer y tuve mucha suerte para encontrar ayuda en las listas de correo y el IRC!

6

GST-python no está acoplado con pygtk en absoluto - sólo pasa a compartir un modelo común de objetos (PyGObject) y una manera de ayudar a generar enlaces. Pero puede usar gst-python sin pygtk - tome Flumotion como ejemplo.

Aquí hay un small demo que armé; uno con un ejemplo de un jugador con una interfaz GTK y otro con una interfaz wx.

+0

Corrija el enlace a la demostración. –

+0

Lo arreglé para él. – mmcdole

9

Estoy trabajando en un proyecto que utiliza pyglet en este momento y me encanta. Su sitio web va lento ahora, pero normalmente el programming guide en su página de documentación es una excelente introducción a la biblioteca. Su documentación API estándar también es muy completa.

Realmente no puedo entrar en los detalles en este momento de lo que es nuestro proyecto, pero cuando usted dice que necesita

No

un editor de vídeo completo soplado. No es necesario para cosas de pantalones elegantes. Solo la capacidad de saltar a diferentes partes de un video y tomar un marco o poner (múltiples) marcadores para el inicio y el final de las secciones de video para cortar los bits.

Puedo verificar que pyglet hará que la codificación sea muy sencilla.

Repasando el resto de su lista, no puedo hablar a favor/en contra del tamaño del archivo en este momento, pero pyglet se mantiene activamente (de hecho, los desarrolladores me ayudaron bastante en el rastreador de errores hace solo dos semanas), tiene licencia BSD, no depende de nada (con soporte AVBIN opcional para formatos de archivo adicionales). Funciona para nosotros en Windows y Linux.

Hasta ahora, el único problema que hemos encontrado en la plataforma multiplataforma es que, en lo que respecta al sonido en Linux, tiene la opción de OpenAL que mezclará archivos estéreo en mono y ALSA que no le dará cualquier control de volumen mientras se reproduce un sonido. Afirman que ambos problemas están en sentido ascendente y se están trabajando en ellos.

+1

+1 para pyglet. Está muy bien documentado. – Jeff

3

Actualmente estoy en la misma situación. He tenido la suerte de ponerme en contacto con los desarrolladores del Ardome Media Library project.

Esta biblioteca es un sistema basado en un gráfico de filtros. Se basa libremente en el http://www.khronos.org/openml/, creo.

Actualmente se ejecuta en Linux y OS   X con la integración pendiente de Windows.

Cuestiones relacionadas