Audio Lab Extension
Transform audio into text and text into speech seamlessly with Lemonade🍋, all within your VS Code IDE.
Intro
Audio Lab seamlessly integrates STT and TTS models into your development workflow, eliminating the need to switch context and simplifying the whole process.
Key Features
- Seamless IDE Integration: Transcribe audio without leaving your coding environment.
- Lemonade Server Powered: Built on the powerful Lemonade server for fast, reliable transcription.
- Configurable Transcription Models: Control which Lemonade models are eligible for transcription through a settings allowlist (Whisper models are enabled by default).
- Intuitive Tree View Dashboard: Browse audio and subtitle files plus server status with ease.
- Subtitle Generation: Create SRT or VTT subtitle files from audio directly in VS Code.
- Text-to-Speech (TTS): Generate a speech audio file from text.
- Voice Cloning: Right-click an audio file and choose "Set as Voice Reference" to clone a voice with MOSS models.
MP3, WAV, OGG, M4A, FLAC, AAC, WMA, WebM, Opus, AMR, AU, AIFF
Subtitle files (SRT, VTT) are listed in the tree view next to their audio file, for reference.
Extension Settings
audio-lab.lemonadeServerUrl: URL of the running Lemonade server. Default: http://localhost:13305. Changing it via the command requires an open workspace folder, because the value is stored in workspace settings.
audio-lab.pickedSttModel: Currently selected transcription (STT) model ID. Default: null
audio-lab.transcriptionModels: Which models are eligible for transcription. This is a list of model-id substrings (case-insensitive). A model is selectable if it is transcription-capable and its ID matches an entry. Default: ["whisper"], so Whisper models are selectable while others (for example, moonshine) are filtered out. Add an ID or substring to allow more models; an empty list shows no selectable models.
audio-lab.ttsModels: Which models are eligible for TTS. Default: ["kokoro", "moss"], so kokoro-v1, MOSS-TTS-Local, MOSS-VoiceGen, OpenMOSS-TTS show under Installed Models > TTS.
audio-lab.pickedTtsModel: Currently selected TTS model ID. Default: null
audio-lab.ttsVoiceKokoro: Voice preset for Kokoro models (e.g. kokoro-v1). One of alloy, ash, ballad, cedar, coral, echo, fable, marin, nova, onyx, sage, shimmer, verse (list from Lemonade's TTSSettings.tsx). Default: "nova".
audio-lab.ttsRefVoice: Path to a reference WAV audio file for voice cloning (zero-shot). Applies to voice-cloning-capable models only (MOSS); Kokoro cannot clone voices and always uses its preset, ignoring this reference. Right-click any audio file in the Media Files tree view and select "Set as Voice Reference" to choose it. The reference file is sent to the Lemonade server with each TTS request. Clear it with the inline × on the picked TTS row in the tree view. Default: null (no reference)
audio-lab.ttsFormat: Audio format for the generated audio file (wav or mp3). Default: "wav"
audio-lab.subtitleFormat: Subtitle format to use when creating subtitles from audio. "srt" (default) is the widely supported SubRip format; "vtt" is WebVTT for web playback.
Tree View Structure
AudioLab (Activity Bar)
└─Lemonade Server Status
├─https://your-server-url [Server URL]
├─Status: ● Running [Server status indicator]
├─Installed Models (5)
│ ├─STT / Subgen (3)
│ │ ├─whisper-large-v3t [Selected - green dot]
│ │ ├─whisper-large-v3 [Selectable - click to select]
│ │ └─whisper-tiny [Selectable - click to select]
│ ├─TTS (1)
│ │ └─kokoro-v1 [Selectable - click to select]
│ └─Other (1) [Hidden by default - eye toggle on the header]
│ └─z-image-turbo [Displayed only - not STT/TTS capable]
└─Media Files
├─dir1/
│ ├─demo.mp3
│ ├─recording.wav
│ ├─recording.srt [Subtitle file]
│ └─notes.txt [Text file - right-click to generate an audio file]
├─dir2/
│ └─interview.m4a
...
Picked rows show a green dot. The picked TTS row also shows its effective voice (e.g. Voice: nova for Kokoro, Voice reference: recording.wav for MOSS) and, when a cloning-capable model has a reference set, an inline × to clear it.
Requirements
- Lemonade must be installed and running.
- STT models must be downloaded in Lemonade for transcription.
- IMO: Whisper-Large-v3-Turbo is the only one that works well.
- TTS models (Kokoro or MOSS) must be downloaded in Lemonade for speech generation.
Release Notes
0.0.5
- Add voice cloning via a reference WAV (MOSS models; right-click an audio file → "Set as Voice Reference")
- Add Kokoro voice presets (
audio-lab.ttsVoiceKokoro)
0.0.4
- Add TTS feature: generate speech via context menu
- Add grouping for treeview
0.0.3
- Show subtitle files (SRT, VTT) in the treeview
- Add inline button to toggle viewing of unrelated models
- Add Delete context-menu option
- Add Create Subtitles feature
- Fix Unicode file-name handling in transcript titles
0.0.2
- Improve treeview
- Add support for other transcription models labeled by Lemonade
- Add an Activity Bar badge
- Add the
audio-lab.transcriptionModels setting to control which models are selectable for transcription
0.0.1
- Transcribe audio using Lemonade Server
- Initial release of the extension
Enjoy!
| |