Crammit

Because hey, Jammit screwed us...

April 2018

iPhone Too!

ipHone version released Read Moreā€¦

Version 1.1.1

Looks like most of the initial kinks for the iOS player have been worked out. Everyone has been really supportive and helpful in identifying the myriad quirks of all the different hardware and OS combinations. This would be a lot easier if there were more of me, a real QA department, and a bevy of proper hardware to test on! Just waiting today for Apple approval, and then release…

I'm taking a break for a couple of days. This project seems to have taken over my life for the last month and half or so!

iOS Joy

So many issues!

I have now pretty much wrapped up the second version (1.1) of the iOS app, and I'm about to submit it to Apple. It is a MAJOR rewrite! The need to play back movies created in Crammit now is all but moot, as the new version downloads and plays back ANY ,jcf file… for free.

For those interested in the challenges involved, they were manifold. First, I had to build a robust downloader in iOS that could operate on a separate thread from the thread used to interact with the interface. This means that you can start a download , and let it chug away in the background.

Second, I had to construct an "unpacking" sequence for freshly downloaded files that also works on a background thread. First, the files gets unzipped. Then, the audio files are identified and decompressed to their original 16 bit stereo 44.1 glory. Then, those audio files are woven into a quicktime wrapper to enable synced playback, and then original audio files are then discarded.

The score files were originally going to be concatenated into one file, but the performance was unpredictable, as longer songs would not load into the scrolling view that displayed them! This was solved by dividing up the image into "tiles", and adding them one after another into the scroll view.

I then discovered that the overview waveform suffered a similar problem, so that too have to be tiled and sequentially added. Now, even epic songs like "Close To The Edge" can be full displayed.

Also, there were issues with the newer API for scanning the iPads photo roll. System 9.3.5 crashed, so conditional code had to be written to perform the search if an older system was detected.


This version has many, many new bits and several key optimizations! Now if I can get this through Apple….