[分享] [NVDA addon] WorldVoice 2.2 相容 NVDA 2019.3~2021.2, 支援語音角色變聲選擇 - 討論區

[分享] [NVDA addon] WorldVoice 2.2 相容 NVDA 2019.3~2021.2, 支援語音角色變聲選擇

文章瀏覽次數 4267 文章回覆數 112

tsengwoody

tsengwoody圖像(預設)

2020-06-14 21:32:14

From:220.135.204.66

此元件為利用 VE 語音並擴充開發 VE driver 而成的多語音元件
WorldVoice 更新 2.2 了,此版相容 NVDA 2019.3~2021.2, 支援語音角色變聲選擇
可參考 Eureka 撰寫之教學文,感謝 Eureka 用心的整理
WorldVoice v2.2
核心包(driver 2)
voice(asian-2.2)(addon)
voice(asian-2.2)(import)
voice(full-2.2)(addon)
voice(full-2.2)(import)
voice(同星光語音包)

核心包與語音包 .zip 可透過 addon 內的匯入檔案功能匯入,可見說明文件內容。

安裝 WorldVoice 並安裝重啟
點選 WorldVoice -> 檔案匯入選擇核心包(core(driver2).zip)匯入成功後會要求重啟。
* 點選 WorldVoice -> 檔案匯入選擇語音包(voice(asian-2.2).zip/voice(full-2.2).zip)匯入成功後會要求重啟。

WorldVoice

WorldVoice 是依據 VE driver 為基礎開發而成的 addon。運行於 NVDA 2019.3 以上版本。

主要包括有多國語音自動切換、各別語音參數(速度、音調、音量)設定、朗讀行為客製(數字讀法、中文空格間隔)、自訂文字地區等功能。

安裝

下載主驅動程式 WorldVoice、VE 語音包、VE 核心包。
安裝主驅動程式
匯入核心包:透過 WorldVoice -> 檔案匯入將 zip 壓縮包匯入語音元件工作區。
安裝語音包:
基本:使用兼容於 Vocalizer for NVDA 的語音包addon,官方下載點
進階:可透過各種語音包內直接複製其內的地區資料夾(ex: en, mnc, mnt)等並將其壓成 zip 壓縮包後透過 WorldVoice 介面的檔案匯入功能匯入 addon 內,如無特殊需求建議使用 addon 版本安裝。

相依性套件

除以上安裝外,為驅動 VE 核心,作業系統內需安裝 VC++ Redistributable Packages 2012的 x86 版本 (VSU_4\vcredist_x86.exe) ,如您已安裝核心包與語音包後仍無法載入 WorldVoice 合成器,請試著安裝此元件。

使用

NVDA+ctrl+S 選擇 WorldVoice 語音合成器。
NVDA 設定: 語音(NVDA+ctrl+V):語音速度、音調、音量基本設定,數字語言、數字模式、當遇到中文與中文間的空白時暫停長度、忽略在數字間的逗號、啟用 WorldVoice 設定規則來偵測文字語言進階設定。
數字讀法:分為 2 個設定選項「數字語言」與「數字模式」,數字語言設定數字朗讀時使用的語音角色、數字模式分為數值與數字兩種
當遇到中文與中文間的空白時暫停長度:設定中文間有空白時,欲停頓長度,數字愈小停頓愈短, 0 為不停頓。
忽略在數字間的逗號:選項勾選時會忽略數字中間的逗號,可讓數字位數的逗號標錯位置仍能正常朗讀數值。
啟用 WorldVoice 設定規則來偵測文字語言:當選項勾選時,會使用語音設定內的規則來偵測文字語言並切換語音朗讀。在部份情境此選項會與 NVDA 自動切換語言有相容性問題,建議兩者不要同時勾選。
WorldVoice -> 語音設定:可設定不同地區所使用的語音角色、各別語音角色速度、音調、音量、自動語音切換設定。
選擇地區後語音列表會列出該地區可用的語音角色,選擇後即完成該地區與語音角色的對應紀錄。
選擇語音角色後變聲列表會列出該語音角色可用的變聲,選擇後即完成該語音角色與變聲的對應紀錄。
當語音角色有選擇時,下方速度、音調、音量滑桿會變為該語音角色的設定值。
速度、音調、音量是依不同語音角色區分,每個語音角色有各自不同的速度數值,而非依地區區分。
保持主要語音參數與地區語音參數一致:將 NVDA 語音設定中的語音(主要語音)與 WorldVoice 語音設定中的地區對應語音(地區語音)參數(速度、音調、音量)一致,當主要語音或地區語音設定調整時,同步調整雙方的語音參數設定。
保持主要語音角色與地區語音角色一致:將 NVDA 語音設定中的語音(主要語音)角色與 WorldVoice 語音設定中的地區對應語音(地區語音)角色一致,當主要語音或地區語音設定調整時,同步調整雙方的語音角色設定。
用 unicode 編碼偵測文字語言勾選後,程式會根據讀到的字元偵測地區。
偵測語言時忽略數字、偵測語言時忽略常見標點符號勾選後,數字與標點符號會判定為預設語音的地區文字。
偵測語言時間點:文字自動偵測語言時間點在 NVDA 的符號處理前或後進行。當選擇「符號處理後」項目時,可防止與其他使用到語音模組附加元件(ex: Instant Translate)的衝突。
Unicode 設定:可定義字元的語言並依上下文或強制模式來判斷字元語言,當「用 unicode 編碼偵測文字語言」勾選後自動偵測的判斷會加入此設定檔的規則,此功能可解決 NVDA 內部的 symbol 轉換規則造成在自動切換語言下不朗讀之問題。例如在某些情形下「.」不讀取時則可試著在規則中加入「.」的符號並選擇語言與模式來使其正確讀出。
WorldVoice -> 檔案匯入:可匯入檔案,可用於匯入核心包與語音包。

更新版本日誌

v2.2

語音設定內新增變聲選項,需依序設定地區、語音、變聲選項
修政偵測語言時間點選「符號處理前」後無法再變更之問題
* 新增阿拉伯語系翻譯

v2.1

相容於 NVDA 版本 2019.3~ 2021.1
可套用 NVDA 不同組態設定
移除輸入手勢的多餘項目
速度內部數值換算百分比改非線性計算
設定選單調整將「在符號處理後偵測文字語言」更改為「偵測語言時間點」
偵測語言時間點:字元自動偵測語言時間點在 NVDA 的符號處理前或後進行。當選擇「符號處理後」項目時,可防止與其他使用到語音模組附加元件(ex: Instant Translate)的衝突
保持主要語音參數與地區語音參數一致:將 NVDA 語音設定中的語音(主要語音)與 WorldVoice 語音設定中的地區對應語音(地區語音)參數(速度、音調、音量)一致,當主要語音或地區語音設定調整時,同步調整雙方的語音參數設定
保持主要語音角色與地區語音角色一致:將 NVDA 語音設定中的語音(主要語音)角色與 WorldVoice 語音設定中的地區對應語音(地區語音)角色一致,當主要語音或地區語音設定調整時,同步調整雙方的語音角色設定

v2.0

* 相容 NVDA 2021.1

v1.7

小數點不讀修正(三數字間皆有小數點情形)
相容 NVDA 2021.1 以前的最後一版

v1.6

修正數字模式下小數點不朗讀問題
更新 VE 核心包工作目錄,未來更新時可無需重新匯入
將「使用 WorldVoice 設定規則針測語言」的開關與「自動切換語言」的開關分開,避免部份情境兩者不相容問題。
修正啟用 unicode 自動語言針測時,預設語音與 NVDA 語言地區不相同但同語系時無法切換的問題
* 修正自動切換語言無勾選時 WorldVoice 變更語音語言命令被濾掉的問題

v1.5

數字讀法分為 2 個設定選項「數字語言」與「數字模式」,將選項分為 2 維度以利選擇
忽略數字間逗點選項使數值報讀更正確
自動偵測語言功能當信任語音語言勾選時才使用不同解釋檔
語音設定中的值調整按確認才生效按取消會回到設定前的值
修正語音設定中當語音與預設語音相同時調整設定值後重啟 NVDA 後回到設定前的值
將自動語言切換設定與語音設定視窗合併
地區與語音對應加入 no-select 用來取消對應
支援快速鍵彈出語音設定與 Unicode 設定

v1.4

修正檢視報讀內容開啟時無語音
音調內部數值換算百分比改非線性計算,讓預設值為 50
修正 unicode rule 強制模式下後方文字偵測錯誤
修正初始值類型錯誤導致語音設定對話框無法顯示
* 初始語音改優先使用預設語言之語音

v1.3

加入 unicode 設定功能
修正單數字不會自動切換的問題
修正數字模式在特定場景下失效問題
移除 v1.2 的第1驅動
* 調整程式結構並預支援更多 TTS

v1.2

提供第 2 驅動核心,整體相比第 1 驅動核心順暢,無偶爾速度不一致與小爆音問題
第 2 驅動功能比照第 1 驅動包括數字模式、中文空白間隔、忽略文件中的語言資訊等選項
第 2 驅動提供各語音速度、音調、音量各別調整,但與第 1 驅動對應數值不同,亦即第 1 驅動的速度 50 與 第 2 驅動的速度 50 不會有相同的語音速度
修正數字模式在選擇各數值語音下時間與小數點無正確朗讀的問題
修正無定義字元地區資訊時不朗讀的問題
修正數字模式在選擇各數字語音下無正確使用選擇的語音的問題
* 調整數字模式與忽略文件中的語言資訊處理順序,更符合預期朗讀邏輯

v1.1

新增數字模式的選項,可選擇有安裝的語言朗讀數字並可分為數值與數字兩種。
新增忽略文件中的語言資訊的選項,此主要是避免自動切換語言勾選且原始文件就有提供語言資訊但不正確時(例如中文文字確標示英文語言)可能導致無法正確朗讀;或是在 word 數字會被標示成英文語言導致自動改用英文語音朗讀的狀況。
優化中文空白間隔,使中文物件與中文屬性間亦可停頓
加入其他中文語系的介面翻譯
略過從設定檔載入變聲功能,因目前 VE driver 底層的變聲功能無法正常使用且換語音時容易因設定值不符載入失敗導致要刪整個設定檔才能解決
合併 VE driver 3.1.2 的更新
* 其他細部優化
※最後更新時間:2021-09-18 16:45:18 From:114.34.83.41 By:tsengwoody

留言

#1

小羔羊

小羔羊圖像(預設)

2020-06-15 20:48:42

From:114.34.88.168

讚讚讚啊,好務

#2

此篇留言已被刪除。

#3

小羔羊

小羔羊圖像(預設)

2020-06-15 21:59:06

From:114.34.88.168

請問第四步和第五步為什麼我在nvda設定的語音裡沒看到?還是要從其他地方打開面板?感謝

#4

光明之子

光明之子圖像(預設)

2020-06-16 06:38:44

From:101.12.172.146

重新啟動nvda,在nvda功能表鐘就能發現multiple world-voice選單了,不過它的功能跟nvda本身的自動語言偵測一曲同工,可惜了。

#5

tsengwoody

tsengwoody圖像(預設)

2020-06-18 16:01:29

From:220.135.204.66

更新功能與說明內容

#6

阿慶

阿慶圖像

2020-06-18 17:21:26

From:211.23.21.202

剛剛發現如果把數字模式設定成中文數字,他只會單純把數字讀出來。
是否可以讓她讀「數值」呢?12345讀「一萬兩千三百四十五」。
不然包括時間他也唸成「下午 零五 二零」了。

#7

阿慶

阿慶圖像

2020-06-18 17:22:27

From:211.23.21.202

會不會改著改著,功能越來越多,最後就跟星光雙語一樣了XD

#8

tsengwoody

tsengwoody圖像(預設)

2020-06-19 18:33:07

From:220.135.204.66

我測數字模式選項調「預設」的就是讀數值了,只是以前的星光雙語是強制用第一或第二語音朗讀,這個是用預設的語音。

#9

特種兵

特種兵圖像(預設)

2020-06-20 13:10:29

From:211.23.21.202

是否能將設定選項都整合在一起會比較方便

#10

此篇留言已被刪除。

#11

cello

cello圖像(預設)

2020-06-20 18:16:39

From:219.85.178.184

好極了

#12

此篇留言已被刪除。

#13

tsengwoody

tsengwoody圖像(預設)

2020-06-21 16:08:56

From:220.135.204.66

Hello,

關於整合設定的部份
主要是 NVDA 語音設定介面比較不好客製,所以有些較複雜的功能(自動語言切換設定、語音速度設定)才會獨立出來做視窗
而沒將切換設定與速度整合是不希望動太多原先 VE driver 的內容,獨立性較高,如此如果未來 VE driver 有更新時要同步合併會比較好處理,而且其實 2 個視窗行為不太一羕,語速那個是拉滑桿就生效,但切換是要按確定才會生效

Woody

#14

江餅人jph

江餅人jph圖像(預設)

2020-06-22 10:34:14

From:1.34.216.251

我這邊測試後發現,若將數字朗讀模式選擇為預設,一般情況下,語音會以中文數值朗讀,但若是在 word 打上一串數字,就又會變為英文語音朗讀了

#15

tsengwoody

tsengwoody圖像(預設)

2020-06-26 22:09:56

From:220.135.204.66

研究了一下在 word 數字會用英文朗讀的原因,目前看來主要是 word 會自帶文字的語言地區標記, NVDA 會讀取這些資訊並傳給語音合成器。
而 VE 實做上就是會根據這些標記去切換朗讀語音,會試著開發當遇到數字強制使用特定語音朗讀的功能。
也有看了一下星光雙語的做法,不過它只需處理雙語音,所以用的方式比較不用考慮擴充性,寫法彈性較低,做法比較不適合用於需考量多語音切換的情境。