Hey all! Here is my last report for this summer ;) This past week has probably been the most productive since midsummer! I know I should have passed last days busy with code polishing, documentation and other boring stuff (and partly I did.. well no documentation but some polishing for sure :P) but I finally had the chance to freely work on the new gstreamer gl branch! As you might remember from last report, the previous week all major issues that prevented me to port the effects in the master branch were fixed. There are still a couple of minor things yet to be solved but we're working on them. So I ported most of the effects I did in the first half of the summer, I did some restructuring and polishing work, reorganizing the source tree (before everything was on a single file, now each effect has its own file and the ones that do similar things are grouped). I had to rewrite a couple of effects and some part of the infrastructure code to better fit new branch but most of them worked with minimal efforts (thanks to the work done in the previous week). Let's summarize last changes: * gleffects: little excerpt from "gst-inspect gleffects": (0): identity - Do nothing Effect (1): mirror - Mirror Effect (2): squeeze - Squeeze Effect (3): stretch - Stretch Effect (5): fisheye - FishEye Effect (6): twirl - Twirl Effect (7): bulge - Bulge Effect (4): tunnel - Light Tunnel Effect (8): square - Square Effect (9): heat - Heat Signature Effect (10): sepia - Sepia Toning Effect (11): xpro - Cross Processing Effect (12): lumaxpro - Luma Cross Processing Effect (13): sin - All Grey but Red Effect (14): glow - Glow Lighting Effect - sepia and xpro now have brand new curves that make them look a lot more pleasant. - I found some time to write sin, a SinCity inspired effect that turns everything to gray leaving only red shades. Probably needs some more tuning, it's nearly impossible to exclude red tones of the human skin (particulary facial one), but I'm quite proud of it :) * gstglpixbufoverlay: * gstgldifferencematte: - I was working since some time on these filters but never had chance to complete. Now they work in the new branch too. The first paints a semitransparent image over the video stream and the latter does a sort chromakey effect replacing background with a photo. * tests: - fxtest (the effects test app) is now able to use custom source bin descriptions through GOption. - added a test app for pixbufoverlay and differencematte, it's basically fxtest but it can receive images draganddropped images. * clutter: I found some time to cleanup and fix some clutter experiment I did. They use glx texture from pixmap to create a ClutterActor from the gst-gl sink. It's not like sharing texture handles but work quite well and fast, it's a sort of xoverlay on a clutteractor. There is some example in the source tree, one does a simple animation with the video texture and the other is a starting point for a live effect preview widget. I'll probably make a screencast in the next days. That's all for this summer! It's been an amazing time, sometimes a bit stressful, but most of all I had fun and I learned so much! Thank you Daniel for being a good mentor, for letting me work on Cheese, for supporting and encouraging me, for letting me rearrange my goals, for everything ;) there is still a beer (even a case of beers :P) waiting for you here! Thanks David Schleef for giving me commit access to gstreamer cvs, letting me work on his code and in the new git branch, Julien for being helpful and open to my opinions, critics and suggestions. Thanks to everyone who helped and supported me, the guys from #gstreamer, ##OpenGL, Clutter guys, the whole GNOME community, everyone! A big thanks to my girlfriend for being my best supporter and tester, and for standing while I negleted her for code :). Thank you also if you read this whole report ;)! Cheers, Filippo -- Filippo Argiolas Jabber: filippo argiolas jabber no Web: http://fargiolas.netsons.org Irc: fargiolas (GimpNET, Freenode)
Attachment:
signature.asc
Description: This is a digitally signed message part