Engines and models
About half of Dogubako’s tools are native and need nothing else. The rest call a mature open-source program (an engine) or use a small local machine-learning model. Everything else keeps working without them.
Who provides the engines
Section titled “Who provides the engines”| You run | Engines come from |
|---|---|
| The macOS app | The app itself: built in or downloaded on demand, at pinned versions |
| The Docker image | The image: every engine is baked in from a pinned Debian snapshot |
| The CLI, a native server, or a development build | Your system: install what you need (below) |
In the macOS app
Section titled “In the macOS app”The app manages its own engines, so there is nothing to install:
| Tier | Engines | Where |
|---|---|---|
| Built in | FFmpeg and FFprobe, qpdf, Poppler, ExifTool, 7-Zip | Inside Dogubako.app (36 MB of the download) |
| On demand | ImageMagick (9 MB), Tesseract (10 MB), Ghostscript (20 MB), Real-ESRGAN (51 MB), Pandoc (63 MB), whisper.cpp (~3 MB) | Downloaded into ~/Library/Application Support/Dogubako/engines the first time you need one |
| System | LibreOffice, Piper, rembg | Not managed yet. Install them yourself and the app finds them |
When a tool needs an on-demand engine you don’t have yet, its notice (and Settings → Dependencies) shows a Download button with the size. Downloads are checked against a pinned SHA-256 before they’re unpacked, and nothing is installed system-wide.
Every managed engine is pinned to an exact version, and the app uses only its
own copies of them, never one from your PATH or Homebrew, so what runs is
what was tested. An app update that bumps an engine downloads the new version
when it’s next needed and deletes the old one. Each engine folder carries the
license texts of everything in it.
To test a different build of a managed engine, set DOGUBAKO_ENGINES=prefer
(use the app’s copies first, then the system) or DOGUBAKO_ENGINES=system
(ignore the app’s copies), or point at one binary with
DOGUBAKO_<ID>_PATH.
Checking what you have
Section titled “Checking what you have”- In the app: Settings → Dependencies lists every engine with its status (Built in, Downloaded, Not downloaded, Found or Missing), its version, and either a Download button or the install command for your system.
- On the command line:
dogubako deps. - On a server:
GET /api/v1/deps.
Detection happens the first time it is needed and is then cached. After you
install something, click the refresh button on the Dependencies page or
restart the app (POST /api/v1/deps/refresh on a server).
A tool whose engine is missing is never hidden. It shows a notice with the
download button or install command, and running it returns a
missing_dependency error that names the engine.
Engines
Section titled “Engines”The install commands below are for the CLI and native servers. The macOS app and the Docker image don’t need them.
| Engine | Used for | Install |
|---|---|---|
FFmpegffmpegLGPL-2.1+ / GPL-2.0+ depending on build | Video and audio conversion, filtering and encoding 54 tools require it | macOS ffmpegDebian/Ubuntu ffmpegFedora ffmpeg-freeArch ffmpegWindows Gyan.FFmpeg |
FFprobeffprobeLGPL-2.1+ / GPL-2.0+ depending on build | Media stream and metadata inspection 53 tools require it | macOS ffmpegDebian/Ubuntu ffmpegFedora ffmpeg-freeArch ffmpegWindows Gyan.FFmpeg |
ImageMagickimagemagickImageMagick License (Apache-2.0 style) | Extended image formats (HEIC, PSD, ...) and advanced image operations 1 tool requires it | macOS imagemagickDebian/Ubuntu imagemagickFedora ImageMagickArch imagemagickWindows ImageMagick.ImageMagick |
libvipsvipsLGPL-2.1+ | Fast, low-memory processing of very large images Optional | macOS vipsDebian/Ubuntu libvips-toolsFedora vips-toolsArch libvips |
ExifToolexiftoolArtistic-1.0 / GPL-1.0+ (Perl terms) | Read and write metadata for images, video, audio and documents Optional | macOS exiftoolDebian/Ubuntu libimage-exiftool-perlFedora perl-Image-ExifToolArch perl-image-exiftoolWindows OliverBetz.ExifTool |
qpdfqpdfApache-2.0 | PDF merging, splitting, rotation, encryption and repair 19 tools require it | macOS qpdfDebian/Ubuntu qpdfFedora qpdfArch qpdfWindows QPDF.QPDF |
Poppler utilitiespopplerGPL-2.0+ | PDF text extraction, rendering and image extraction 6 tools require it | macOS popplerDebian/Ubuntu poppler-utilsFedora poppler-utilsArch popplerWindows oschwartz10612.Poppler |
GhostscriptghostscriptAGPL-3.0 | PDF compression and PostScript processing 1 tool requires it | macOS ghostscriptDebian/Ubuntu ghostscriptFedora ghostscriptArch ghostscriptWindows ArtifexSoftware.GhostScript |
Tesseract OCRtesseractApache-2.0 | Optical character recognition for images and scanned PDFs 2 tools require it | macOS tesseractDebian/Ubuntu tesseract-ocrFedora tesseractArch tesseractWindows UB-Mannheim.TesseractOCR |
whisper.cppwhisperMIT | Offline speech recognition 3 tools require it | macOS whisper-cppArch whisper.cpp |
Piper TTSpiperMIT (engine); voices have individual licenses | Offline neural text-to-speech 1 tool requires it | See the project site |
rembgrembgMIT (models: Apache-2.0 / various) | Background removal with local U²-Net models 1 tool requires it | See the project site |
Real-ESRGAN (ncnn)realesrganBSD-3-Clause | Local AI image upscaling 1 tool requires it | See the project site |
LibreOfficelibreofficeMPL-2.0 | Office document conversion (DOCX, ODT, XLSX, PPTX → PDF, ...) 2 tools require it | macOS --cask libreofficeDebian/Ubuntu libreoffice-coreFedora libreoffice-coreArch libreoffice-freshWindows TheDocumentFoundation.LibreOffice |
PandocpandocGPL-2.0+ | Markup document conversion (Markdown, DOCX, HTML, EPUB, ...) 2 tools require it | macOS pandocDebian/Ubuntu pandocFedora pandocArch pandocWindows JohnMacFarlane.Pandoc |
7-Zip7zipLGPL-2.1+ (unRAR restriction applies to RAR code) | 7z / RAR archive extraction and creation Optional | macOS sevenzipDebian/Ubuntu 7zipFedora p7zip-pluginsArch 7zipWindows 7zip.7zip |
BubblewrapbwrapLGPL-2.0+ | Optional sandbox for external programs (Linux) Optional | Debian/Ubuntu bubblewrapFedora bubblewrapArch bubblewrap |
Engines marked optional are not required by any tool as a whole, but some
options use them. For example, View Image Metadata reads every tag with
ExifTool when it is installed and falls back to its built-in EXIF reader
otherwise, and Create Archive needs 7-Zip only for .7z archives. Choosing
such an option without the engine gives a missing_dependency error that
names it. libvips is still detected but no tool uses it any more, so the macOS app and
the Docker image leave it out. bwrap (Bubblewrap) is not used by tools at all; it sandboxes the
other engines on Linux servers (see
Security).
Pointing at a specific binary
Section titled “Pointing at a specific binary”Set DOGUBAKO_<ID>_PATH to use a binary that isn’t on your PATH, for
example:
DOGUBAKO_FFMPEG_PATH=/opt/ffmpeg-7/bin/ffmpeg dogubako video compress talk.mov$env:DOGUBAKO_7ZIP_PATH = "C:\Program Files\7-Zip\7z.exe"dogubako files archive-extract backup.7zOr put binaries in Dogubako’s bin folder (see
Desktop app), which is searched before your
PATH.
Known engine issues
Section titled “Known engine issues”- FFmpeg 9
anlmdn. The non-local-means audio denoiser crashes intermittently with FFmpeg 9 on Apple-silicon Macs.audio.denoiserefusesmethod: anlmdnon FFmpeg 9 and later with anunsupportederror and points you to the FFT method, which is not affected. - Homebrew FFmpeg is built without libvorbis, libass (the
subtitlesfilter), drawtext and animated WebP encoding. Tools that need those reportunsupportedinstead of failing obscurely. - Tesseract languages. Only the languages you install are available for
OCR. On Debian and Ubuntu, add packages such as
tesseract-ocr-deuortesseract-ocr-fra.
Models
Section titled “Models”Models are downloaded on request, never bundled, and stored in the models
folder (DOGUBAKO_MODELS_DIR overrides it). Where upstream publishes a
checksum, the download is verified against it; otherwise Dogubako records a
local SHA-256 when it first downloads the file.
dogubako models listdogubako models download whisper-basedogubako models remove whisper-baseIn the app, use Settings → Models. On a server, only admins can download or remove models.
| Model | Group | Size | Languages | License |
|---|---|---|---|---|
Whisper tinywhisper-tinyFastest, lowest accuracy (75 MiB) | Speech recognition (whisper.cpp) | 74 MiB | multilingual | MIT (OpenAI Whisper weights) |
Whisper tiny (English)whisper-tiny.enFastest English-only model (75 MiB) | Speech recognition (whisper.cpp) | 74 MiB | en | MIT (OpenAI Whisper weights) |
Whisper basewhisper-baseGood balance for everyday use (142 MiB) | Speech recognition (whisper.cpp) | 141 MiB | multilingual | MIT (OpenAI Whisper weights) |
Whisper base (English)whisper-base.enEnglish-only base model (142 MiB) | Speech recognition (whisper.cpp) | 141 MiB | en | MIT (OpenAI Whisper weights) |
Whisper smallwhisper-smallHigher accuracy, slower (466 MiB) | Speech recognition (whisper.cpp) | 465 MiB | multilingual | MIT (OpenAI Whisper weights) |
Whisper small (English)whisper-small.enEnglish-only small model (466 MiB) | Speech recognition (whisper.cpp) | 465 MiB | en | MIT (OpenAI Whisper weights) |
Whisper small + tinydiarizewhisper-small.en-tdrzEnglish model that marks speaker turns (465 MiB) | Speech recognition (whisper.cpp) | 465 MiB | en | MIT (OpenAI Whisper weights) |
Whisper large-v3 turbo (q5)whisper-large-v3-turbo-q5_0Best accuracy per MiB, quantized (547 MiB) | Speech recognition (whisper.cpp) | 547 MiB | multilingual | MIT (OpenAI Whisper weights) |
Whisper large-v3 turbowhisper-large-v3-turboHighest accuracy (1.5 GiB) | Speech recognition (whisper.cpp) | 1.5 GiB | multilingual | MIT (OpenAI Whisper weights) |
Silero VAD v5.1.2 (ggml)silero-vadNeural voice activity detection used by whisper.cpp --vad (885 KiB) | Voice activity detection | 864 KiB | any | MIT |
SeetaFace frontal face detectorseeta-faceSmall frontal face detection model used for face blurring (1.2 MiB) | Face detection | 1 MiB | — | BSD-2-Clause |
Piper voice: English (US) Lessac, mediumpiper-en_US-lessac-mediumNatural US English voice for offline text-to-speech (63 MiB) | Text to speech voices (Piper) | 60 MiB | en-US | Blizzard / CC BY-SA (see voice card) |
Piper voice: English (UK) Alan, mediumpiper-en_GB-alan-mediumBritish English voice for offline text-to-speech (63 MiB) | Text to speech voices (Piper) | 60 MiB | en-GB | CC BY-SA 4.0 (see voice card) |
Piper voice: German Thorsten, mediumpiper-de_DE-thorsten-mediumGerman voice for offline text-to-speech (63 MiB) | Text to speech voices (Piper) | 60 MiB | de-DE | CC0 (see voice card) |
Which Whisper model should you pick? whisper-base is a good default on a
laptop. whisper-small is noticeably more accurate and still practical on a
modern CPU. whisper-large-v3-turbo-q5_0 gives near-best accuracy at a
fraction of the full model’s size. The .en models are English-only and a
little more accurate for English. whisper-small.en-tdrz adds speaker-turn
detection.
Transcription also needs the whisper.cpp engine itself (whisper-cli), and
text to speech needs the piper program as well as a voice.