Download the ffprobe archive on macOS - #854
Open
krejko wants to merge 1 commit into
Open
Conversation
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) <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
FfprobePlatformDefaults.GetDownloadUrl()returns the ffmpeg archive for macOS, but every consumer looks for a binary namedffprobein the extracted files. The download succeeds and the install then fails:The residue in the config directory confirms the wrong asset is fetched — a 78 MB file named
ffmpeg, and noffprobe:Consequence: on macOS the unmatched scan runs with
ffprobePath == null, so embedded-tag extraction is skipped entirely and books import with only path-derived metadata.macOS is the only affected platform. Linux downloads a static tarball containing both binaries, and the Windows "essentials" archive ships
ffprobe.exe— so both happen to satisfy theffprobesearch by accident.Changes
Fixed
https://evermeet.cx/ffmpeg/getrelease/ffprobe/zip) rather than the ffmpeg archive.The
getreleaseendpoint tracks the current build instead of pinningffmpeg-6.0.zip, which is several years old.Testing
Downloaded the corrected URL and confirmed the archive contains a working
ffprobethat depends only on system frameworks:Placed at the expected path, the running instance picks it up with no restart, and tag extraction works against a real library:
Notes
Only the URL changes; the download, checksum, extraction and install paths are untouched. Users who already have a working
ffprobein their config directory are unaffected, since installation short-circuits when the binary is present.🤖 Generated with Claude Code