Docker image: enable non-free for fdkaac's library

This commit is contained in:
Jonathan Sykes
2026-10-18 17:59:54 +08:00
parent b48d36b3dd
commit 249cfd1e42
2 changed files with 4 additions and 3 deletions

View File

@@ -133,7 +133,7 @@ JSON shapes mirror the Tauri Rust bridge exactly — don't change one side alone
send `?still=1` → the device stores `<id>.m4a` + OPFS `art/<id>.jpg` and plays it as send `?still=1` → the device stores `<id>.m4a` + OPFS `art/<id>.jpg` and plays it as
audio with the picture; online, still songs also play audio + `/api/media/:id/art`. audio with the picture; online, still songs also play audio + `/api/media/:id/art`.
- **Compact audio (HE-AAC)**: `<id>.<gen>.he.m4a`, ~48 kbps HE-AAC v1 from **fdkaac** - **Compact audio (HE-AAC)**: `<id>.<gen>.he.m4a`, ~48 kbps HE-AAC v1 from **fdkaac**
(Debian contrib — ffmpeg's encoder is LC only), one niced lane, made for every copy and (Debian contrib + non-free — ffmpeg's encoder is LC only), one niced lane, made for every copy and
moved to the front when a device asks (`prepare?audio=he` → `working` until ready). moved to the front when a device asks (`prepare?audio=he` → `working` until ready).
Columns `he_size` (NULL = not made, 0 = failed/not smaller) + `he_sha256`. Devices ask Columns `he_size` (NULL = not made, 0 = failed/not smaller) + `he_sha256`. Devices ask
for it with Settings → "Save songs as compact audio" or Saved videos → Shrink for it with Settings → "Save songs as compact audio" or Saved videos → Shrink

View File

@@ -16,9 +16,10 @@ FROM oven/bun:1-debian
# ca-certificates for HTTPS fetches from yt-dlp # ca-certificates for HTTPS fetches from yt-dlp
# ffmpeg lets yt-dlp merge bestvideo+bestaudio into a single mp4 for the # ffmpeg lets yt-dlp merge bestvideo+bestaudio into a single mp4 for the
# "Save before playing" download path (GET /api/download?mux=1) # "Save before playing" download path (GET /api/download?mux=1)
# fdkaac (Debian contrib) encodes the compact HE-AAC audio phones can save; # fdkaac (Debian contrib; its libfdk-aac2t64 is non-free) encodes the compact
# HE-AAC audio phones can save;
# ffmpeg's built-in AAC encoder only does AAC-LC. # ffmpeg's built-in AAC encoder only does AAC-LC.
RUN sed -i 's/^Components: main$/Components: main contrib/' /etc/apt/sources.list.d/debian.sources && \ RUN sed -i 's/^Components: main$/Components: main contrib non-free/' /etc/apt/sources.list.d/debian.sources && \
apt-get update -qq && \ apt-get update -qq && \
apt-get install -y --no-install-recommends \ apt-get install -y --no-install-recommends \
curl \ curl \