From e100daf343d1ee00641402aeca5b631c97b96977 Mon Sep 17 00:00:00 2001 From: Solomon Peachy Date: Thu, 20 Jun 2024 16:54:51 -0400 Subject: voice: Voiced strings for INVALID_VOICE and LANGUAGE_NAME * Voice generation script will create standalone .talk clips * These talk clips will be included in the rockbox .zip file * All .voice files will be included in the rockbox .zip file * Added LANGUAGE_NAME for all languages in the nightly builds This way, any voice pack installed will give you a the langauge voiced in the browser, and if the voice file fails to load you will get a natively translated error message. Change-Id: I6b627a51746cd088d6e200666dd326ea2745f55f --- tools/buildzip.pl | 5 +++++ tools/updatelang | 10 ++++++++-- tools/voice.pl | 8 ++++++++ 3 files changed, 21 insertions(+), 2 deletions(-) (limited to 'tools') diff --git a/tools/buildzip.pl b/tools/buildzip.pl index 65aca59e13..fb26597290 100755 --- a/tools/buildzip.pl +++ b/tools/buildzip.pl @@ -658,6 +658,11 @@ sub buildzip { # Copy over the Invalid Language fallback stuff glob_copy("$ROOT/apps/lang/Invalid*.talk", "$temp_dir/langs/"); + # Copy over any generated voice/talk clips + glob_copy('Invalid*.talk', "$temp_dir/langs/"); + glob_copy('*.lng.talk', "$temp_dir/langs/"); + glob_copy('*.voice', "$temp_dir/langs/"); + # copy the .lua files glob_mkdir("$temp_dir/rocks/viewers/lua/"); glob_copy('apps/plugins/lua/*.lua', "$temp_dir/rocks/viewers/lua/"); diff --git a/tools/updatelang b/tools/updatelang index 98c5d3cb73..febfadbfe0 100755 --- a/tools/updatelang +++ b/tools/updatelang @@ -237,8 +237,14 @@ foreach (@englishorder) { foreach (@missingorder) { # print "#!! '$_' missing\n"; push(@langorder, $_); - $lang{$_} = $english{$_}; - $lang{$_}{'notes'} .= "### This phrase is missing entirely, copying from english!\n"; + if ($_ eq 'VOICE_LANG_NAME') { + $lang{$_} = $english{$_}; + $lang{$_}{'voice'}{'*'} = ""; + $lang{$_}{'notes'} .= "### This phrase is missing entirely, please fill out\n"; + } else { + $lang{$_} = $english{$_}; + $lang{$_}{'notes'} .= "### This phrase is missing entirely, copying from english!\n"; + } $lang{$_}{'new'} = 1; } undef @missingorder; diff --git a/tools/voice.pl b/tools/voice.pl index b582c96235..c62e4c164a 100755 --- a/tools/voice.pl +++ b/tools/voice.pl @@ -511,6 +511,14 @@ sub generateclips { if (defined($ENV{'POOL'})) { copy($enc, $pool_file); } + # Special cases + if ($id eq "VOICE_INVALID_VOICE_FILE") { + copy ($enc, "InvalidVoice_$language.talk"); + } + if ($id eq "VOICE_LANG_NAME") { + copy ($enc, "$language.lng.talk"); + } + unlink($wav); } $voice = ""; -- cgit v1.2.3