Acknowledgments

Open-source libraries, assets, and AI model components used in MacAMP, with license information.

MacAMP plays local music and performs audio analysis and karaoke separation on your device. It contains no advertising or third-party analytics. Optional online features send requests to their services: metadata and lyrics lookup, artist and album information, downloads, software updates, and configured AI connectors. Cloud AI receives the messages and library information allowed by your connector permissions. Enabling external MCP access lets a local client read the library information exposed by its tools. See the settings disclosures and each app's bundled PrivacyInfo.xcprivacy for the relevant controls.

MacAMP

MacAMP is free software by Nayden Panchev (drpanchev.com), licensed under the GNU General Public License v3.0 with the additional attribution and naming terms in its NOTICE file. Source code: github.com/airnayden/macamp.

MacAMP is built with — and gratefully acknowledges — the open-source software listed below. Each component remains under its own license; the names and links here point to the canonical upstream project and full license text.

Open-source libraries (Swift Package Manager)

The following Swift packages are resolved and linked into the app. Versions are read verbatim from Tuist/Package.resolved.

Audio engine note

The codec libraries above are consumed through SFBAudioEngine. The LGPL-licensed codecs (mpg123, libsndfile, True Audio, LAME) ship as dynamically-linked XCFrameworks so the LGPL relink requirement is satisfied; the BSD/MIT codecs may be linked statically or dynamically.

Visualizer — projectM / MilkDrop (macOS only)

The projectM (MilkDrop) visualizer is OpenGL-based and LGPL-licensed. It ships in the macampMac target (compiled with MACAMP_PROJECTM, dynamically linked) and never on iOS.

  • libprojectM 4.1.6 — LGPL-2.1 — dynamically linked (libprojectM-4.4.dylib, embedded under Contents/Frameworks, loaded via @rpath). MacAMP's one-file patch is kept under the LGPL. Full text and notice: macOS/Vendor/projectM/LICENSE-projectM-LGPL-2.1.txt and macOS/Vendor/projectM/ACKNOWLEDGMENTS-projectM.md.

Preset pack — "Cream of the Crop" (MilkDrop presets)

  • Source: https://github.com/projectM-visualizer/presets-cream-of-the-crop
  • License / redistribution terms (explicit): MilkDrop presets were, in almost all cases, not released under any specific license. Each preset author retains copyright, but because the presets were freely released and have been bundled and redistributed across many applications for two decades, they are treated as public domain. If a preset author does not want their creation included, the projectM team removes the preset(s) from future releases. MacAMP bundles a curated allowlist subset (~40 presets), not the full pack. Full text: macOS/Vendor/projectM/LICENSE-presets-cream-of-the-crop.md.

Texture pack — "MilkDrop Texture Pack"

  • Source: https://github.com/projectM-visualizer/presets-milkdrop-texture-pack
  • License / redistribution terms (explicit): the pack collects the textures originally released with MilkDrop plus commonly-used community textures, and is recommended for bundling with any projectM application that ships presets. The presets reference these textures via projectm_set_texture_search_paths. See macOS/Vendor/projectM/README-texture-pack.md.

SoundFont — General-MIDI instrument bank

MacAMP renders MIDI files through Apple's AVAudioUnitSampler, loaded with the GeneralUser GS SoundFont by S. Christian Collins as its General-MIDI instrument bank.

  • Name: GeneralUser GS
  • Author: S. Christian Collins
  • License: GeneralUser GS License (custom, royalty-free)
  • Source: https://www.schristiancollins.com/generaluser.php
  • Redistribution terms (explicit):
    • Free to use and distribute bundled inside software, games and other products — including commercial ones — with no royalties and no attribution requirement.
    • When the SoundFont is redistributed by itself (a standalone .sf2 file rather than embedded in an application), the accompanying license and documentation text must be included, and the SoundFont may not be sold on its own.
    • MacAMP bundles the bank inside the application, so the embedded-use terms apply; the upstream license/readme is shipped alongside the bank in the app's resources for completeness.

Repository note: only a tiny, self-authored test fixture (PlayerCore/Tests/MIDITests/Fixtures/tiny.sf2 — public domain, MacAMP-owned) is currently committed to the repository. The production GeneralUser GS bank is injected into the sampler by the app shell at runtime; its .sf2 file and license/readme must be placed in the app's bundled resources before MIDI playback ships.

Karaoke mode — AI model and tooling

Karaoke mode uses an offline vocal-separation pipeline built on the following components. Standard macOS releases include the model. Karaoke separation is unavailable in iOS builds and macOS builds without the model. The model provenance and owner confirmation are recorded in Spikes/ADR-karaoke-separation.md.

Mel-Band Roformer (vocal separation model)

Redistribution clearance: the project owner confirmed on 2026-11-03 that clearance has been obtained for the bundled checkpoint. The confirmation is recorded in Spikes/ADR-karaoke-separation.md; the underlying permission record is maintained by the owner. This notice does not assign the model weights the licenses of the separate training or architecture code.

coremltools (model conversion, build-time only)

The Mel-Band Roformer checkpoint is converted to Core ML MLProgram fp16 format using Apple's coremltools library. coremltools is used at build time only and is not bundled in the app.

Downloads — yt-dlp and ffmpeg (macOS only)

The YouTube downloader feature ships two bundled command-line tools. Both are macOS-only (macampMac). They are copied out of the app bundle to ~/Library/Application Support/MacAMP/Tools/ on first use and are never part of PlayerCore.

yt-dlp

  • Pinned version: 2026.08.19
  • Upstream source: https://github.com/yt-dlp/yt-dlp
  • Asset: yt-dlp_macos.zip — the universal (x86_64 + arm64) PyInstaller one-directory build, macOS 10.15+. It ships in the app bundle as a whole directory tree at Contents/Resources/yt-dlp/: a yt-dlp_macos launcher plus a sibling _internal/ holding the CPython runtime and ~100 shared libraries. The launcher resolves _internal/Python at startup, so the two are inseparable.
  • Source license: The Unlicense — yt-dlp's own source code is in the public domain.
  • Shipped binary license: The macOS release asset is a PyInstaller bundle — a combined work that packages yt-dlp's Unlicense source together with the CPython interpreter and several GPL-licensed runtime libraries. Per yt-dlp's own release documentation, the resulting binary is a GPLv3+ combined work. Shipping it as a directory rather than a single file changes the packaging, not the licence: every one of those libraries is the same combined work, and the offer below covers all of it.
  • Source offer: the in-bundle SOURCE-OFFER.txt (shipped flat under Contents/Resources/, beside the yt-dlp/ tree rather than inside it) provides the written offer required by GPLv3 §6(b). It cites yt-dlp's source repository at the pinned release tag as the corresponding source.

ffmpeg and ffprobe

Opus quality note: when a YouTube source is already served as an opus stream, yt-dlp remuxes (stream-copies) rather than re-encoding. The --audio-quality flag is therefore inert for those items, which avoids a generation-loss opus-to-opus transcode.

Test and development infrastructure

The following components are used at build/test time only and are not shipped in the app binary.

libbs2b (crossfeed reference vectors)

The crossfeed kernel (PlayerCore/Sources/DSP/CrossfeedKernel.swift) is validated against ground-truth impulse responses generated from libbs2b 3.1.0. The library's C source (vendor/bs2b.c and three headers) is committed verbatim under tools/fixtures/bs2b/vendor/ solely to compile a tiny fixture generator; neither the C source nor any compiled output ships in the app.

  • Upstream project: libbs2b — Bauer stereophonic-to-binaural DSP
  • Version: 3.1.0
  • Author: Boris Mikhaylov
  • License: MIT — see tools/fixtures/bs2b/vendor/COPYING
  • Tarball SHA-256: 6aaafd81aae3898ee40148dd1349aab348db9bfae9767d0e66e0b07ddd4b2528 (cross-checked against the Homebrew formula pin — see tools/fixtures/bs2b/README.md)

Apple frameworks

MacAMP builds on Apple's SDK frameworks (SwiftUI, AVFAudio, AudioToolbox, Accelerate, MediaPlayer, CoreML, GRDB-linked system SQLite, Metal, and — on macOS only, for projectM — the deprecated-but-functional OpenGL.framework). These are used under the Apple SDK license and are not redistributed by MacAMP.

On this page