These last few weeks I finished the Clutter stage backend and added the Cairo backend, so I'm able to show the slideshow even in 2D. The object positions in the Cairo backend still doesnt work very well, so you don't see the real thing in 2D and the colors are off, probably some parameter is wrong in the textures. Most fixes now should go to the Cairo backend, but the architecture itself is working fine.
I also added the video export feature that uses the Cairo backend. The video is exported, but you can barely see anything because I think the color formats are wrong, which should be easy to fix. Unfortunately it's a feature that I wasn't able to finish, but at least the concept is there and it's all a matter of fine tuning it to make it work right.
I also did a major refactoring of the code to add a slideshow controller, which can control all the aspects of the slideshow independent of the slideshow window (before, all the slideshow control was inside the slideshow window). This was necessary for the export video code, so that I don't duplicate code to advance the images, etc. Overall it's working fine, I just forgot that the timer of the video runs in realtime, so it's exporting the video in the same amount of time it takes to play it, which is a bit annoying. I need to study GStreamer better to make sure things don't go bad if it doesnt run in realtime.
So in the end I was able to all the features proposed, although only partially for a few. I haven't spent too much time creating new transition effects tough, so I plan to keep working on this code, so I can fix the video export feature and implement new transitions, so it can be included in the 0.12 release of Shotwell.