{"id":48890920,"url":"https://github.com/mgalde/whisperdrop","last_synced_at":"2026-04-16T08:00:34.796Z","repository":{"id":349201008,"uuid":"1201418542","full_name":"mgalde/WhisperDrop","owner":"mgalde","description":null,"archived":false,"fork":false,"pushed_at":"2026-04-16T05:41:26.000Z","size":2193,"stargazers_count":0,"open_issues_count":1,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2026-04-16T05:48:00.725Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"C","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/mgalde.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2026-04-04T16:47:48.000Z","updated_at":"2026-04-16T05:41:32.000Z","dependencies_parsed_at":"2026-04-16T08:00:32.231Z","dependency_job_id":null,"html_url":"https://github.com/mgalde/WhisperDrop","commit_stats":null,"previous_names":["mgalde/whisperdrop"],"tags_count":5,"template":false,"template_full_name":null,"purl":"pkg:github/mgalde/WhisperDrop","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mgalde%2FWhisperDrop","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mgalde%2FWhisperDrop/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mgalde%2FWhisperDrop/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mgalde%2FWhisperDrop/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/mgalde","download_url":"https://codeload.github.com/mgalde/WhisperDrop/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mgalde%2FWhisperDrop/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":31876852,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-16T07:36:03.521Z","status":"ssl_error","status_checked_at":"2026-04-16T07:35:53.576Z","response_time":69,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.5:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2026-04-16T08:00:27.359Z","updated_at":"2026-04-16T08:00:34.789Z","avatar_url":"https://github.com/mgalde.png","language":"C","funding_links":[],"categories":[],"sub_categories":[],"readme":"# WhisperDrop\n\n\u003cp align=\"center\"\u003e\n  \u003cimg src=\"WhisperDrop.png\" alt=\"WhisperDrop\" width=\"200\"/\u003e\n\u003c/p\u003e\n\n\u003cp align=\"center\"\u003e\n  \u003ca href=\"https://github.com/mgalde/WhisperDrop/releases/latest\"\u003e\u003cimg alt=\"Latest release\" src=\"https://img.shields.io/github/v/release/mgalde/WhisperDrop?style=flat-square\"\u003e\u003c/a\u003e\n  \u003cimg alt=\"License\" src=\"https://img.shields.io/badge/license-MIT-blue?style=flat-square\"\u003e\n  \u003cimg alt=\"Platform\" src=\"https://img.shields.io/badge/platform-Linux%20%7C%20Windows%20%7C%20macOS-lightgrey?style=flat-square\"\u003e\n\u003c/p\u003e\n\nDrag and drop your audio or video files onto WhisperDrop and get a text transcript back — no cloud, no subscription, no command line required.\n\nWhisperDrop is a graphical front-end for [OpenAI Whisper](https://github.com/openai/whisper), a free and open-source speech-recognition model that runs entirely on your own computer. Your audio never leaves your machine.\n\n---\n\n## What WhisperDrop does\n\n- **Drag and drop** one or more audio or video files onto the window\n- **Pick a model** — trade speed for accuracy depending on your needs\n- **Choose an output format** — plain text, SRT or VTT subtitles, TSV, JSON, or all of them at once\n- **Save anywhere** — next to the original file or in a folder of your choice\n- **Watch live** — real-time transcription log shows progress as it runs\n- **Stay up to date** — built-in update check via Help → Check for Updates\n\nSupported file types: MP3, WAV, M4A, FLAC, AAC, OGG, OPUS, WMA, MP4, MKV, MOV, WEBM, and most other formats FFmpeg can read.\n\n---\n\n## System requirements\n\n| | Linux | Windows | macOS |\n|---|---|---|---|\n| **OS** | Any modern desktop (GNOME, KDE, XFCE, …) | Windows 10 or later | macOS 12 (Monterey) or later |\n| **Architecture** | x86_64 | x86_64 | x86_64 / Apple Silicon |\n| **RAM** | 2 GB (4 GB+ recommended for larger models) | 2 GB | 2 GB |\n| **Disk** | 1 GB free for `base`; up to 10 GB for `large-v3` | 1 GB free | 1 GB free |\n| **Internet** | Required on first use to download model weights; not needed after that | Same | Same |\n\n\u003e **Privacy:** Once the model is downloaded, WhisperDrop works completely offline. No audio, text, or telemetry is ever sent anywhere.\n\n---\n\n## Installing WhisperDrop\n\n- [Linux](#linux)\n- [Windows](#windows)\n- [macOS](#macos)\n\n---\n\n### Linux\n\n#### Option 1 — Graphical Installer (Recommended)\n\nThe installer checks your system, installs anything that is missing, copies WhisperDrop into place, and adds it to your Applications menu. No terminal required.\n\n1. Go to the [Releases page](https://github.com/mgalde/WhisperDrop/releases/latest)\n2. Download **WhisperDrop-Installer-vX.X.X-linux-x86_64** and make it executable:\n   ```bash\n   chmod +x WhisperDrop-Installer-*-linux-x86_64\n   ./WhisperDrop-Installer-*-linux-x86_64\n   ```\n3. Follow the on-screen steps — you may be asked for your password once to install system packages\n4. Click **Launch WhisperDrop** when the installer finishes\n\nWhisperDrop will appear in your Applications menu under Audio \u0026 Video.\n\n\u003e **Removing WhisperDrop:** Download **WhisperDrop-Uninstaller-vX.X.X-linux-x86_64** from the same release and run it. It will remove the application, shortcut, and icon. You can optionally remove saved settings too.\n\n\u003e **Fedora note:** FFmpeg is in the RPM Fusion repository, which is not enabled by default. If the installer fails to install FFmpeg, enable RPM Fusion first:\n\u003e ```bash\n\u003e sudo dnf install https://download1.rpmfusion.org/free/fedora/rpmfusion-free-release-$(rpm -E %fedora).noarch.rpm\n\u003e ```\n\u003e Then run the installer again.\n\n#### Option 2 — Pre-built binary\n\nIf you prefer to manage dependencies yourself, download the standalone binary and run it directly.\n\n**Step 1 — Install FFmpeg**\n\n| Distro | Command |\n|---|---|\n| **Arch / CachyOS / Manjaro** | `sudo pacman -S ffmpeg` |\n| **Ubuntu / Debian** | `sudo apt install ffmpeg` |\n| **Fedora** | See Fedora note above |\n| **openSUSE** | `sudo zypper install ffmpeg` |\n\n**Step 2 — Install Whisper**\n\n```bash\npip install -U openai-whisper\n```\n\n\u003e On Arch, Ubuntu 22.04+, and other distros with an externally managed Python environment, add `--break-system-packages` if pip refuses.\n\nVerify it is working:\n```bash\nwhisper --help\n```\n\n**Step 3 — Download and run WhisperDrop**\n\n1. Go to the [Releases page](https://github.com/mgalde/WhisperDrop/releases/latest)\n2. Download **WhisperDrop-vX.X.X-linux-x86_64**\n3. Make it executable and run:\n   ```bash\n   chmod +x WhisperDrop-*-linux-x86_64\n   ./WhisperDrop-*-linux-x86_64\n   ```\n\nThe binary links against a small number of standard libraries present on any GTK-based desktop:\n\n| Library | Install if missing |\n|---|---|\n| GTK4 | `sudo pacman -S gtk4` / `sudo apt install libgtk-4-1` |\n| libsoup3 | `sudo pacman -S libsoup3` / `sudo apt install libsoup-3.0-0` |\n| json-glib | `sudo pacman -S json-glib` / `sudo apt install libjson-glib-1.0-0` |\n\nOn any GNOME or KDE Plasma desktop these are already present.\n\n#### Option 3 — Build from source\n\n**1. Install build dependencies**\n\n| Distro | Command |\n|---|---|\n| **Arch / CachyOS / Manjaro** | `sudo pacman -S gtk4 libsoup3 json-glib meson ninja gcc` |\n| **Ubuntu / Debian** | `sudo apt install libgtk-4-dev libsoup-3.0-dev libjson-glib-dev meson ninja-build gcc` |\n| **Fedora** | `sudo dnf install gtk4-devel libsoup3-devel json-glib-devel meson ninja-build gcc` |\n| **openSUSE** | `sudo zypper install gtk4-devel libsoup-devel libjson-glib-devel meson ninja gcc` |\n\n**2. Clone and build**\n\n```bash\ngit clone https://github.com/mgalde/WhisperDrop.git\ncd WhisperDrop\nmeson setup build\nninja -C build\n```\n\nThis produces three executables in `build/`:\n- `WhisperDrop` — the main application\n- `installer/whisperdrop-installer` — graphical installer\n- `installer/whisperdrop-uninstaller` — graphical uninstaller\n\n**3. Run**\n\n```bash\n./build/WhisperDrop\n```\n\n---\n\n### Windows\n\n\u003e **Pre-built binaries** are available on the [Releases page](https://github.com/mgalde/WhisperDrop/releases/latest).\n\u003e\n\u003e | Download | When to use |\n\u003e |---|---|\n\u003e | **WhisperDrop-Installer-vX.X.X-windows-x86_64.exe** | Recommended — installs Whisper and adds a Start Menu entry |\n\u003e | **WhisperDrop-vX.X.X-windows-x86_64-bundle.zip** | Portable — extract anywhere, all DLLs included, no install needed |\n\u003e | **WhisperDrop-vX.X.X-windows-x86_64.exe** | For users who already have MSYS2/MinGW64 on their PATH |\n\n**Before running the installer, install these prerequisites:**\n\n**1. Install Python**\n\nDownload from [python.org](https://www.python.org/downloads/). During installation, check **\"Add Python to PATH\"**.\n\n**2. Install FFmpeg**\n\nUsing winget (Windows 10 20H2+):\n```powershell\nwinget install Gyan.FFmpeg\n```\nOr download from [ffmpeg.org](https://ffmpeg.org/download.html) and add the `bin` folder to your PATH.\n\n**3. Run the installer**\n\nThe installer will check that Python and FFmpeg are present, install the Whisper transcription engine via pip, copy WhisperDrop to `%LOCALAPPDATA%\\WhisperDrop\\`, and add it to your Start Menu.\n\n**Build from source (MSYS2)**\n\n```bash\n# In an MSYS2 MinGW-w64 shell:\npacman -S mingw-w64-x86_64-gtk4 mingw-w64-x86_64-libsoup3 \\\n          mingw-w64-x86_64-json-glib mingw-w64-x86_64-meson \\\n          mingw-w64-x86_64-ninja mingw-w64-x86_64-gcc\n\ngit clone https://github.com/mgalde/WhisperDrop.git\ncd WhisperDrop\nmeson setup build\nninja -C build\n```\n\n\u003e Requires GLib ≥ 2.74. The self-update feature opens the GitHub releases page on Windows rather than replacing the running binary.\n\n---\n\n### macOS\n\n\u003e **Pre-built binaries** are available on the [Releases page](https://github.com/mgalde/WhisperDrop/releases/latest).\n\u003e Download **WhisperDrop-vX.X.X-macos-x86_64**, make it executable, and run it.\n\n**Before running, install dependencies:**\n\n**1. Install Homebrew** (if not already installed)\n\n```bash\n/bin/bash -c \"$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)\"\n```\n\n**2. Install FFmpeg and Whisper**\n\n```bash\nbrew install ffmpeg\npip install -U openai-whisper\n```\n\n**Build from source (Homebrew)**\n\n```bash\nbrew install gtk4 libsoup json-glib meson ninja\n\ngit clone https://github.com/mgalde/WhisperDrop.git\ncd WhisperDrop\nmeson setup build\nninja -C build\n./build/WhisperDrop\n```\n\n\u003e macOS ships a bare binary only — no graphical installer. The binary can be placed anywhere and run directly.\n\n---\n\n## Using WhisperDrop\n\n### First launch\n\nOn first use, Whisper will download the model weights for whichever model you selected. This is a one-time download per model:\n\n| Model | Download size |\n|---|---|\n| `tiny` / `base` | ~75–150 MB |\n| `small` | ~480 MB |\n| `medium` | ~1.5 GB |\n| `turbo` | ~1.6 GB |\n| `large-v3` | ~3.1 GB |\n\nWhisperDrop must be connected to the internet for this step. After the model is cached, it works fully offline.\n\n### Step by step\n\n1. Launch WhisperDrop from your Applications menu or by running the binary\n2. Drag audio or video files into the drop zone, or click **Add Files…**\n3. Pick a **Model** — `turbo` is the default and a good balance of speed and accuracy\n4. Pick an **Output format** — see the table below\n5. Choose where to save — **Save next to input file** is the simplest option\n6. Click **Start**\n7. Watch the log for progress; click **Open Output Folder** when done\n\n### Model guide\n\n| Model | Speed | Accuracy | RAM needed | Best for |\n|---|---|---|---|---|\n| `tiny` | Fastest | Basic | ~1 GB | Quick drafts, clear speech |\n| `base` | Fast | Decent | ~1 GB | Casual use |\n| `small` | Moderate | Good | ~2 GB | Most everyday audio |\n| `medium` | Slower | Better | ~5 GB | Accents, noisy audio |\n| `turbo` | Fast | Very good | ~6 GB | Best speed/quality balance |\n| `large-v3` | Slowest | Best | ~10 GB | Maximum accuracy |\n\n### Output formats\n\n| Format | Extension | Use it for |\n|---|---|---|\n| Plain text | `.txt` | Reading, copying into documents |\n| SRT subtitles | `.srt` | Adding subtitles in video editors (Premiere, DaVinci, etc.) |\n| VTT subtitles | `.vtt` | Web video subtitles (HTML `\u003ctrack\u003e`) |\n| Tab-separated | `.tsv` | Importing timestamps into spreadsheets |\n| JSON | `.json` | Processing transcripts programmatically |\n| All | — | Produces every format at once |\n\n---\n\n## Troubleshooting\n\n**\"whisper: command not found\" after clicking Start**\nWhisper is not on your PATH. Install it with `pip install -U openai-whisper` and make sure `~/.local/bin` is in your PATH. You can verify with `whisper --help` in a terminal.\n\n**\"ffmpeg: command not found\" in the log**\nFFmpeg is not installed. See the installation steps for your distro above.\n\n**Transcription is very slow**\nThis is normal for larger models on CPU. Consider switching to `tiny` or `base` for faster results, or `turbo` if you have enough RAM. GPU acceleration is not currently supported through the WhisperDrop UI.\n\n**The application won't start after installing the binary**\nThe binary requires GTK4, libsoup3, and json-glib. See the library table under Option 2 above and install any that are missing.\n\n**No Applications menu entry after running the installer**\nLog out and back in, or run `update-desktop-database ~/.local/share/applications` in a terminal. Some desktop environments need a restart to pick up new entries.\n\n**The installer fails to install a system package**\nThe installer uses `pkexec` to elevate privileges. If your system does not have a polkit agent running (common in minimal or tiling-WM setups), the password prompt will not appear. In that case, install the missing packages manually and re-run the installer, or use Option 2.\n\n---\n\n## Checking for updates\n\nGo to **Help → Check for Updates** in the menu bar. If a newer version is available on GitHub, WhisperDrop will offer to download and replace itself automatically.\n\n---\n\n## Requirements summary\n\n| Requirement | Purpose | Linux | Windows | macOS |\n|---|---|---|---|---|\n| FFmpeg | Audio decoding | Required | Required | Required |\n| openai-whisper | Transcription engine | Required | Required | Required |\n| Python | Needed to run Whisper | Usually present | Required | Usually present |\n| GTK4 | UI framework | Required | Bundled (MSYS2) | Required (Homebrew) |\n| libsoup3 | HTTPS (update check) | Required | Bundled | Required (Homebrew) |\n| json-glib | JSON parsing (update check) | Required | Bundled | Required (Homebrew) |\n| Meson + Ninja + GCC | Build toolchain | Source builds only | Source builds only | Source builds only |\n\n---\n\n## License\n\nMIT License — see [LICENSE](LICENSE) for details.\n\nIf you use WhisperDrop and find it useful, feel free to reach out at **WhisperDrop@saguarosec.com** — we'd love to hear from you.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmgalde%2Fwhisperdrop","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmgalde%2Fwhisperdrop","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmgalde%2Fwhisperdrop/lists"}