Files
Nexmoe e5d36da904 fix(ffmpeg): require ffmpeg/ffprobe bundle directory, closes #94 #106 #105 #69 #133 (#139)
* fix(ffmpeg): require bundled ffprobe directory

* ci(build): upload artifacts on PR

* fix(download): allow embed thumbnail on macos
2026-01-17 13:35:29 +08:00
..
2025-11-15 12:29:31 +08:00
2025-10-25 11:06:40 +08:00

Resources Directory

This directory contains bundled resources for the application.

yt-dlp Binaries

To bundle yt-dlp with the application, place the appropriate binaries in this directory:

Required Files

  1. Windows: yt-dlp.exe
  2. macOS: yt-dlp_macos
  3. Linux: yt-dlp_linux

How to Download

You can download the latest yt-dlp binaries from the official GitHub releases:

Option 1: Manual Download

Option 2: Using curl/wget (Linux/macOS)

# For Windows binary
curl -L https://github.com/yt-dlp/yt-dlp/releases/latest/download/yt-dlp.exe -o resources/yt-dlp.exe

# For macOS binary
curl -L https://github.com/yt-dlp/yt-dlp/releases/latest/download/yt-dlp_macos -o resources/yt-dlp_macos
chmod +x resources/yt-dlp_macos

# For Linux binary
curl -L https://github.com/yt-dlp/yt-dlp/releases/latest/download/yt-dlp -o resources/yt-dlp_linux
chmod +x resources/yt-dlp_linux

Option 3: Using PowerShell (Windows)

# Download all three binaries
Invoke-WebRequest -Uri "https://github.com/yt-dlp/yt-dlp/releases/latest/download/yt-dlp.exe" -OutFile "resources/yt-dlp.exe"
Invoke-WebRequest -Uri "https://github.com/yt-dlp/yt-dlp/releases/latest/download/yt-dlp_macos" -OutFile "resources/yt-dlp_macos"
Invoke-WebRequest -Uri "https://github.com/yt-dlp/yt-dlp/releases/latest/download/yt-dlp" -OutFile "resources/yt-dlp_linux"

ffmpeg/ffprobe Binaries

ffmpeg is required for merging audio/video streams and audio extraction. ffprobe is required for post-processing metadata. Bundle both binaries under resources/ffmpeg/.

Required Files

  1. Windows: resources/ffmpeg/ffmpeg.exe and resources/ffmpeg/ffprobe.exe
  2. macOS: resources/ffmpeg/ffmpeg and resources/ffmpeg/ffprobe
  3. Linux: resources/ffmpeg/ffmpeg and resources/ffmpeg/ffprobe

How to Download

Note

  • Bundled binaries are required for Windows builds. On macOS/Linux the app can also use ffmpeg/ffprobe from the system PATH.
  • You can override the lookup path via FFMPEG_PATH. It must point to a directory containing both ffmpeg and ffprobe.
  • File sizes: ~40-80 MB per ffmpeg build (ffmpeg + ffprobe)

JS Runtime (Deno)

yt-dlp uses an external JS runtime (Deno by default) for some extractors. Bundle a Deno binary so the app can run without system dependencies.

Required Files

  1. Windows: deno.exe
  2. macOS: deno
  3. Linux: deno

How to Download

Note

  • You can override the runtime path via YTDLP_JS_RUNTIME_PATH if needed.