Well its been a while since I posted an update so here goes.
Due to my new-found skills in problem solving of reverse engineering Daisy Formats into navigable constructs, I was commissioned to write an iPhone (now iPad too) version of Olearia. As it turned out the port to the iPhone platform was just not possible due to the nature (mainly memory consumption) of the NSXMLDocument structures Olearia uses and that they are not available in the iPhone API’s. Sure there are open source frameworks which do similar stuff but in the end the set of options and variations of formats was just too complex.
Time for another tack. So after a few meetings with different people and explaining the complexities and variations of the DAISY formats I had a brain wave (thanks Travis), seeing as all the id tags in a given book are unique why not build a parser that creates its own navigable context?
It took a while (and it’s still being updated) but now I have a parser which can load a book consisting of any number of smil files (usually between 1 and 40) which may contain up to several hundred elements. I have one book which has a single SMIL file containing just under 3000 lines. The parser also deals with the ncc.html, .NCX, and .OPF files.
All this parsing takes mere seconds (usually 2-3) which is pretty impressive IMHO on such a resource sparse device.
There were some bits like the SMIL time code transformer that came from Olearia but have since undergone extensive changes to suit the different needs of the iPhone playback system.
I also added the ability to use other forms of navigation like goto page (assuming the book has page markups), phrase, sentence or word navigation depending on how the book was authored.
In progress is the recognition of “skippable items” like production notes and sidebars, etc.
That will be after the public release of DaisyWorm which is slated for the first week of June 2010.
Any other updates will take place after WWDC which should be a blast.
Thats it for now.
Back to the code
Thanks for posting! I really enjoyed the report. I’ve already bookmark
this article.