v0.1.8
Menu
Download

Downloader

Reliable YouTube downloads with real size estimates, playlist folders, audio extraction, and a queue that does not pretend hung jobs are fine.

Paste a URL and go

Drop a YouTube link into the input and RuForge fetches metadata immediately. You see the title, thumbnail, and size estimates before anything downloads. The hero area shows a live progress bar with speed and ETA once a job starts.

  • Metadata fetch uses yt-dlp simulate (no partial download)
  • Size estimates differ for audio-only vs video (dual simulate)
  • Clipboard paste, drag-drop, and manual entry all work
RuForge downloader with URL pasted and metadata loaded

Playlist support

Paste a playlist URL and every video appears as a row with its own toggle. Flip individual rows to audio-only, see per-row sizes, and check for duplicates before you commit. Downloads land in a numbered subfolder so file order matches playlist order.

  • Per-row audio/video toggle with individual size previews
  • Duplicate detection warns before you waste bandwidth
  • Output folder: PlaylistName/01 - Title.mp4, 02 - Title.mp4, etc.
  • Settings tool regroups flat files into playlist folders after the fact
RuForge playlist download with per-row controls

Queue and format control

The floating queue drawer lives in the bottom-right corner. Thumbnails crossfade as jobs advance. Pause, resume, reorder, or replace a job without leaving the page. Format selection picks between video (best muxed) or audio-only (m4a extraction, not a re-encode).

  • Audio-only uses `-f bestaudio[ext=m4a]/bestaudio`, not video re-encode
  • Stall watchdog: if yt-dlp idles too long, kills the process and marks failed
  • Replace button re-downloads over an existing library file in place
  • Cookie/session support for age-restricted or members-only content
RuForge download queue drawer with active jobs

Post-download processing

After a successful download, RuForge generates scrubber preview sprites (ffmpeg sprite sheets) so hover previews work immediately in the player. Duplicate outputs from yt-dlp (video-only + muxed for the same id) are cleaned up automatically.

  • Sprite generation runs in background (toggle off in Settings > Downloads)
  • Orphan .fNNN video-only leftovers removed after mux completes
  • Library scan picks up new files and deduplicates by source_id
  • Processing phase shows "Processing..." in queue row while ffmpeg works
RuForge download complete with processing indicator