I've gotten more than a few concerned queries about how Lib-Ray is going, because there isn't a lot to show for it right now. I completely understand the concern. However, I'm very much planning to deliver on or before the July 2013 "Estimated Delivery" date for the project. I have a very high confidence in that.
"Significant Pauses in Production"
What has been taking so long has nothing to do with problems in Lib-Ray, but with my other commitment, "Lunatics", which has been taking up a great deal more time than I estimated (which, yes, is due to bad estimation on my part -- fortunately my estimates for Lib-Ray itself are based on much more experience).
I am truly sorry about the delays, but this was an expected possibility documented in the proposal under "Other Commitments". "Lunatics" is a prior commitment, so it had to take precedence. This is what I meant by "significant pauses in production" although I have to admit that "significant" sort of turned into "absurdly long" in this case.
Back to Work on Lib-Ray!
On the other hand, this problem is past now. All that's left on the "Lunatics" deliveries I was working so hard to complete is burning and shipping disks, which will be taken care of by Saturday. So the point is now moot.
I will be working 100% on Lib-Ray until I have achieved the following milestones:
- All basic playback features supported in the software player
- Prototype releases mastered (i.e. "Sita Sings the Blues" and "Blender Open Movies")
- Informal description of file system, file structure, and file formats
- Documented "from scratch" production of releases
I will refrain from making predictions on just how long this will take, but there will certainly be some code checked in on the software by the end of January.
I'm getting pretty excited about being able to work on this without interruptions, as I'm sure you can appreciate how hard it is to code anything when you're having to multi-task a lot. I think we can expect pretty rapid progress once I get into it.
Things Already Done on Lib-Ray
Even during the delays from Lunatics, I was not completely idle with Lib-Ray. I've done a great deal of experimentation with the design and research into the standards on which Lib-Ray is based. This will translate to rapid progress now that I have an adequate block of time to put it to use.
One thing that I recently started experimenting with is using SVG embedded into HTML, which is permitted in HTML5 and supported by the browser engines (Webkit and Mozilla/Firefox) that I'll be working with.
That's pretty neat, because it raises the possibility of designing menus with Inkscape, which would allow me to go beyond the simple "wizard" approach that I first proposed, and allow for some interactive design.
No doubt, however, there are some of you recoiling at the idea of designing menus with SVG. Have no fear: the design may allow SVG, but it won't require it. I will probably design one of the prototypes using HTML+CSS and the other with SVG, just to illustrate the possibilities. So far, I'm not aware of any reason why this won't work.
Experimentation with Gstreamer was ultimately disappointing -- playback freezes at certain points, which I think might be bitrate extremes in the video. I therefore decided to test libvlc instead, and that proved much better. So VLC it will be! I'll try to add a Gstreamer backend afterward for anyone who wants to try to get it to work.
It may seem much more trivial, but I also spent some time on the package-design for the releases, costing out various options for how to deliver both the "Economy/Compact" versions and the "Deluxe Editions". The vinyl pocket seems to be by far the simplest and most reliable approach for the compact version, and the program book provides a place to mount it. The deluxe edition will be pretty much as planned, although I'm debating over whether my 3D-printed SD card holder is actually better than just using a commercially-available clamshell case for the card. I'll probably want to go through at least another iteration on that design.
Is This Going to Happen Again?
Possibly. But not nearly as badly! Now that I've delivered on the first Kickstart for Lunatics, Lib-Ray is the prior-commitment, and Lunatics work will have to wait. The last delivery on Lib-Ray will undoubtedly be the book, "The Complete Guide to Lib-Ray" and that might not come out until this Summer, close to the deadline.
The hardware (HTPC) part of this project may have a few delays as I need to do some serious troubleshooting on the test machine. I built that awhile back, but the sound driver is proving recalcitrant -- the motherboard has a new chipset from Realtek. That's probably not a serious obstacle, it's just a time sink, while I troubleshoot the problem.
The binary packaged version of the software and the Live-CD edition will also be fairly late, since they require all of the other pieces to be completed first. However, everything should be done by July as predicted.
I'll post again at the end of next week -- hopefully by then, I'll have some cool stuff to show you!