transcribe_audio_custom
Transcribe audio with a user-defined prompt to control output format and processing. For custom transcription instructions beyond standard tools.
Instructions
Transcribes an audio file using Gemini via OpenRouter with a user-defined custom prompt. Provides full control over how the model processes and formats the transcription. Use this when you need specific transcription instructions not covered by other tools.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| vad | No | Enable Voice Activity Detection preprocessing. Strips silence and non-speech audio before transcription using Silero VAD. Useful for recordings with long pauses or background noise. | |
| model | No | Model to use: "lite" for Gemini 3.1 Flash Lite (default, cost-efficient), "flash" for Gemini 3 Flash (more capable). Also accepts full OpenRouter model IDs. | |
| file_url | No | HTTP(S) URL where the audio file can be fetched. PREFERRED transport for remote clients — use a presigned URL from `s3-stage <path>` on the workstation. Provide this OR file_content. | |
| ssh_host | No | SSH host (and optional port, e.g. host:2222) to pull the audio file from. Provide with ssh_path. | |
| ssh_path | No | Remote file path on the SSH host. Provide with ssh_host. | |
| ssh_port | No | Optional SSH port when pulling the file. | |
| ssh_user | No | Optional SSH username when pulling the file. | |
| file_name | No | Optional name of the audio file, including the extension. Helpful when using URLs without a filename. | |
| output_dir | No | Optional directory path where the transcript will be saved as a markdown file. If provided, saves the transcript with a descriptive filename derived from the title. | |
| file_content | No | Base64-encoded audio content. AVOID for anything beyond a few seconds of audio — base64 inlining of audio is large and unreliable. Prefer file_url with `s3-stage` for local workstation files. Provide this OR file_url. | |
| custom_prompt | Yes | The custom prompt/instructions to send along with the audio. Should describe how to transcribe and format the content. The prompt should instruct the model to return JSON with at minimum a "transcript" field. |