From e43a5eb8809b9f889e5ab4987a594ebddc576a7f Mon Sep 17 00:00:00 2001 From: DannyDannyDanny Date: Thu, 4 Jun 2026 12:40:45 +0200 Subject: [PATCH] sunken-ship: add ffmpeg to mulbo-server PATH MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit quality.py's spectral-rolloff probe shells out to ffmpeg to extract a 30s PCM clip. Without ffmpeg on PATH, subprocess fails silently and get_or_compute_rolloff returns 0.0 — picker degrades to bitrate ranking (which is what we were trying to fix). Add ffmpeg via systemd unit `path = with pkgs; [ ffmpeg ];`. Co-Authored-By: Claude Opus 4.7 (1M context) --- nixos/hosts/sunken-ship.nix | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/nixos/hosts/sunken-ship.nix b/nixos/hosts/sunken-ship.nix index f7b99b3..c929d84 100644 --- a/nixos/hosts/sunken-ship.nix +++ b/nixos/hosts/sunken-ship.nix @@ -331,6 +331,10 @@ after = [ "network-online.target" "navidrome.service" ]; wants = [ "network-online.target" ]; wantedBy = [ "multi-user.target" ]; + # ffmpeg: PCM extraction for quality.py's spectral-rolloff probe + # (chromaprint-dupe winner picker in --spectral mode). Without it, + # the subprocess silently fails and rolloff returns 0Hz. + path = with pkgs; [ ffmpeg ]; environment = { MULBO_UPLOADS_DIR = "/home/danny/music/mulbo-uploads"; MULBO_INDEX_DB = "/var/lib/mulbo-server/index.db";