sudofox's journal

Austin Burk's journal, where I share little snippets of my writing, code, and dreams.

.kwz Flipnote sound format progress

We're one step closer to bringing back the Flipnotes from Flipnote Hatena and Flipnote Gallery: World. Right now the hard part is figuring out the sound format. We had a breakthrough today: originally we thought it was VOX ADPCM, nibbles reversed, at 16kHZ, but there was always a lot of loud background noise. As it turns out, it may actually be bitpacked, where the samples are of a variable bitrate to save space. If this is the case, then we should be able to work it how those bitlengths are stored and decode the audio cleanly!

James, id:rakujira, is heading the work to reverse-engineer the format. (as in, he's doing the real work!)

You can find our documentation of the format here: 

As well as a parser here (Go follow his GitHub!):

Finally, we have a JavaScript .ppm and .kwz player. James reimplemented the audio decoding (ADPCM->WAV) in pure JavaScript, what an absolute legend: