Recording Laptop Setup
The ingest agent runs on the recording laptop, transcribes audio on-device with faster-whisper, and streams finalized captions to the server. Audio never leaves the machine — only text is sent.
cd dot-pulse/agent
# 1. Create & activate virtual environment
python -m venv .venv
.venv\Scripts\activate
# 2. Install dependencies (launcher + ASR + GUI)
pip install -r requirements_launcher.txt
echo Done! Run: python launcher.pyNavigate to the agent folder
Open a terminal and navigate to the agent/ subfolder of the dot-pulse project.
cd dot-pulse/agentCreate virtual environment & install dependencies
python -m venv .venv
.venv\Scripts\activate
pip install -r requirements_launcher.txtrequirements_launcher.txt includes the ASR engine, GUI framework, audio libraries, and PyInstaller. Only needed once — on later runs just activate the venv.
requirements.txt instead — it skips customtkinter and pyinstaller for a lighter install.Run the desktop launcher
Make sure the venv is active, then:
python launcher.pyThe launcher opens with three tabs: Settings, Recording, and Setup Guide (this page in desktop form). Poppins font loads automatically.
Configure server URL and token (Settings tab)
In the Settings tab, enter:
Server URLhttps://pulse.dtsmanagement.siteThe dot-pulse server addressIngest tokenask the organiserShared secret — must match server INGEST_TOKENModelsmallWhisper model size; small is the best speed/accuracy balanceDeviceauto-detectedLeave blank to use the system default micChoose audio source and start recording (Recording tab)
Switch to the Recording tab.
After clicking Start, captions appear at https://pulse.dtsmanagement.site/live as soon as the first utterance is finalised.
Register panelists for hotkey speaker switching
When multiple speakers share one mic, add their names so you can tag who is speaking with a number key.
In the Settings tab, enter comma-separated names in Speakers (e.g. Alice,Bob,Carol,David). On the Recording tab, press 1–4 to switch the active speaker before they start talking.
Dry run — test without audio
Use the built-in simulator to exercise the full pipeline without a microphone. Useful for rehearsals and verifying the server connection.
First, in the moderator panel, set panelists to Alice, Bob, Carol, David and click Start Panel Mode. Then:
python simulate_panel.py --fastWatch /live update with captions and the moderator panel fill with AI-generated key points and follow-up question hints.
Build the pre-compiled executable
Creates dist/DotPulseLauncher.exe— a single portable file that includes Python, faster-whisper, the GUI, and the Poppins fonts. Hand this to event operators who don't have Python installed.
cd dot-pulse/agent
.venv\Scripts\activate
build.bat
# Output: dist\DotPulseLauncher.exebuild.bat --debug to get a version with a visible console window — useful for diagnosing audio device issues on the event laptop.All environment variables
Set in agent/.env or injected via --fetch-config. The launcher GUI exposes the most common ones in its Settings tab.