Skip to Content
Fingerprint ProtectionSpeech Synthesis Fingerprinting

Speech Synthesis Protection

The SpeechSynthesis API exposes platform identity through voice enumeration. BotBrowser controls voice lists to maintain consistent identity across sessions.


Prerequisites


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=real

When 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

ProblemSolution
Voice list shows host system voicesVerify --bot-config-speech-voices=profile is set.
Google TTS voices missing in Chrome profileEnsure --bot-config-browser-brand=chrome is active. Non-Chrome brands do not include Google voices.
Voice list emptySome headless configurations may not initialize speech synthesis. Check profile compatibility.
Voice language doesn’t match profile localeVerify --bot-config-languages and --bot-config-locale are consistent with the profile.

Next Steps


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.