Files
SnapOtter/apps/docs/guide/supported-formats.md
T
SnapOtterandGitHub 17726ae59d docs: multi-modality rebrand, 2.0 architecture accuracy, and full OpenAPI coverage (#254)
* docs: rebrand from image-only to multi-modality across docs and metadata

SnapOtter expanded from image-only to 157 tools across 5 modalities
(image, video, audio, document/PDF, data). Update all product-level
copy, metadata, and i18n that still framed it as an image-only tool.

- README, package.json, root llms.txt: multi-modality framing, 157 tools
- OpenAPI info + tags, generated /llms.txt tagline (docs.ts)
- VitePress docs site: hero, getting-started, architecture, security,
  deployment, configuration, developer, supported-formats
- i18n: 10 product keys across all 21 locales (hero, app description,
  privacy notes, AI features, progress messages, getting-started)
- web/demo/landing meta + privacy copy, COMMUNITY_GUIDE, .env.example

Stale tool counts (53/50+/52/70+/35) corrected to 157 throughout.
Database/container deployment claims left unchanged (out of scope).

* docs: fix stale post-rebrand test assertions and README language list

- tests/e2e-docs/homepage.spec.ts: assert the current docs homepage (file toolkit, 157 tools, 5 modalities) instead of the old image-only strings
- tests/unit/api/docs-route.test.ts: sync the reproduced llms.txt tagline with docs.ts
- README.md: 21 languages with the correct list (add Swedish and Chinese Traditional, drop Czech which is not supported)

* docs: correct 2.0 architecture references (Postgres 17 + Redis 8, 3-container stack)

The docs and metadata still described the 1.x stack (SQLite, single container, p-queue). Update them to the current 2.0 reality.

- README: replace the broken single-container `docker run` quick-start with the real Docker Compose stack (app + Postgres 17 + Redis 8); fix the "no Redis, no Postgres" feature bullet
- package.json: description no longer claims a single container
- apps/docs: rewrite database.md for Postgres; configuration.md DB_PATH -> DATABASE_URL + REDIS_URL; architecture.md SQLite/p-queue/better-sqlite3 -> Postgres/BullMQ/pg and add media-engine + doc-engine; developer/security/deployment/docker-tags/getting-started/contributing compose examples now include postgres + redis; index.md + api/ai.md AI count 16 -> 19
- SECURITY.md: Drizzle (SQLite) -> (PostgreSQL)
- landing: enterprise/FeatureHighlights single-container wording; TrustSignals/ToolGrid 150+ -> 157 (dynamic); Pricing/FAQ 15 -> 19 AI tools

* docs(api): document all video, audio, document, and data tool endpoints in OpenAPI

The spec covered only image tools; the Scalar UI and the generated /llms.txt and /llms-full.txt inherited that gap. Add the 104 missing tool endpoints so the API docs match the code.

- Video: 29 endpoints (most long/async; auto-subtitles is AI)
- Audio: 17 (transcribe-audio is AI)
- Document/PDF: 36 (ocr-pdf is AI; conversions are long/async)
- Data: 10
- Image: 12 newer tools (background-replace, blur-background AI; histogram/lqip-placeholder/sprite-sheet custom responses; barcode-generate uses a JSON body)

Each schema is derived from the tool's Zod validator and executionHint (fast -> 200, long -> 202+SSE, AI adds 501 FeatureNotInstalledError, multi-file inputs as arrays), referencing the existing shared schemas. Tool path entries: 64 -> 168. Spec parses as valid YAML with no duplicate paths and only known $refs.
2026-06-16 18:04:52 +08:00

6.0 KiB

description
description
Supported file formats across all modalities - 55+ image input formats, video, audio, document, and data formats.

Supported Formats

SnapOtter processes files across five modalities: image, video, audio, document, and data. This page lists all supported formats.

Image Formats

SnapOtter supports 55+ image formats for input and 14 formats for output.

Input Formats

Web Standards (9)

Format Extensions Decoder Notes
JPEG .jpg, .jpeg Sharp (native)
PNG .png Sharp (native) APNG first-frame extracted
WebP .webp Sharp (native)
GIF .gif Sharp (native) Animated supported
AVIF .avif Sharp (native)
SVG .svg Sharp (librsvg) Sanitized for XXE/SSRF
SVGZ .svgz gunzip + Sharp Gzip bomb protection
APNG .apng Sharp (native) First frame only
JPEG XL .jxl djxl / ImageMagick Two-tier fallback

Professional (7)

Format Extensions Decoder Notes
TIFF .tiff, .tif Sharp (native) Multi-page supported
PSD .psd ImageMagick Flattened composite
EPS .eps, .epsf ImageMagick + Ghostscript 300dpi rasterization, security hardened
OpenEXR .exr ImageMagick Linear-to-sRGB conversion
Radiance HDR .hdr ImageMagick Linear-to-sRGB conversion
DPX .dpx ImageMagick Log-to-sRGB conversion
Cineon .cin ImageMagick Film/VFX format

Camera RAW (23)

Format Extensions Camera Brand Decoder
DNG .dng Adobe (universal) exiftool / ImageMagick + LibRaw
CR2 .cr2 Canon (pre-2018) exiftool / ImageMagick + LibRaw
CR3 .cr3 Canon (2018+) exiftool / ImageMagick + LibRaw
NEF .nef Nikon exiftool / ImageMagick + LibRaw
NRW .nrw Nikon (Coolpix) exiftool / ImageMagick + LibRaw
ARW .arw Sony exiftool / ImageMagick + LibRaw
ORF .orf Olympus exiftool / ImageMagick + LibRaw
RW2 .rw2 Panasonic exiftool / ImageMagick + LibRaw
RAF .raf Fujifilm exiftool / ImageMagick + LibRaw
PEF .pef Pentax/Ricoh exiftool / ImageMagick + LibRaw
3FR .3fr Hasselblad exiftool / ImageMagick + LibRaw
IIQ .iiq Phase One exiftool / ImageMagick + LibRaw
SRW .srw Samsung exiftool / ImageMagick + LibRaw
X3F .x3f Sigma exiftool / ImageMagick + LibRaw
RWL .rwl Leica exiftool / ImageMagick + LibRaw
GPR .gpr GoPro exiftool / ImageMagick + LibRaw
FFF .fff Hasselblad (legacy) exiftool / ImageMagick + LibRaw
MRW .mrw Minolta exiftool / ImageMagick + LibRaw
MEF .mef Mamiya exiftool / ImageMagick + LibRaw
KDC .kdc Kodak exiftool / ImageMagick + LibRaw
DCR .dcr Kodak exiftool / ImageMagick + LibRaw
ERF .erf Epson exiftool / ImageMagick + LibRaw
PTX .ptx Pentax (compact) exiftool / ImageMagick + LibRaw

Modern Formats (3)

Format Extensions Decoder Notes
JPEG 2000 .jp2, .j2k, .j2c, .jpc, .jpf, .jpx opj_decompress / ImageMagick Digital cinema, medical imaging
QOI .qoi Inline TypeScript codec Game dev, embedded systems
HEIC/HEIF .heic, .heif heif-convert / heif-dec iPhone photos

Legacy/System (4)

Format Extensions Decoder Notes
BMP .bmp ImageMagick
ICO .ico ImageMagick Largest layer extracted
CUR .cur ImageMagick Windows cursor (ICO variant)
TGA .tga ImageMagick Extension-only detection

Scientific and Gaming (2)

Format Extensions Decoder Notes
FITS .fits, .fit, .fts ImageMagick Astronomy (NASA standard)
DDS .dds ImageMagick Game textures (DirectX)

Interchange (6)

Format Extensions Decoder Notes
PPM .ppm Sharp (native) Color pixmap
PGM .pgm Sharp (native) Grayscale
PBM .pbm Sharp (native) 1-bit bitmap
PNM .pnm Sharp (native) Umbrella format
PAM .pam Sharp (native) Arbitrary map
PFM .pfm Sharp (native) Float map

Output Formats (14)

Format Encoder Quality Control Available In
JPEG Sharp native 1-100 All tools
PNG Sharp native Compression 0-9 All tools
WebP Sharp native 1-100 All tools
AVIF Sharp native 1-100 All tools
TIFF Sharp native 1-100 Full conversion tools
GIF Sharp native 1-100 Full conversion tools
JXL Sharp native 1-100 All tools
HEIC heif-enc CLI 1-100 Full conversion tools
HEIF heif-enc CLI 1-100 Full conversion tools
BMP ImageMagick CLI Lossless Convert tool
ICO ImageMagick CLI Lossless Convert tool
JP2 opj_compress CLI Compression ratio Convert tool
QOI Inline codec Lossless Convert tool

Video Formats

Video processing is handled by FFmpeg (static build). All common containers and codecs are supported.

Type Formats
Input MP4, MOV, WebM, MKV, AVI, M4V, MTS, M2TS, 3GP, FLV, WMV, MPG, MPEG, TS, OGV
Output MP4 (H.264/H.265), WebM (VP9), MKV, AVI, MOV, GIF, WebP

Subtitle formats supported for embedding and burning: SRT, VTT, ASS.

Audio Formats

Audio processing is also handled by FFmpeg.

Type Formats
Input MP3, WAV, FLAC, AAC, M4A, OGG, OPUS, WMA, AIFF, AMR, AC3
Output MP3, WAV, FLAC, AAC, M4A, OGG, OPUS

Document Formats

Document processing uses qpdf, LibreOffice, Ghostscript, Pandoc, and WeasyPrint.

Type Formats
Input PDF, DOCX, DOC, XLSX, XLS, PPTX, PPT, ODT, ODS, ODP, RTF, TXT, Markdown, HTML, EPUB
Output PDF, PDF/A, DOCX, HTML, EPUB, images (via PDF to Image)

Data Formats

Type Formats
Input/Output CSV, JSON, XML, YAML, ZIP, Excel (XLSX)