Skip to content
This repository

refalac is a win32 command line ALAC encoder/decoder based on open source reference implementation by Apple.

refalac shares much of codes and functionalities with qaac. Therefore, it is packed in the same archive with qaac. However, refalac doesn't require QuickTime or other Apple components. Under x64 environment, you can use refalac64.exe in the zip archive. It's a bit faster than 32bit version.

refalac64 needs 64bit version of libFLAC.dll, wavpackdll.dll, and libsndfile-1.dll (if you want to feed these files directly). If you cannot find them, you can download x64DLLs.zip from cabinet page. However, since TAK is 32bit only, it's not supported by refalac64.

refalac works very similar as qaac -A. However, since refalac works on ALAC only, refalac doesn't provide codec specifier option such as -A, -V, -v, -c, -a, --he. You can use "-D" for decoding to WAV.

While Apple's reference implementation uses CAF format, refalac uses m4a container.

Missing features compared to qaac (other than options for AAC encoding)

  • --formats option
  • CoreAudio's AudioFile/ExtAudioFile service importer. If you want to directly encode from AIFF or something, you need libsndfile-1.dll.

Example

refalac foo.wav

will encode foo.wav into foo.m4a. To specify output filename, you can use "-o" like the following:

refalac foo.wav -o bar.m4a

refalac can read cuesheets.

refalac foo.cue

will read foo.cue, and generates per-track m4a. foo.cue can refer to single or multiple audio files.

refalac -D foo.m4a

will decode foo.m4a into foo.wav.

refalac -D foo.flac

In fact, decoding mode accepts all formats that refalac can read. Therefore, refalac -D can be usable as wave encoder like this.

flac -dc foo.flac | refalac - -o foo.m4a

In this command line, flac decodes into pipe, then refalac read from pipe.

Alternatively, you can output to pipe on decoding mode like the following:

refalac -D --rate=32000 --normalize foo.aiff -o - | qaac - -o bar.m4a
Something went wrong with that request. Please try again.