Is that a video editor ?

You have no idea how many times people have asked me that question. And every single time the answer was “We’re adding features gradually making sure it keeps stable every step of the way. We still don’t have the basic editing features.”. The we in that sentence is for “PiTiVi team”, which was me alone until now apart from a few outside patch contributors who will get their overdue’d beers at GUADEC 2007.

Flashback (first cvs entry):

Author: bilboed
Date: Sat May  1 10:48:55 2004 UTC (3 years, 2 months ago)
Log Message: Initial revision

The first 6 months were done outside of CVS and without filling in the ChangeLog appropriately (that has changed since, don’t worry). So yes, it has been in fact 3 years and 8 months since PiTiVi was first hacked on.

Quick refresher of PiTiVi history

December 2003 – March 2005

  • PiTiVi was my end-of-studies project for the last 2 years at school. I had been wanting to do an open and flexible video editor for ages by then. This was the chance to actually get it done. “Yeah, we’re 10 students and within 18 months we should have something nice” … oh man… what a fool I was.
  • I’d already played around with GStreamer at that point, and I was sure it was the best option to do such an editor… except I hadn’t accounted for the fact that I was going to spend the next 4 years fixing GStreamer, plugins and GNonLin to actually get it to a level stable enough for a video editor ๐Ÿ™‚ We didn’t take into account that we were students, had different views and motivations on that project, etc…
  • End result : we had a limited, special cases only editor… So still far away from something usable.

March 2005 – June 2007

  • Working at Fluendo, first as a 6months internship… and then as a Junior Developer (if you laugh, you don’t get free beers at GUADEC!) .
  • The reaction all of you must be having is “But if you were working all the time on PiTiVi, how come it’s still not full featured?”. Well the answer is quite simple : I was NOT working all the time on PiTiVi.
  • I was also working on converting the python bindings to GStreamer 0.10 and maintaining it, taking care of gst-ffmpeg, doing bugfixing in plugins, adding new features to GStreamer core (hello multiqueue/decodebin2), doing work for other sections of Fluendo, doing consulting work, giving trainings, etc… Yeah, it’s a company, we actually needed to make some money ๐Ÿ™‚
  • What did I really do on PiTiVI ? Convert it to python (best move ever), switch GNonLin (the non-linear plugins for GStreamer) to 0.10 and bringing them to a more stable level (ok, fine, the Jokosher team did find some bugs, but were quickly solved), fix core/plugins issues related to encoding/decoding/accurate-seek/transcoding/…
  • Looking over my work stats for the past 8 months, I’ve in fact been doing 62% work on consulting work, 11% on community work (I fixorz yo bugz), and 28% of the time only on PiTiVi work (including lower-levels works).

“Dude, almost 4 years ? And you still don’t have basic editing features ?”

Well guess what : NO LONGER !!!! For teasers, I give you a screenshot of the triming features in PiTiVi where I can change the start/stop position of a clip used in a timeline :

Editing in PiTiVi

How did this happen ? Well thanks to the awesome work Brandon Lewis, the SoC student working on PiTiVi, has been doing on creating widgets, I was able to link up everything within one day… and voila ๐Ÿ™‚ It still has some rough edges, but we’re working on doing a preview release by GUADEC. Lots of other stuff are in the bag for the SoC : effects, transitions, picture support, project file save/load, ….

Post-Edit : All this work is available in the PITIVI_SOC_2007 branch of PiTiVI for those wondering.

“I want feature XYZ in PiTiVi NOW!”

By now, you might have guessed that bribing/paying/drunken-ing me is not the way you’re going to get that feature faster. The only way that is going to happen… is by having more contributors ! If you’re good at UI designing, writing widgets, with gtk-python …. send a mail to the mailing list and we can start sharing the workload of what’s left to do to create the killer video editor. There are some low hanging fruits that can be solved if you’re comfortable with gtk-python, and some challenging features if you’re comfortable with gst-python and editing concepts.

Grab me or Brandon at GUADEC for a chat if you’re interested. I’ll also most certainly setup again a GStreamer hackfest as we did last year, so if you feel like having a hands-on experience, join the fun !

No longer at Fluendo

Nothing much to say about that currently, more in the coming weeks. What a blast it was though… but times are different, things have changed at Fluendo… and we’ll see where the wind blows this time ๐Ÿ™‚

9 thoughts on “Is that a video editor ?”

  1. Could you outline what would need to be attacked to allow editing of HDV?

  2. Thanks for working on Pitivi. At this moment there is no sane/usable video editor available for Linux. Pitivi seems like it will be such.

  3. Daniel : man, I should have put nut-cracking instead ๐Ÿ™‚

    Adam : I’ve never actually handled an HDV camera, but from what I can tell from the specs, it just seems to be MPEG-TS with MPEG2 video and MPEG1 Audio. Now the problem is that mpeg editing with PiTiVI is bad… because the support for accurate seeking/duration in GStreamer is bad.
    There are open bugs regarding this, so the situation is being looked into. If you want to help PiTiVi handle these formats faster, the best is to send me or the GStreamer community some sample files.

  4. On the Pitivi Summer of code wiki page Brandon Lewis reports:

    “In the course of creating a generic way of extracting thumbnails, we have uncoverd a host of gstreamer bugs which make editing impractical for files supported by certain gstreamer plugins, an area which is outside of my domain.”

    I hope this isn’t too depressing ๐Ÿ™

Leave a Reply

Your email address will not be published. Required fields are marked *