You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
nu774 d7836ebd4e bump 1 month ago
.github/workflows github workflow: MSBuild: use m flag 2 years ago
ALAC fix mismatching curly bracket 3 years ago
CoreAudio update CoreAudioTypes.h 1 year ago
filters Compressor: init yA/yR with initial gain value 3 years ago
implib 64bit support 11 years ago
include add opus headers 1 year ago
input add CAFSource 1 month ago
mp4v2 libmp4v2: support opus in isobmff 1 year ago
output WaveOutSink: fix indent 2 months ago
taglib update taglib 2 years ago
uchardet loadTextFile(): use uchardet for text encoding detection 2 years ago
vcproject add CAFSource 1 month ago
.gitattributes add .gitattributes, eol normalization 13 years ago
ALACEncoderX.cpp use return instead of pointer argument 8 years ago
ALACEncoderX.h create ALACEncoderX::isAvailableOutputChannelLayout() 8 years ago
AudioCodecX.h use return instead of pointer argument 8 years ago
AudioConverterX.cpp use return instead of pointer argument 8 years ago
AudioConverterX.h use return instead of pointer argument 8 years ago
AudioConverterXX.cpp add new channel layout tags 8 years ago
AudioConverterXX.h use return instead of pointer argument 8 years ago
AudioFileX.h use return instead of pointer argument 8 years ago
COPYING update wavpack header 12 years ago
CompositeSource.cpp re-organize sources 8 years ago
CompositeSource.h read files with IInputStream 2 months ago
CoreAudioEncoder.cpp use return instead of pointer argument 8 years ago
CoreAudioEncoder.h CoreAudioEncoder.h: use readSamplesFull() 1 month ago
CoreAudioPaddedEncoder.cpp AudioConverterX: split non-wrapper methods into new AudioConverterXX 8 years ago
CoreAudioPaddedEncoder.h AudioConverterX: split non-wrapper methods into new AudioConverterXX 8 years ago
CoreAudioToolbox.h add .gitattributes, eol normalization 13 years ago
ExtAudioFileX.h use return instead of pointer argument 8 years ago
IInputStream.h add IInputStream/Win32InputStream 2 months ago
ISink.h re-organize sources 8 years ago
ISource.cpp re-organize sources 8 years ago
ISource.h read files with IInputStream 2 months ago
README.md docs: update README.md 3 months ago
TrimmedSource.h read files with IInputStream 2 months ago
Win32InputStream.cpp Win32InputStream: don't clear buffer when buffer is full 2 months ago
Win32InputStream.h add IInputStream/Win32InputStream 2 months ago
bitstream.cpp fix MSVC12 build issue 12 years ago
bitstream.h generate PCE for 7.1ch rear on AAC (m4a/adts) 11 years ago
cautil.cpp chanmap: fix channels in accordance with chanmap mods in 2.83 1 month ago
cautil.h cautil.h: remove unnecessary lines 3 years ago
chanmap.cpp add chanmap::getALACChannelLayoutTag() 1 month ago
chanmap.h add chanmap::getALACChannelLayoutTag() 1 month ago
cuesheet.cpp cuesheet.cpp: fix clang build error 6 years ago
cuesheet.h merge configfile, playlist, textfile into new misc namespace 8 years ago
dl.h use lambda 8 years ago
env.sh open source alac encoder 14 years ago
expand.h allow recursive substitution by ${} in --fname-format 11 years ago
iencoder.h re-organize sources 8 years ago
logging.h refacotor logging.h and remove logging.cpp 8 years ago
lpc.c add lpc extrapolator and --no-smart-padding 12 years ago
lpc.h add lpc extrapolator and --no-smart-padding 12 years ago
main.cpp main: print input channel names after label normalization 1 month ago
metadata.cpp read files with IInputStream 2 months ago
metadata.h read files with IInputStream 2 months ago
misc.cpp loadTextFile(): use uchardet for text encoding detection 2 years ago
misc.h loadTextFile(): use uchardet for text encoding detection 2 years ago
mp4v2wrapper.cpp update mp4v2 2 years ago
mp4v2wrapper.h read files with IInputStream 2 months ago
options.cpp fix tag options handling 2 years ago
options.h merge chapter related code to misc namespace 8 years ago
strutil.cpp fix clang -Wparentheses warning 8 years ago
strutil.h refactoring on metadata again 12 years ago
taglibhelper.h read files with IInputStream 2 months ago
util.cpp move time related utility functions from main 8 years ago
util.h read files with IInputStream 2 months ago
version.cpp bump 1 month ago
wgetopt.cpp rename getopt namespace 8 years ago
wgetopt.h rename getopt namespace 8 years ago
wicimage.cpp fix https://github.com/nu774/qaac/issues/104 8 months ago
wicimage.h add .gitattributes, eol normalization 13 years ago
win32util.cpp create win32::is_same_file() 8 years ago
win32util.h disable shlobj.h warning 4091 8 years ago
windows7.manifest switched to taglib from libid3tag + code clean up 15 years ago

README.md

qaac - CLI QuickTime AAC/ALAC encoder

Notice(2024-12-21)

It turned out that CoreAudioToolbox 7.9.8.x or greater (upto 7.10.9.0, the latest version at the moment) can produce glitches on the encoded result.
The issue is only found on AAC CBR mode.

CoreAudioToolbox 7.9.7.x is OK, but you need very old iTunes installer for that version (it's released on 2012).

cf. https://hydrogenaud.io/index.php/topic,85135.msg1056191.html#msg1056191

How to build

You need Microsoft Visual C++ 2010 to build qaac/refalac. AMD64 build is only available for refalac.