Skip to content

Add whisper.cpp transcription provider#45

Open
jamilahmadzai wants to merge 1 commit into
nibzard:mainfrom
jamilahmadzai:codex/whispercpp-provider
Open

Add whisper.cpp transcription provider#45
jamilahmadzai wants to merge 1 commit into
nibzard:mainfrom
jamilahmadzai:codex/whispercpp-provider

Conversation

@jamilahmadzai
Copy link
Copy Markdown

@jamilahmadzai jamilahmadzai commented May 23, 2026

Summary

  • Add a local --api whispercpp transcription provider backed by the whisper.cpp CLI.
  • Convert input video/audio to 16 kHz mono WAV before invoking the local binary, matching whisper.cpp's documented CLI workflow.
  • Document WHISPERCPP_BINARY, WHISPERCPP_MODEL_PATH, WHISPERCPP_THREADS, and WHISPERCPP_EXTRA_ARGS in the README and .env.example.
  • Add focused unittest coverage for configuration validation, CLI command construction, output cleanup, file processing, and sapat --api whispercpp routing.

Why

This gives Sapat a no-cloud transcription path for users who want to keep recordings and transcripts inside a local or Daytona workspace. It does not require API keys, does not upload audio to a provider, and keeps the existing OpenAI/Groq/Azure paths unchanged.

This is the companion implementation for the Daytona content bounty submission: daytonaio/content#246

Validation

  • .venv/bin/python -m unittest discover -s tests -v
  • .venv/bin/python -m compileall src tests
  • .venv/bin/sapat --help
  • .venv/bin/python -m pip check
  • git diff --check

No model files, private audio, secrets, or generated transcripts are committed.

Payment

Bounty claim and payout details are handled in the Daytona content PR: daytonaio/content#246

@jamilahmadzai jamilahmadzai force-pushed the codex/whispercpp-provider branch from 1929c84 to 1025ee6 Compare May 23, 2026 22:25
@jamilahmadzai
Copy link
Copy Markdown
Author

Status note after the force-push with signoff:

The three Continuous AI checks currently show Agent encountered an error, and the target URL responds with Cannot GET /api/agent-check-summary/..., so I do not have actionable feedback from those bots. Local validation is still green:

  • .venv/bin/python -m unittest discover -s tests -v
  • .venv/bin/python -m compileall src tests
  • .venv/bin/sapat --help
  • .venv/bin/python -m pip check
  • git diff --check

No secrets, private audio, generated transcripts, or model files are included.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant