題:
具有兩種語言的文本到語音快捷方式
Joseph
2012-03-02 19:27:39 UTC
view on stackexchange narkive permalink

我經常使用Mac的“文字轉語音”功能。在“設置”>“語音”>“文本到語音”下,我還設置了“按鍵”以快速訪問。

由於我還希望文本朗讀功能能夠閱讀德語,而OS Lion提供了其他語言的語音功能,因此我想為德語提供第二種快捷方式。

有人知道我可以在哪裡設置嗎?還是在我希望閱讀德語文本之前不斷更改系統語音的唯一方法? (然後將語音重設為Alex的英語文本)?那法語文本呢?

此一般問題有哪些選擇?

您是否嘗試過OS X內置的功能?
七 答案:
Graham Miln
2015-09-04 13:20:07 UTC
view on stackexchange narkive permalink

說成……

您可以將 say 命令與OS X的其他聲音一起使用以獲取不同的語言。使用 Thomas 語音獲取法語發音或 Yannick 德語。

在此示例中,我將使用Thomas和French,因為這是我所知道的但 Yannick 應該也適用於德語文本。

應用程序>實用程序> Terminal.app 中嘗試以下命令:

  say -v Thomas“ Bonjour。Je m'appelle Thomas。”  

如果可以接受,則可以將 say 命令包裝在自動化服務;

Automator服務

要創建Automator服務:​​

  1. 啟動 Automator.app
  2. 創建新的快速操作(以前稱為服務
  3. 添加運行AppleScript 操作
  4. 在下面的AppleScript中復制並粘貼:

     在運行{input,parameters}時執行shell腳本“ say -v Thomas” &(用引號(字符串))return inputend run  
  5. 將服務另存為說法語
  6. ol>

    Automator say service

    使用該服務:

    1. 在TextEdit或Safari中選擇文本
    2. Control kbd> +單擊以顯示上下文菜單
    3. 選擇服務>說法語
    4. ol>

      Etvoilà! 其他語言和語音可用。

      這種自動方法可讓您將計算機的默認語音設置為首選語言。

      可用的聲音和語言

      您可以使用以下命令列出可用的聲音及其相關語言:

        say -v? 

      可用的聲音可能會在macOS版本之間改變。在macOS 10.13上,該命令返回:

        Alex en_US#大多數人都可以通過我的聲音認出我。
      愛麗絲it_IT#藥膏,愛麗絲夢遊仙境。阿爾瓦sv_SE#嘿,賈格·赫特阿爾瓦。 Jagär和svenskröst.Ameliefr_CA#Bonjour,je maappelle Amelie。 Je suis une voix canadienne.Anna de_DE#大家好,Anna und ich bin eine deutsche Stimme.Carmit he_IL#שלום。 Damוראיםליכרמית,נורניתולבשפההעברית。Damayanti id_ID#Halo,娜瑪·賽塔·達馬丹蒂。 Saya berbahasa Indonesia.Daniel en_GB#您好,我叫Daniel。我是英式英語聲音。Diegoes_AR#霍拉,我是迭戈和大豆,還是埃斯帕尼奧拉。艾倫nl_BE#您好,我叫艾倫。我是比利時人,菲奧娜和蘇格蘭#您好,我叫菲奧娜。我是蘇格蘭英語的聲音。弗雷德(Fred)en_US#我肯定喜歡呆在這台高級計算機中Ioana ro_RO#Bună,măcheamăIoana。葡萄牙(Joana pt_PT#Olá) .Kanya th_TH#yaดิฉันชื่อKanyaKaren en_AU#您好,我叫Karen。我是一個澳大利亞人英語的聲音。沃拉姆薩勞拉。 Som hlas v slovenskom jazyku.Lekha hi_IN#नमस्कार,मेरानामलेखाहै。 Luca it_IT#Salve,mi chiamo Luca e sono una voce italiana.Luciana pt_BR#Olá,o meu nomeéLuciana e a minha voz通訊員與葡萄牙語(葡萄牙語) أناعربيمنالسعودية。Mariska hu_HU#Üdvözlöm! Mariska vagyok。 En vagyok a magyar hang.Mei-Jia zh_TW#您⭐,我叫美佳。我說國語。
      梅麗娜(Melina)el_GR#Γειασας,梅麗娜(Melina)。埃米爾·米琳娜(Milena ru_RU)#Здравствуйте,менязовутMilena。 Я-русскийголоссистемы.Moiraen_IE#您好,我叫Moira。我是愛爾蘭裔英語的聲音。莫妮卡es_ES#霍拉,我是llamo莫妮卡y大豆和沃茲española.Noranb_NO#嘿,請給我諾拉。 Jeg er en Norskstemme。Paulinaes_MX#霍拉,我是小提琴Paulina和soy una vozmexicana。Samanthaen_US#您好,我叫Samantha。我是美式英語聲音。Sarada_DK#嘿,傑格·希德(Seg)。 Jeg er en dansk stemme.Satu fi_EN#您好,我叫Satu。我是芬蘭語ääni.Serenaen_GB#您好,我叫Serena。我是英式英語聲音。Sin-jizh_HK#您好,我叫Sin-ji。我講廣東話。Tessaen_ZA#您好,我叫Tessa。我是一個南非英語的聲音。Thomasfr_FR#Bonjour,je m’appelle Thomas。 Je suis une voixfrançaise.Ting-Tingzh_CN#您好,我叫Ting-Ting。我講中文普通話。Tomen_US#您好,我叫Tom。我是美式英語語音。Veenazh_IN#您好,我叫Veena。我是印度裔英語的聲音。Victoriaen_US#擁有一台能與您通話的計算機不好嗎? Ik ben een Nederlandse莖。 BenTürkçebir sesim.Yuna ko_KR#안녕하세요。 은름은Yuna입니다。 uri다.Yuri ru_RU#Здравствуйте,менязовутYuri。 Я-русскийголоссистемы.Zosiapl_PL#Witaj。 Mam naimięZosia,jestemgłosemkobiecym dlajęzykapolskiego。Zuzanacs_CZ#Dobrýden,jmenuji se Zuzana。 Jsemčeskýhlas。 
根據我自己(非常主觀)對以法語為母語的人的評價,我會說聲音非常好。我剛剛加入該網站以支持您的答案!
好答案!我想它也很容易推廣到其他語言。在這種情況下,敘述者的名字是什麼?:-)
許多[其他聲音和語言](http://theworklife.com/graham-miln/2015/09/04/speaking-with-a-french-accent-os-x-say/)可供使用;請參閱“其他語言”部分。
我已經更新了答案;我相信** Service **在macOS 10.14中現在稱為** Quick Action **。
有沒有辦法選擇Siri的聲音?
@SuperSpy否,Siri的聲音無法用於一般用途。
Mikofox
2012-11-26 06:15:26 UTC
view on stackexchange narkive permalink

種類繁多的舊帖子,也許您已經找到了解決方案。簡化此操作的一種方法是使用Automator。

打開Automator,選擇“服務”,服務會接收選定的文本,將“說文本”動作拖到build worklowselect語音(例如:Ryan Speaking)以不同的語音保存

重複。

(可以使用Service Scrubber Application編輯/清除“服務列表”,部分在“系統偏好設置”下>鍵盤>鍵盤快捷方式>服務)

編輯:現在,在“服務”菜單下有兩個或多個音色,您可以轉到:系統偏好設置>鍵盤>鍵盤快捷方式>應用程序快捷方式,並為每個快捷方式創建一個新的快捷方式

到目前為止,它在我的機器(OS 10.6.8)上是這樣工作的:默認系統聲音:Ryan(Infovox)在``語音提示''中選擇Control + S的快捷方式。這將啟動和停止英文文本

我已為Control + Y(來自Lion OS的Yannick語音)分配的德語語音。Control+ Y為選定的德語文本啟動德語語音;可以通過單擊主開始/停止快捷方式兩次(此處為Control + S + S)來停止。兩次的原因是因為按下它一次會使英語聲音超過德語聲音,這是迄今為止我能做到的最好的結果。確保快捷方式不會與其他快捷方式衝突。您會注意到,另一種快捷方式使您可以啟動多個語音線程,彼此進行通話,再加上默認的系統語音,這可以加快處理器的活動,但是如果您記得通過重複執行該快捷方式來停止通話,則沒問題。默認聲音。

不確定該聲音是否在整個系統範圍內均可使用,但在我的瀏覽器,郵件和我正在使用的BookReader應用程序中均適用。

編輯2:我注意到,當通過Automator Service激活輔助文本語音轉換時,Automator Runner進程將處理器活動提高到100%以上,同時風扇加速。不確定是否有解決辦法。

您可以添加Automator工作流程的屏幕截圖嗎?使用Automator,通常比文字描述更容易理解
Arthur
2015-09-04 17:21:36 UTC
view on stackexchange narkive permalink

您還可以將系統語音設置為法語。

轉到系統偏好設置>聽寫&語音>文本轉換為語音,然後將系統語音設置為例如,Thomas

然後:

  1. 在任何應用程序中選擇任何文本
  2. Control kbd> +單擊顯示上下文菜單
  3. 選擇語音>開始講話
  4. ol>

    還有一個設置快捷方式的選項,因此您只需選擇任何文本,然後按快捷方式即可開始用法語發言。

Fred Flügge
2016-09-27 17:44:43 UTC
view on stackexchange narkive permalink

我為此編寫了一個工具,只需轉到:

https://github.com/Fredmf/polyglott

嗨,歡迎問不同。請解釋一下您的工具的功能以及操作方式。謝謝!
感謝您創建此文件。我發現此頁面上最有用的工具。
ffmaer
2018-05-29 11:44:31 UTC
view on stackexchange narkive permalink
  1. 啟動Automator.app

  2. 創建一個新的Service

  3. 添加Speak Text操作

  4. 選擇Samantha

  5. 將服務另存為SpeakSamantha

  6. ol>

    Add a Speak Text action

    設置服務的鍵盤快捷鍵

    1. 打開系統偏好設置

    2. 選擇Keyboard

    3. 選擇S快捷方式

    4. 選擇Services

    5. SpeakSamantha創建快捷方式Command + Alt + 1

    6. ol>

      Create a shortcut for SpeakSamantha

      要使用該服務

      1. 打開瀏覽器

      2. 選擇一些English文本

      3. Command + Alt + 1

      4. ol>

        停止講話(方法1)

        1. Alt + ESC
        2. ol>

          停止講話(方法2)

          1. 單擊菜單欄中的spining cog圖標

          2. 單擊

          3. ol>

            Click the spinning cog icon in the menu bar

            添加第二個聲音

            1. 重複上述過程,添加以下較小更改

            2. 選擇第二個聲音,例如德語聲音Anna

            3. 將服務另存為SpeakAnna

            4. SpeakAnna創建鍵盤快捷鍵Command + Alt + 2

            5. ol>

              一個已知的小問題:結束語音或語音結束之前,請勿再按快捷鍵。否則,您將收到類似以下的錯誤消息。

              enter image description here

mklement0
2015-07-27 21:14:09 UTC
view on stackexchange narkive permalink

使用自定義服務和標準的 Speak Text 操作以特定的替代語音說出所選文本會產生一個主要缺點,如 Mikofox的答案所述:

僅通過再次按鍵盤快捷鍵就無法像使用內置TTS服務那樣輕鬆地停止播放。

兩種解決方案

公開:我創建了預打包的服務和 voices CLI sup>

  • Build而是使用 Run Shell腳本操作的定制服務,在該服務中,您使用 say CLI 播放切換(如果在上一次調用時仍在講話時被調用,則停止講話)

    • 請參閱以下簡單有效的實現方式,但不會接受任何自定義的講話速度(每分鐘字數)您可能已經通過“系統偏好設置”為各個聲音進行了配置。
    • 一種出色的解決方案自定義語速需要更多的工作;您可以在預打包的服務 此處找到;或使用直接下載鏈接(將保持最新狀態)。
  • 或者,創建可切換默認點播語音,然後允許您使用內置的TTS服務及其播放切換功能。

    • OSX不提供編程方式來實現更改默認語音,您可以使用基於 語音 CLI構建的預打包服務
      請遵循此處或使用直接下載鏈接(將保持最新狀態)。

a的簡單實現帶有播放切換功能的服務

如上所述,這將不符合為所選語音配置的自定義語速。

  • 在Automator中創建新服務
  • 保留默認值(服務會在任何應用程序中接收文本)
  • 添加 Run Shell腳本操作並粘貼以下內容:
 #---- --- BEGIN:CUSTOMIZE#指定要與之通話的聲音。voice= Vicki#------- END:CUSTOMIZE#如果`say`正在運行,我們假定先前的調用仍在講話#並且講話應該是*已停止*。 #警告:僅當發起語音的原始應用仍在#最前面並選擇了文本時,或者巧合的是,現在不同的最前面的應用也已經選擇了#文本,這才起作用。否則,該服務將無法激活。pgrep -x說&& {pkill -x說;出口; }#閱讀文本以說出一個變量。txt = $(< / dev / stdin)#使用標準的`say` CLI說話。-v“ $ voice”“ $ txt”  
>
Lri
2012-11-26 17:13:58 UTC
view on stackexchange narkive permalink

正如Mikofox所述,您可以提供用於講話的Automator服務:​​

10.8和10.7中存在一個錯誤,其中Automator服務的快捷方式沒有在您將鼠標懸停在菜單欄上的服務菜單上之前,它始終無法工作。
在講文本時,WorkflowServiceRunner還可以使用100%以上的CPU。

我已經使用FastScripts為該腳本分配了快捷方式:

  try-如果剪貼板為空,則嘗試獲取它會導致剪貼板上出現舊錯誤,因為recordend trytry使用命令向下延遲0.05告訴應用程序“系統事件”以擊鍵“ c”將輸入設置為剪貼板嘗試將剪貼板設置為較舊的末尾嘗試使用“ Kyoko”結束輸入說完 

另一種選擇是僅運行 pbpaste |再說-v kyoko

有沒有辦法在您的工具中選擇Siri的聲音?感謝您創建切換默認語音實用程序!
這種pbpaste技術非常好!謝謝!迴聲,下午好。你好嗎?'|pbcopy && pbpaste |說-v Anna`


該問答將自動從英語翻譯而來。原始內容可在stackexchange上找到,我們感謝它分發的cc by-sa 3.0許可。
Loading...