Basic decoder for Apple Lossless Audio Codec files
This is a basic decoder for Apple Lossless Audio Codec files (ALAC). ALAC is a proprietary lossless audio compression scheme. Apple never released any documents on the format. What is provided here is a C implementation of a decoder, written from reverse engineering the file format. It turns out that most of the algorithms in the codec are fairly well known. ALAC uses an adaptive FIR prediction algorithm and stores the error values using a modified Rice or Golomb algorithm. This program will not be able to handle all ALAC files, it can only handle mono or stereo files. ALAC allows up to 8 channels. The ALAC decoder supports both 16 and 24 bit sample sizes. The decoder is fairly self explanatory, it can read an ALAC stream from either a file or from stdin, and write it as raw PCM data or as a WAV file to either stdout or a file. In theory one should be able to stream data to the decoder.
To install alac_decoder, paste this in macOS terminal after installing MacPorts
sudo port install alac_decoder