yoober · local media · captions

Download, Library & Transcripts

Yoober is a free, MIT-licensed desktop app that downloads online video and audio, builds a local caption library, and plays media with better-than-site captions — using site subtitles or OpenAI Whisper (local GPU or API). Bundles yt-dlp and ffmpeg. No account required.

macOSWindowsLinux

A perfect solution for researchers and the hearing impaired!

Library view — browse downloads, play in-app with captions, and manage subtitles with Whisper or site tracks.

Maintains Yoober. Personal site: https://yaa.bz/

Features

Core capabilities

Download, library, captions, transcription — no accounts.

Local library
Browse downloaded and imported media in a SQLite-backed library with thumbnails, playlists, tags, search (including caption text), and an in-app caption player — fullscreen, repeat, and A–B loop.
Fetch Info
Preview title, thumbnail, duration, available qualities, and caption tracks before you download — so you know exactly what you are getting.
Video downloads
Grab videos from 360p up to 4K. Pick MP4, MOV, MKV, or WebM (default). Embed thumbnails and metadata; WebM gets a sidecar thumbnail when embedding is unsupported.
Audio extraction
Strip audio to MP3, M4A (AAC), Opus, FLAC, WAV, or Vorbis. Choose bitrate from 96 kbps up to 320 kbps with cover art and metadata.
Import local files
Bring existing videos into the library — copy or reference in place, optional re-encode, and bulk Whisper transcription after import.
YouTube captions
When a video already has subtitle tracks, download them from the job card — manual tracks preferred over auto-generated. Fast, no Whisper required.
Whisper transcription
Generate transcripts (TXT, SRT, VTT, JSON) with a local Whisper install or the OpenAI API — CUDA, Apple Silicon Metal, or CPU. Transcribe after download is on by default. Library items without captions get a Whisper action; multi-select can transcribe several at once. Stored in SQLite; copy or export anytime.
Live queue & history
Watch real-time progress, speed, and ETA. Cancel anytime. History persists with retry, reveal-in-folder, and Show in Library actions.
Bundled binaries
yt-dlp and ffmpeg ship inside the app. Header status dots show they are ready. Yoober can keep yt-dlp current from GitHub stable releases, with rollback to the bundled copy if an update misbehaves.
Auto-update
Packaged macOS and Windows builds check for app updates on launch (Settings → Updates). Linux stays a website download. Unsigned macOS builds cannot self-update.
Privacy-first
No Yoober account or cloud library. Downloads, captions, and playlists stay on your machine. Packaged macOS and Windows builds can check update.yoober.app for app updates; yt-dlp updates come from GitHub. Your OpenAI key (if used) is encrypted in your OS keychain.

Library

Your local media hub

Downloads land in ~/Videos/Yoober by default. Thumbnails, playlists, caption search, and in-app playback with a detail preview.

  • Caption-aware player

    HTML5 playback with timed captions from the database. Fullscreen, repeat (off / one / all), A–B range loop, keyboard shortcuts, and auto-hiding controls. Switching videos no longer stacks leftover caption tracks.

  • Thumbnails

    Sidecar thumbnails (including .webp next to WebM downloads) show in list rows and the detail preview. Rename and delete keep the thumbnail with the media file.

  • Playlists & tags

    Organize media into playlists. Tag items with chip input; filter by tag facets in the sidebar. Search ranks title, notes, tags, and optionally caption text via FTS.

  • Import & rescan

    Import videos from disk (copy or reference). Rescan finds unindexed files under your library folder and offers to import them on launch or refresh.

  • Editable metadata

    Select an item for a large thumbnail preview and Play button. Metadata, actions, and captions live in a collapsible Details section. Save once for metadata and captions; copy or export transcripts whenever you need them.

How it works

Four steps

  1. 01

    Paste a URL

    Copy any link yt-dlp supports — YouTube, Vimeo, Twitch, and over a thousand others — and paste it into the Downloader.

  2. 02

    Fetch Info

    Preview the title, thumbnail, duration, available qualities, and caption tracks before committing to a download.

  3. 03

    Download

    Pick video or audio, quality, container, and output folder (defaults to your Library). Watch live progress. Transcribe after download is on by default and always uses Whisper.

  4. 04

    Library & captions

    Play in-app with readable captions. Pull YouTube subtitles from job cards when available, run Whisper from the library, or import files you already have.

Formats

Video & audio options

Video

Quality
360p480p720p HD1080p FHD1440p QHD2160p 4KBest available
Container
WebM (default)MP4MOVMKV
Extras
Embed thumbnailSidecar thumbnail (WebM)Embed subtitlesWrite metadata

Audio only

Format
MP3M4A (AAC)OpusFLACWAVVorbis (OGG)
Bitrate
96 kbps128 kbps192 kbps256 kbps320 kbpsBest
Extras
Embed cover artWrite metadata

Transcription

Site captions or Whisper

Pull existing subtitle tracks, or transcribe locally / via OpenAI API. Transcribe after download is on by default (Whisper). Copy or export TXT, SRT, VTT, JSON.

YouTube captions

Download manual or auto-generated tracks from the job card when Fetch Info detects them. This stays a manual action — Transcribe after download always uses Whisper.

Local Whisper

Offline processing with CUDA, Apple Metal, or CPU. Models from tiny through large. Queue status shows the active device. Library items without captions get a Whisper button, including multi-select Whisper (N).

OpenAI API

Optional hosted transcription. API key stored in your OS keychain. Copy transcript from library detail when you need the text on the clipboard.

Output: Plain text (.txt)SubRip (.srt)WebVTT (.vtt)JSON (.json)

Download

Desktop builds

Free, MIT-licensed desktop app (current 1.0.3). Pick your platform or browse release builds. macOS and Windows can update in-app after install.

  • macOS

    Apple Silicon & Intel · macOS 11+ · signed, notarized, in-app updates

    Download
  • Windows

    Windows 10 / 11 · 64-bit · in-app updates

    Download
  • Linux

    .deb · 64-bit · download new builds from this site

    Download

Support development

Yoober is free to download and use. Donations help cover development time and tooling costs.

Donate

FAQ

Common questions

Is Yoober free?

Yes. Yoober is free to download and use, licensed under MIT. If you find it useful, consider supporting development via the donate link.

Which sites are supported?

Anything yt-dlp supports — YouTube, Vimeo, Twitch, Bilibili, and over a thousand others. If yt-dlp can fetch it, Yoober can download it. YouTube often needs a system Node binary for full format lists.

Do I need to install yt-dlp or ffmpeg?

No. Yoober bundles the right yt-dlp and ffmpeg binaries for your platform. The header shows a live status dot for each so you know they are ready. Settings → Updates can keep yt-dlp current from GitHub stable releases, with revert back to the bundled copy.

What is the Library?

The Library is your local media hub — default folder Videos/Yoober. Browse downloads and imports, organize playlists, search and tag items, edit metadata and captions, and play video in-app with timed subtitles. Captions and playlists live in a local SQLite database; media files stay on disk.

Can I import videos I already have?

Yes. Use Import in the Library sidebar or Downloads queue to pick local video files. Copy them into the library folder or reference them in place. Optional re-encode and bulk Whisper transcription after import are supported.

How does transcription work?

Whisper (local CLI or OpenAI API) generates speech-to-text transcripts stored in SQLite. Transcribe after download is on by default and always uses Whisper. YouTube captions stay a manual job-card action when subtitle tracks exist. From the Library, Whisper is offered for items without captions, including a multi-select Whisper (N) action. Queue status shows the engine (CPU, CUDA, Apple Silicon, or OpenAI API). Output formats: TXT, SRT, VTT, or JSON. Copy transcript from the library detail pane, or export to a file.

What if the video already has YouTube captions?

Fetch Info detects manual and auto-generated caption tracks. After download, use the job card action to pull site captions — fast and free. Prefer manual tracks over auto-generated. Choose Whisper instead if you want a fresh speech-to-text pass.

Does local Whisper use my GPU?

Yes, when available. Yoober auto-detects NVIDIA CUDA on Windows/Linux and Apple Silicon Metal (MPS) on Mac, and shows the active device in job status. Otherwise it falls back to CPU.

How do I install Python and OpenAI Whisper for local transcription?

Local transcription needs Python 3.8–3.11 and the openai-whisper package on your PATH. Install Python from python.org (or your package manager), then run: pip install -U openai-whisper. For GPU acceleration, install a CUDA-enabled or MPS-capable PyTorch build as documented by Whisper. Yoober detects the whisper CLI automatically — or set a custom path in Settings.

OpenAI Whisper setup guide →

Where is my OpenAI API key stored?

If you use the OpenAI API backend, your key is stored securely using your operating system keychain (macOS Keychain / Windows Credential Manager / libsecret on Linux) via Electron safeStorage. It is never written to disk in plaintext.

Is my data sent anywhere?

Downloads and caption fetches run on your machine through yt-dlp. Local Whisper stays offline. Optional calls: OpenAI API if you opt in for API transcription; update.yoober.app if automatic app updates are on (macOS/Windows); GitHub if yt-dlp auto-update is on. There is no Yoober account or cloud library.

Is there cloud sync or an account?

No. Yoober has no user accounts and no cloud library. History, captions, playlists, and settings are local (yoober.sqlite). Clearing history does not delete media or captions.

Which platforms are supported?

macOS (Apple Silicon + Intel, Developer ID signed and notarized), Windows 10/11 (64-bit), and Linux (64-bit .deb). Not available on the Mac App Store.

Does Yoober update itself?

Packaged macOS and Windows builds check for app updates on launch when Check automatically is on (Settings → Updates). Linux has no in-app updater — download a new .deb from this site. Unsigned macOS builds cannot self-update.

Can I wipe everything on this machine?

Settings → Data → Delete all data… clears the local SQLite database (settings, history, library index, captions, playlists, UI state) and the encrypted API key. An optional checkbox also deletes media under the Library folder; referenced files outside that folder are left alone.

Can I download playlists?

Yoober is single-item focused — it passes --no-playlist to yt-dlp so you always get exactly the video you pasted, not an entire channel or playlist.