Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Best video manipulation library for Python? [closed]

I'd like to include some simple video editing functionality for the Python application I'm writing and googling comes up with:

  1. pymedia
  2. pyglet (using the media module)
  3. gst-python

Requirements:

  1. Small footprint. I'm already using wxPython (just because), which bloats up the final EXE file pretty easily so preferably whatever I use to implement this video editing functionality shouldn't add to the bloat significantly.
  2. The library should still be actively maintained.
  3. It shouldn't require proprietary licensing, so FMOD is out of the question.
  4. Minimal dependencies
  5. Not a full-blown video editor. No need for fancy pants stuff. Just the ability to skip to different parts of a video and either grab a frame or put (multiple) markers for start and end of video sections to lop off bits.
  6. Cross platform - should be able to run on Windows, Linux and OS X at the end of the day.

If you've used any of the above video editing libraries listed above or others I have yet to come across in your Python application, I'd like to know the pitfalls for each and how they stack up against each other. If you also know of a Python binding for avbin, I would like to know where to find it.

gst-python (Gstreamer with Python bindings) doesn't seem to be very well documented. It also appears to be tightly coupled with pyGTK, which is also a pretty big toolkit.

like image 247
TheObserver Avatar asked Oct 21 '08 05:10

TheObserver


People also ask

Can you edit videos with Python?

MoviePy is a Python module for video editing, which can be used for basic operations (like cuts, concatenations, title insertions), video compositing (a.k.a. non-linear editing), video processing, or to create advanced effects. It can read and write the most common video formats, including GIF.

Which Python library is used for scientific computing?

NumPy is the fundamental package for scientific computing with Python, adding support for large, multidimensional arrays and matrices, along with a large library of high-level mathematical functions to operate on these arrays.


1 Answers

I would recommend that you look again at gst-python! It is not coupled with pyGTK. You can use it completely separately, with no dependencies on either the Python bindings or the C libraries of GTK. I've written several command-line utilities that use gst-python and not GTK.

It's true that the gst-python docs are not so great. However, the documentation for the C API and modules is really very extensive, and the mapping from the C API to the Python API is very straightforward. And there is a very active Gstreamer community and I had good luck finding help on the mailing lists and IRC!

like image 167
Dan Lenski Avatar answered Sep 28 '22 17:09

Dan Lenski