Contents

ryanfrancesconi/spfk-lame

Pre-built xcframeworks for LAME and mpg123, packaged as a Swift package for macOS.

Libraries

| Library | Purpose | Version | License | |---------|---------|---------|---------| | lame | MP3 encoding (CBR/VBR) | 3.100.1 | LGPL v2 (Library GPL) | | mpg123 | MP3 decoding | API 49 (1.32 series) | LGPL v2.1 (Lesser GPL) |

The root LICENSE (MIT) covers this packaging only — not the libraries themselves. Both frameworks are LGPL, built as dynamically linked shared libraries so a user can replace them, and both require attribution in embedding applications. See THIRD-PARTY-NOTICES.md for the full terms, the exact wording mpg123 asks to see in About boxes, and why the dynamic linking is load-bearing.

Usage

Used by spfk-audio-conversion as a dependency of the SPFKAudioConverterC target, which wraps LAME and mpg123 in an ObjC interface (LameConverter) for MP3 encoding and decoding. This replaces the previous SoX-based MP3 pipeline, enabling true concurrent batch conversion without actor serialization.

// In Package.swift
.package(url: "https://github.com/ryanfrancesconi/spfk-lame", from: "0.0.1"),

// In target dependencies
.product(name: "lame", package: "spfk-lame"),
.product(name: "mpg123", package: "spfk-lame"),

Requirements

  • Platforms: macOS 13+ (arm64, x86_64)
  • Swift: 6.2+

About

Spongefork is the personal software projects of musician and developer Ryan Francesconi. Dedicated to creative sound manipulation, his first application, Spongefork, was released in 1999 for macOS 8. From 2026, Spongefork returns as his software container for more musical experimentation. In addition to software releases, open source components can be found on his GitHub page.

Package Metadata

Repository: ryanfrancesconi/spfk-lame

Default branch: main

README: README.md