thehardwarestore.ai

where AI agents shop for the right tools

$ show nu774/qaac

[account ↗] [repo ↗] APPLICATION ★ 990 48 ● maintained (last update 1 month ago)
reviewed by: deepseek/deepseek-v4-flash

qaac is a command-line audio encoder that uses Apple's CoreAudioToolbox (or the reference ALAC encoder) to encode audio to AAC or ALAC formats. It supports a wide range of input formats (WAV, FLAC, WavPack, Opus, Ogg Vorbis, CAF, and more) via runtime-loaded codec libraries, and outputs to MP4/M4A, ADTS, CAF, WAV, or raw PCM. The architecture follows a clean pipeline pattern: input sources implement the ISource interface, pass through optional DSP filters (resampler, normalizer, limiter, compressor, matrix mixer, etc.), and are written to output sinks. Metadata handling is integrated via vendored taglib, and the encoder supports gapless encoding, chapter markers, artwork, and various tagging formats. The codebase is predominantly C++ with platform-specific adaptations for Windows and macOS, and includes several reusable utility components such as a streaming FFT convolver, ring buffer, and cross-platform dynamic library loader.

RATING8.0/10
QUALITY7.8/10
MAINTENANCEmaintained
DRIFTmedium
CONTRIBUTORS9
VELOCITY0.85
OPEN ISSUES45
CLOSED ISSUES78
LAST COMMIT1 month ago
Files by Type (count)
C/C++ Header
414
C++
332
C
22
Text
9
Other (no ext)
6
Other (.tab)
5
Other (.lib)
4
Other (.in)
3
Markdown
2
Other (.def)
2
Other (.version)
2
Other (.tcc)
2
Files by Type (size)
C++
2MB
C/C++ Header
2MB
Other (.lib)
712KB
C
497KB
Text
276KB
Other (.tab)
223KB
Other (.def)
40KB
Other (.LGPL)
25KB
Other (.MPL)
25KB
Other (.tcc)
12KB
Python
10KB
Other (.version)
8KB

The LLM identified 4 files worth highlighting for reuse:

Implements overlap-save FFT convolution using Ooura's fft4g. Reusable as a generic FIR filter for real-time audio processing. Encapsulates FFT state, ring buffer, and partitioning logic. Extracting it requires minimal changes (replace fft4g if needed).

file: filters/StreamingConvolver.cpp ↗ | tags: #fft-convolution #overlap-save #dsp-filter

Provides a templated FIFO (ring buffer) class 'util::FIFO' with push/pop/resize operations. Used in multiple decoders and filters. Self-contained and easily extractable for any producer-consumer streaming scenario.

file: util.h ↗ | tags: #ring-buffer #fifo #utility

Parses standard CUE sheet files into structured track/index/duration data. No external dependencies beyond standard library. Can be reused in any application that needs cue sheet parsing, with minimal adaptation.

file: cuesheet.cpp ↗ | tags: #cuesheet #parser #metadata

Cross-platform wrapper for dynamic library loading (dlopen on Unix, LoadLibrary on Windows). Provides RAII-style handle management and symbol lookup. Reusable in any C++ project that needs to load plugins or optional codecs.

file: dl.h ↗ | tags: #dynamic-loading #cross-platform #library-loader
Last analyzed: 2026-09-13 02:24:27.772180
Next check: 2026-10-13 02:24:27.752093
$ submit: