Skip to content

v0.3.0

Choose a tag to compare

@achetronic achetronic released this 23 Apr 22:04
· 11 commits to master since this release
52c7b93

Highlights

Support for non-WAV audio formats via an optional ffmpeg fallback. You can now upload MP3, OGG, WebM, FLAC, M4A, AAC, Opus and anything else ffmpeg can decode. WAV still works with zero extra dependencies.

What's new

  • Automatic audio conversion. Non-WAV uploads are transcoded to 16 kHz mono WAV on the fly before transcription.
  • Content-based detection. Format is detected from the file's magic bytes, so uploads without a file extension still work.
  • Graceful when ffmpeg is missing. The server boots normally, logs a warning, and non-WAV uploads return a clear 400 invalid_request_error instead of crashing.
  • Concurrency-safe. Each conversion uses unique temp files, so it plays nicely with the -workers pool.

New CLI flags

Flag Default Description
-ffmpeg true Enable ffmpeg fallback for non-WAV audio
-ffmpeg-path (empty → PATH) Absolute path to the ffmpeg binary
-ffmpeg-timeout 60s Max wall-clock time per conversion

Docker

The official image now ships with ffmpeg preinstalled, so non-WAV uploads work out of the box.

Supported formats

  • Native (no ffmpeg): WAV (PCM 8/16/24/32-bit, float32, mono/stereo, any sample rate).
  • Via ffmpeg: MP3, OGG, WebM, FLAC, M4A, AAC, Opus, WMA, AIFF, AMR, and audio tracks from video containers (MP4, MKV, MOV, ...).

Upgrade notes

  • Fully backwards compatible. WAV clients see no change.
  • If you run outside Docker and want non-WAV support, install ffmpeg on the host.
  • To keep the old WAV-only behavior, start with -ffmpeg=false.

Contributors

@achetronic @unmotivatedgene