On Sun, 2009-03-29 at 08:50 -0400, Josh Narins wrote:
> I've been using gimp, and gimp-perl, for a long time. I've gotten
> reasonably proficient at taking a single image and creating frames for
> animation, each one altered slightly from the previous one.
> I guess if pitivi is very scriptable, I could just write some python
> to import each frame, insert it into the timeline with a start time
> and duration, right? I can imagine that would be best.
PiTiVi can be used/extended in many ways to achieve that.
The first one (and sadly the only way currently) is to use the
technique that brandon recommended (i.e. calling pitivi with all the
pictures as arguments). As he mentionned, with a little bit of hacking
it could be extended so you can give it the position at which to insert
A better one would be to create a SourceFactory subclass in pitivi
which allows you to use a series of pictures as a video stream.
Even better, add the possibility to re-arrange the position/duration
of those pictures within that stream.
An alternative (which should be doable this week once the 'formatter'
branch is merged) is to create a very lightweight EDL (Edit Decision
List) format where you specify:
* which file you want (image/video)
* the start position of that file
* the end position of that file
Something like a file with lines of "image00001.jpeg 0:00:00.000
0:00:00.040" (this would display image00001.jpeg for 40ms).
Yet another alternative would be to create a plugin to allow
processing images or video frames through gimp from 'within' pitivi.
Thereby allowing you to use both tools for their correct usage (gimp for
the image processing, and pitivi for the positioning, duration,
rendering, editing, etc...).
Let's push it some more (yes, the possibilities never end) : If we had
a gegl wrapper for GStreamer, we could use all the gegl filters from
within GStreamer pipelines and by extension, from within PiTiVi.
> Or maybe I just export it from gimp in a particular file format and
> pitivi will know what to do?
We depend on GStreamer for all media processing, therefore we can only
'open' formats for which (1) there's decoder plugin and (2) it's
installed on your computer. If you can't open the file in pitivi, that
means one of the two conditions isn't fulfilled. In current git (or
using the PPA) we have added the 'missing-plugins' support so that, if
your distro supports it, a dialog box will open up offering you a list
of plugins (if any available) to decode that format.
Some that are guaranteed to work : png, jpg. If you have the gdkpixbuf
element, you should be able to decode all the formats handled by it
(which includes gif if I'm not mistaken).
> By the way, I'm a perl programmer by trade, and have been for more
> than a decade, but I have to admit after looking at the pitivi init
> script I gained some serious appreciation for python.
You can dig further into the code, the advantage of Python is that
it's very 'readable', and with your perl knowledge it should be
>  - I've tried mng, fli and animated gif without luck
> Pitivi-pitivi mailing list