From 842870a619471d9337f3e8c5ad5a53e69b0a8069 Mon Sep 17 00:00:00 2001 From: Kevin Rejko Date: Thu, 20 Aug 2026 15:37:36 -0600 Subject: [PATCH] Download the ffprobe archive on macOS FfprobePlatformDefaults pointed the macOS branch at evermeet.cx's *ffmpeg* archive, but every consumer searches the extracted files for a binary named "ffprobe". The download succeeds, the extraction finds no matching binary, and installation reports failure: [INF] Downloaded ffprobe archive SHA256=... [INF] No ffprobe binary found in extracted files under .../config/ffmpeg [WRN] ffprobe install did not produce the expected binary at .../ffmpeg/ffprobe [WRN] ffprobe was not installed or auto-install disabled The leftover in the config directory is a 78 MB file named "ffmpeg" and no "ffprobe", which confirms the wrong asset is being fetched. Point macOS at the ffprobe release instead. Linux is unaffected (the static tarball contains both binaries) and so is Windows (the "essentials" archive ships ffprobe.exe), which is why this only breaks macOS. Use the "getrelease" endpoint so the current build is tracked rather than pinning 6.0, which is now several years old. Co-Authored-By: Claude Opus 5 (1M context) --- .../Ffmpeg/Installation/FfprobePlatformDefaults.cs | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/listenarr.infrastructure/Ffmpeg/Installation/FfprobePlatformDefaults.cs b/listenarr.infrastructure/Ffmpeg/Installation/FfprobePlatformDefaults.cs index 2eb4b55b7..ad8a80acc 100644 --- a/listenarr.infrastructure/Ffmpeg/Installation/FfprobePlatformDefaults.cs +++ b/listenarr.infrastructure/Ffmpeg/Installation/FfprobePlatformDefaults.cs @@ -35,7 +35,11 @@ internal static class FfprobePlatformDefaults if (RuntimeInformation.IsOSPlatform(OSPlatform.OSX)) { - return "https://evermeet.cx/ffmpeg/ffmpeg-6.0.zip"; + // Must be the ffprobe archive: every caller looks for an "ffprobe" binary in the + // extracted files, so the ffmpeg archive installs nothing and the scan then runs + // without embedded-tag metadata. "getrelease" tracks the current build rather than + // pinning a version that ages out. + return "https://evermeet.cx/ffmpeg/getrelease/ffprobe/zip"; } if (RuntimeInformation.IsOSPlatform(OSPlatform.Windows))