Adding MP3 support to the Blorb specification

The lack of MP3 support in Glulx is causing problems for Inform: both currently and in the future. For most purposes, AIFF and Ogg Vorbis are fine—but Safari only supports MP3, AAC, and WAV. This means 17% of web users won’t be able to hear sound in any of the formats supported by Blorb.

Out of those three formats, the most practical for IF purposes is MP3. Historically, Blorb didn’t support MP3 because of patent concerns. But those patents expired almost a decade ago now (in the US; in the EU it’s almost two decades), so this should no longer be an obstacle.

I propose adding the following subsection to section 3 of the Blorb spec:

3.5. MP3 Sounds.

An MP3 file has chunk type 'MP3 '. This is a high-quality (but lossy) audio compression format with widespread support. The MP3 format is documented at:

https://mp3guessenc.sourceforge.io/MPEG%20Layer3%20Bitstream%20Syntax%20and%20Decoding.pdf

Section 14.3 mentions that the Z-machine should treat AIFF sounds differently from Ogg sounds. I suggest that MP3 should be treated like Ogg for this purpose until such time as “future versions of the Z-machine [specification] address this issue”.

It’s a very small change to the specification, and it won’t have much real-world impact until software is updated to support it. But that updating won’t happen until the spec is updated, so we have to start the ball rolling somewhere! And better now than after Inform 11 is out with BINA workarounds in place.

12 Likes