audio(whisper-server): convert mp4/any input with our ffmpeg (fix stuck-queue hang)
whisper-server models (whisper0/1/2/3) relied on whisper.cpp's --convert, whose ffmpeg call deadlocks on mp4 (undrained pipe) and hangs forever, head-of-line blocking the single-threaded server so every later request queues (app reported jobs "stuck in queue"; found a --convert ffmpeg stuck 4h+). - WhisperServerManager.start(): drop the --convert flag. - add _to_wav_16k_mono(): ffmpeg via subprocess.run (drains stdout/stderr, no pipe deadlock) + 120s timeout; transcribe() converts before POST so whisper.cpp only ever receives clean 16k mono wav. Bad file fails fast. - keep_resident honored for whisper-server models (vram group membership). Verified on f595eb2a6ece after relaunch: whisper3 + mp4 -> 200 (was infinite hang); wav control + repeat mp4 return sub-second (no head-of-line stall). Co-Authored-By:Claude Opus 4.8 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01R6iugoNeEgt9PkajKrFyq4
Showing
Please
register
or
sign in
to comment