Revert VOX preset to the NetTTS approximation
The tuned values (pitch 0, rate 15, head size 34, lowering 50) matched the reference metrics better but sound far off the game voice, so restore the published NetTTS approximation: pitch 3, rate 17, prominences 22, head size 52, lowering 40, volume 70. Also revert the test expectations, the published default metadata, and the tuning notes in the docs; keep tools/vox_compare.py for future experiments.
This commit is contained in:
@@ -94,8 +94,8 @@ check "vox preset implies VOX parser" "1" "$(grep -c 'wH1' "$STUB_LOG")"
|
||||
# The preset writes the full audible profile to both hives.
|
||||
VESKSLOP_TTS_VOICE=keith-bell VESKSLOP_TTS_PRESET=vox run_wrapper
|
||||
check "preset writes both hives" "2" "$(grep -c 'Speakers\\{11260610' "$STUB_REG")"
|
||||
check "preset pitch (both hives)" "2" "$(grep -c '"Pitch"=dword:00000000' "$STUB_REG")"
|
||||
check "preset rate (both hives)" "2" "$(grep -c '"Speaking Rate"=dword:0000000f' "$STUB_REG")"
|
||||
check "preset pitch (both hives)" "2" "$(grep -c '"Pitch"=dword:00000003' "$STUB_REG")"
|
||||
check "preset rate (both hives)" "2" "$(grep -c '"Speaking Rate"=dword:00000011' "$STUB_REG")"
|
||||
check "preset gender and line mode" "4" "$(grep -cE '"Gender"=dword:00000002|"Line Mode"=dword:00000001' "$STUB_REG")"
|
||||
check "preset default speaker" "2" "$(grep -c '"Default Speaker"' "$STUB_REG")"
|
||||
|
||||
@@ -111,7 +111,7 @@ check "word mode with preset synthesizes every word" "3" "$(grep -c '^ARGV:' "$S
|
||||
check "word mode skips the VOX parser" "0" "$(grep -c 'wH1' "$STUB_LOG")"
|
||||
check "word mode tags every word" "3" \
|
||||
"$(sed -n 's/.*\[-t\] \[\(.*\)\] \[-o\].*/\1/p' "$STUB_LOG" | grep -c '^\\!R0.80 ')"
|
||||
check "word mode keeps the preset profile" "2" "$(grep -c '"Pitch"=dword:00000000' "$STUB_REG")"
|
||||
check "word mode keeps the preset profile" "2" "$(grep -c '"Pitch"=dword:00000003' "$STUB_REG")"
|
||||
check "word mode emits no attributes" "0" "$(attr_count)"
|
||||
|
||||
# The vox preset implies VOX when the variable is unset, but word mode still wins.
|
||||
@@ -139,7 +139,7 @@ check "stream has a gap per word break" "2" \
|
||||
|
||||
# The Half-Life voices carry their profile preset.
|
||||
VESKSLOP_TTS_VOICE=vox VESKSLOP_TTS_VOX=1 run_wrapper
|
||||
check "vox voice writes the VOX profile (both hives)" "2" "$(grep -c '"Pitch"=dword:00000000' "$STUB_REG")"
|
||||
check "vox voice writes the VOX profile (both hives)" "2" "$(grep -c '"Pitch"=dword:00000003' "$STUB_REG")"
|
||||
check "vox voice runs VOX prosody" "1" "$(grep -c 'wH1' "$STUB_LOG")"
|
||||
VESKSLOP_TTS_VOICE=hev run_wrapper
|
||||
check "hev voice writes the HEV profile (both hives)" "2" "$(grep -c '"Pitch"=dword:0000000f' "$STUB_REG")"
|
||||
|
||||
@@ -46,7 +46,7 @@ ROOT=$MICROSLOP_ROOT
|
||||
|
||||
# The Keith Bell defaults follow the active preset so the UI's "default" snap points
|
||||
# match the values the preset actually writes.
|
||||
VOX_DEFAULTS="pitch:0:rate:15:prominences:22:head_size:34:lowering:50:expression:59"
|
||||
VOX_DEFAULTS="pitch:3:rate:17:prominences:22:head_size:52:lowering:40:expression:59"
|
||||
HEV_DEFAULTS="pitch:15:rate:24:prominences:22:head_size:52:lowering:40:expression:59"
|
||||
case "${VESKSLOP_TTS_PRESET:-}" in
|
||||
vox) KB_DEFAULTS="$VOX_DEFAULTS" ;;
|
||||
@@ -243,17 +243,15 @@ if [ -n "$SPEAKER_GUID" ]; then
|
||||
P_LOWER=40
|
||||
P_EXPR=""
|
||||
|
||||
# Half-Life presets for Keith Bell (the game's announcement voice). "vox"
|
||||
# starts from the approximated Valve VOX profile published by NetTTS
|
||||
# (scripts/winetricks/nettts_flextalk_vox_profile.reg), then refines pitch,
|
||||
# rate, head size and lowering against the actual game word assets
|
||||
# (see docs/TTS-DESIGN.md). "hev" is a starting point for the HEV suit
|
||||
# voice, which has no published profile.
|
||||
# Half-Life presets for Keith Bell (the game's announcement voice).
|
||||
# "vox" is the approximated Valve VOX profile published by NetTTS
|
||||
# (scripts/winetricks/nettts_flextalk_vox_profile.reg); "hev" is a starting
|
||||
# point for the HEV suit voice, which has no published profile.
|
||||
case "$PRESET" in
|
||||
vox)
|
||||
if [ "$ENGVOICE" = "Keith Bell" ]; then
|
||||
P_PITCH=0; P_RATE=15; P_VOLUME=70
|
||||
P_PROM=22; P_HEAD=34; P_LOWER=50
|
||||
P_PITCH=3; P_RATE=17; P_VOLUME=70
|
||||
P_PROM=22; P_HEAD=52; P_LOWER=40
|
||||
fi
|
||||
;;
|
||||
hev)
|
||||
|
||||
Reference in New Issue
Block a user