Well its been a little while between updates so I thought I should pop something up. Gloss has been moving slowly, but steadily, forward. I took a break from coding / technology for about a month when I visited Singapore and have been a bit slack getting back into things. That said, they’re well and truly back on track now.
There’s no screencast from Gloss today as most of the work has been happening under the covers and visually very little has changed since last time. I can happily say though that most of the features that were shown in the last screencast are now actually working propoerly rather than just working long enough to do a demo
The video player had some performance tuning done to it as the large use of textures was having an impact on video and transition framerate. All textures are now being dynamically add/removed as needed rather than just sitting there once the module is loaded. I’m also currently in the process of making this module be able to navigate a file system in an aesthetically pleasing manner. If anyone has suggestions on how best to do this, please let me know, what I think I have is OK, but maybe limited for some peoples needs.
The TV module has taken steps towards improving its very dodgy file buffering system. Gstreamer is currently reading directly off the socket and whilst this is working and exactly what I wanted, I’m having ‘difficulties’ (To put it mildly) convincing gstreamer to buffer enough data. In the end I fear I’m going to have to move to a custom made pipeline, which I always knew was going to be the case, but I dreaded doing it.
From a program ‘maturity’ point of view, all modules are now fully pluggable, meaning that they are dynamically added at runtime etc. Everything that the program does (Including the actual TV playback) exists as a discrete module, using the shared Gloss resources (Eg input mgt, video controller etc) where required, but otherwise living in its own world. This was a big step towards making it simple for new modules to be added in the future.
The only other minor change of interest is a splash screen. This is hamstrung a little bit by some threading issues that I should hopefully be able to fix with the newest SVN of Clutter, however due to the large number of changes occurring on their trunk at the moment I am holding off on this front.
So that’s about it for now. Expect a new screencast with some funky cover viewer effects in the very near future.
P.S. I’ve also submitted a proposal to do a brief introductory talk about Gloss at the multimedia mini-conf at linux.conf.au in January, so here’s hoping that comes through.