Speech Synthesis Protection
The SpeechSynthesis API exposes platform identity through voice enumeration. BotBrowser controls voice lists to maintain consistent identity across sessions.
Prerequisites
- Familiarity with Browser Fingerprinting Explained.
- BotBrowser installed with a valid profile. See Installation.
Quick Start
chromium-browser \
--bot-profile="/path/to/profile.enc"Start with this launch to establish a clean baseline before adding extra overrides.
Overview
The speech synthesis voice list varies by operating system, browser build, and installed language packs, making it a privacy-relevant surface. BotBrowser controls voice enumeration at the browser engine level to ensure consistent platform identity.
Configuration
Speech Voices Mode
Control voice list behavior with --bot-config-speech-voices:
# Use profile-defined synthetic voice list (default)
--bot-config-speech-voices=profile
# Use real system voices (no protection)
--bot-config-speech-voices=realWhen set to profile, BotBrowser returns a voice list consistent with the profile’s declared platform and browser brand. This ensures voice data aligns with all other identity surfaces.
How BotBrowser Provides Protection
BotBrowser generates a complete, platform-consistent voice list at the browser engine level. The voice list matches the profile’s declared platform and browser brand. All voice properties and ordering are profile-appropriate. No JavaScript interception is used, so voice loading follows the standard browser pattern.
Common Scenarios
- Capture a baseline result using the Quick Start setup.
- Change one relevant setting at a time and compare the new output.
- Keep your final launch command documented so future checks are reproducible.
Troubleshooting / FAQ
| Problem | Solution |
|---|---|
| Voice list shows host system voices | Verify --bot-config-speech-voices=profile is set. |
| Google TTS voices missing in Chrome profile | Ensure --bot-config-browser-brand=chrome is active. Non-Chrome brands do not include Google voices. |
| Voice list empty | Some headless configurations may not initialize speech synthesis. Check profile compatibility. |
| Voice language doesn’t match profile locale | Verify --bot-config-languages and --bot-config-locale are consistent with the profile. |
Next Steps
- Navigator Properties. Other browser API surfaces that reveal platform identity.
- Browser Fingerprinting Explained. The full fingerprinting landscape.
- CLI Flags Reference. All speech and media configuration flags.
Related documentation: Advanced Features: Complete Fingerprint Control | CLI Flags: Rendering, Noise & Media/RTC
Legal Disclaimer & Terms of Use • Responsible Use Guidelines . BotBrowser is for authorized fingerprint protection and privacy research only.