This week I have been following a great GStreamer course given by Edward "Bilboed" Heivey. I have touched GStreamer before but only from the application developers side, and I have never written a plugin. After this week I have realized that GStreamer is a lot more powerful than I have ever expected it to be and it is waaaay-cool :) Writing a plugin is extremely simple and the base classes takes care of many things for you; like if you write a videosink, QoS will already be implemented - stuff like that really rocks!
Yesterday I tried adding backward playback to dvdemux and dvdec, and even though I did get it to playback backward there were quite some issues, like it playing at twise the speed while the stream time being already, resulting in playing back from 10 sec to 5 sec and not to 0 sec, and then mysteriously jumping to 20 sec (2 times 10 sec). Well, Bilboed took a look at my code and ended up hacking on it on his laptop as what happened didn't really make sense. It turned out that there were at least 2-3 bugs in NEWSEGMENT when the rate < 0.0, so he will try fixing that later. Lets see if I can get it working after that :-)
Anyway, learned a lot, so a big thanks goes to Edward! Thanks for a great course and it has been fun hanging out with you!