FS#9273 - Changing sapi_voice.pl To make japanese.voice sound better with specific SAPI
|
DetailsI would like to change voice strings to make them sound better with a specific SAPI voice.
I don't intend to change string in *.lang directly. It should be done in voice.pl dinamically while building voice, shouldn't it? |
This task depends upon
A knowledge is necessary to answer this qustion.
We can say that Hiragana and katakana are almost phonogramic in almost cases.
But They aren't phonogramic in case of prolonged sound like roman vowel with macron and this rule is not a perfect.
I won't explain the rule here because it's very difficult except for Japanese native speaker.
Beside, the accent of many words may be broken by using Hiraga(or Katakana).
What voice-string is misread by Sapi?
For now, I talk only about Sapi LH Kenji and LH Naoko bundled office XP or 2003 localized for Japan.
(It's just aside that Kenji is common male name like Jack and Naoko is common female name like Jane.)
They misread these voice-strings.
A.voice-strings in japanese.lang: B.normal spell in hiragana: C.how should be pronounced (writen in Hiragana):
D.how they pronounce:
E:What word should be given to sapi, for letting LH Kenji(or Naoko) to pronounce words correctly
(i.e. if voice.pl replace A to E before give voice-string to sapi_voice.vbs,
sapi_voice.vbs makes sound better.)
A: B: C: D: E
"大文字":"おおもじ":"おーもじ":"だいもんじ":"おー文字"
"背景色":"はいけいしょく": "はいけーしょく":"はいけーいろ":"背景蜀"
"文字色":"もじしょく":"もじしょく":"もじしょく":"文字蜀"
It seems kind of unsolicitously for me that distinguish by "unknown" vendor, to stretch the point a bit.
How about to distinguish by anything except vendor attibute.
For example, can voice.pl disinguish by existance of option which are "/voice:LH Kenji" (or "/voice:LH Naoko").
I 'm not familar with perl and policy of rockbox source, so that my opinion might be unconsidered.
For now, I think it's okay to use the "(unknown)" vendor.
Please run this script: http://www.rockbox.org/twiki/pub/Main/VoiceBuilding/ListVoices.vbs in a console window (cscript ListVoices.vbs) and post the output somewhere (the lines mentioning the problematic L&H voices are sufficient).
I runed this script and redirected output to this attached file.(i.e. c:\>cscript ListVoices.vbs>result_from_ListVoices_vbs.txt)
Does this work as intended?
Vendor of "ドキュメントトーカ" are "Create System Development Co and Ltd."
Jonas, Thank you very much! I think it might work well but can't test it at the moment. I'll confirm the work of current sapi_voice.vbs in two days.
Thank you very much, MoonWolf. Ok, The Vendor attribute of product "ドキュメントトーカ" is "Create System Development Co, Ltd." isn't it.
Then, Could I ask whether your characters (of ドキュメントトーカ) pronouce "voice-strings of current japanese.lang" correctly ? (id est. Don't the sapi of the vendor misread anywords?)
BTW, I've convert YOUR result.txt to other one encoded UTF-8 and upload it just in case.(Because it was encoded in shif-jis because of my insufficient explanation for you.)
In Japanese( for Moon Wolf)
協力ありがとうございます。ドキュメントトーカのVendor Attributeは、"Create System Development Co, Ltd."ということですね。
それでドキュメントトーカのキャラクターは、(最新の)Japanese.langのvoice文字列を正しく発音しているか教えていただけますか? (別の言い方をすれば、そちらのSapiが読み間違えを起こしませんか?)
なお念のため、MoonWolfがアップしてくれたresult.txtをUTF-8に変換しアップし直しました。(私の説明不足のせいで、Shift-Jisの漢字が含まれていたので)
Vendor of "ドキュメントトーカ" are "Create System Development Co and Ltd."
1. added "use utf8;" code to voice.pl to replace some multibyte voice-strings
2. updated japanese.lang like english.lang ("r18308: Ensure every phrase has a "user:" line - currently they are all empty.")
3. added "distinguishing audio format code" to sapi_voice.vbs after I distinguished each audio format by this alterd ListVoices.vbs (ListVoices.vbs's output is result.txt)