Conteúdo
[ IMPORTANTE : Parcialmente quebrado como MacOS Sonoma (14): Muitas vozes instaladas não são reconhecidas e a voz padrão não está listada com -l ]
voices é uma CLI do MacOS para alterar a voz TTS padrão (texto em fala) e para imprimir informações sobre e/ou falar de texto com várias vozes .
voices complementa o padrão say Utility por:
say simples, que suporta texto com instruções incorporadas para alterar o texto do meio da voz (por exemplo, [[voice alex]] ), supondo que você tenha instalado o PowerShell, consulte este comentário.Advertências :
A partir do MacOS 10.12 (Sierra), não há uma maneira programática documentada de alterar a voz padrão. Assim, essa concessionária utiliza os internos do sistema sem documentos, o que, infelizmente, significa que a compatibilidade futura desse recurso é incerta. Feedback bem -vindo.
Atualmente, voices suporta totalmente as vozes fornecidas pela Apple . O suporte a vozes de terceiros, como o InfoVox Ivox, é limitado a falar com elas, e os serviços MacOS documentados abaixo não funcionarão com eles .
Além disso, no MacOS 10.15, as vozes da Siri não são suportadas, devido à falta de suporte da API (consulte esta pergunta sobre o excesso de pilha).
Veja os exemplos abaixo, Informações de uso conciso mais adiante ou leia o manual.
Além disso, dois serviços macos são oferecidos:
NOTA: Se você possui Alfred com seu Power Pack, considere o Workflow Speak.awf como uma alternativa superior.
# List all active voices; add -a to list all installed ones.
voices -l
# Print information about the default voice and speak its demo text.
voices -d -k
# Print information about voice 'Alex'.
voices alex
# Make 'Alex' the new default voice, print information about it, and
# speak text that announces the change.
voices -k ' The new default voice is Alex. ' -d alex
# List languages for which at least one voice is active.
voices -L
# List active French voices.
voices -l fr
# Print information about all active voices and speak
# their respective demo text.
voices -l -k
# Print information about all active Spanish voices and speak their
# respective demo text.
voices -k -l es
# Say "hello", first with voice Alex, then with Jill, suppressing printed
# output.
voices -k " hello " -q alex jillPlataformas suportadas
Verificado para trabalhar do OS X 10.8 (Mountain Lion) até o MacOS 10.12 (Sierra).
O recurso de mudança-defasa-defasa faz uso de internos do sistema não documentado; portanto, sua compatibilidade futura é incerta. Deixe -me saber se você encontrar o recurso quebrado em uma futura versão do MacOS.
NOTA: Mesmo se você não usar o Node.js, seu gerenciador de pacotes, npm , funciona entre plataformas e for fácil de instalar; Tente curl -L http://git.io/n-install | bash
Com o Node.js instalado, instale o pacote da seguinte forma:
[sudo] npm install voices -g
Observação :
sudo depende de como você instalou o Node.js / io.js e se você mudou as permissões posteriormente; Se você receber um erro EACCES , tente novamente com sudo .-g garante a instalação global e é necessária para colocar voices no $PATH do sistema. voices .chmod +x voices .$PATH , como /usr/local/bin . Encontre informações concisas de uso abaixo; Para documentação completa, leia o manual on -line ou, uma vez instalado, execute man voices ( voices --man se instalado manualmente).
$ voices --help
Get or set or speak with the DEFAULT VOICE:
voices [<options>] [-d [<newDefaultVoice>]]
LIST INFORMATION about / speak with voices:
voices [<options>] <voice>...
List / speak with ALL VOICES, optionally FILTERED BY LANGUAGES:
voices [<options>] -l [<lang>...]
LIST LANGUAGES among voices:
voices -L [-a]
MANAGE VOICES in System Preferences:
voices -m
Shared options (synopsis forms 1-3):
-a target all installed voices (default: only active ones)
-k speak demo text with all targeted voices
-k"<text>" speak specified text
-k- speak text provided via stdin
-b output format: print voice names only
-i output format: print voice internals
-q quiet mode: no printed output
Standard options: --help, --man, --version, --home
Este serviço, que usa uma cópia incorporada do voices , é útil se você usar o texto em fala em dois ou mais idiomas e desejar alternar rapidamente a voz padrão entre várias vozes designadas ciclicamente, em combinação com o serviço de texto selecionado por fala.
Toda vez que o serviço é chamado, a próxima voz designada é feita a voz padrão e o nome localizado do idioma da nova voz é falado para confirmar a mudança (isso é configurável).
Você pode invocar o serviço do menu Services padrão de qualquer aplicativo, categoria General ou atribuir um atalho de teclado por meio de System Preferences > Keyboard > Shortcuts > Services .
Switch Default Voice.workflow na mesma pasta.Switch Default Voice.workflow e escolha Install quando solicitado - Isso colocará o pacote em ~/Library/Services/ .Done quando solicitado e prossiga com a personalização abaixo. Services > Switch Default Voice .System Preferences > Keyboard > Shortcuts , Services de categoria, role até a subcategoria General na lista à direita, selecione Switch Default Voice e clique logo dentro da borda direita do item da lista.~/.SwitchDefaultVoice-rc em seu editor de texto. Este serviço fornece uma alternativa para alternar a voz padrão: ele fala texto selecionado no aplicativo frontal com uma voz alternativa fixa, que permite que ele seja usado juntamente com o serviço de texto selecionado por falas, que sempre usa a voz padrão (consulte System Preferences > Dictation & Speech > Text to Speech ).
Normalmente, você usaria esse serviço para falar texto selecionado com uma voz que fala um idioma diferente .
Você pode invocá -lo no menu Services padrão, Text da categoria, sempre que o texto é selecionado no aplicativo frontal ou atribui -lhe um atalho de teclado por meio de System Preferences > Keyboard > Shortcuts > Services ; por exemplo, ⌥` (opt-`) para paralelo ao atalho padrão para o serviço interno, ⌥⎋ (opt-oc).
Invocar o serviço novamente enquanto o texto de uma invocação anterior ainda está sendo falado, aborta falando.
Advertência : isso só funciona se o texto - algum texto - é selecionado no AppliCiation Activate no momento em que o serviço é chamado novamente.
Se desejar, você pode duplicar o serviço para poder falar com uma das múltiplas vozes alternativas:
Depois de instalado, duplique ~/Library/Services/Speak With Specific Voice.workflow no Finder, dê um nome significativo e personalize a duplicata conforme descrito abaixo.
Speak With Specific Voice.workflow na mesma pasta.Speak With Specific Voice.workflow e escolha Install quando solicitado - isso colocará o pacote em ~/Library/Services/ .Open in Automator quando solicitado e prossiga com a personalização abaixo. # ------- BEGIN: CUSTOMIZE e # ------- END: CUSTOMIZE .System Preferences > Keyboard > Shortcuts , Services de Categoria, Role até a Subcategoria General na lista à direita, selecione Speak With Specific Voice.workflow e clique logo na borda direita do item da lista.~/Library/Services/Speak With Specific Voice.workflow no automator.~/Library , ative o Finder, mantenha pressionado a tecla Opção ao selecionar o menu Go e selecione Library ; A partir daí, navegue para Services da subpasta e o pacote aberto Speak With Specific Voice.workflow .Copyright (c) 2015-2018 Michael Klement [email protected] (http://same2u.net), liberado sob a licença do MIT.
Este projeto depende com gratidão dos seguintes componentes de código aberto, de acordo com os termos de suas respectivas licenças.
As dependências do NPM abaixo têm sufixos opcionais que denotam o tipo de dependência; A ausência de um sufixo denota uma dependência de tempo de execução necessária: (D) denota uma dependência somente em tempo de desenvolvimento , (O) uma dependência opcional e (P) uma dependência de colegas .
A versão em conformidade com o versão semântica (Semver).
v0.3.4 (2018-03-21):
v0.3.3 (2018-03-08):
awk , sejam chamados, para impedir que comportamentos inesperados decorrem de versões instaladas pelo usuário em/usr/local/bin sendo chamadas.v0.3.2 (2017-01-03):
voices -m agora funciona no MacOS Sierra.v0.3.1 (2015-11-03):
v0.3.0 (2015-10-27):
-i para relatar a voz interna agora relata um BundleID variável extra como o último item, ou seja, o ID do pacote da voz.v0.2.3 (2015-09-20):
voices agora tem uma página de homem (se instalada manualmente, use voices --man ); voices -h agora apenas imprime informações de uso conciso.v0.2.2 (2015-09-15):
v0.2.1 (2015-07-30):
v0.2.0 (2015-07-29):
voices agora homenageia taxas de fala personalizadas quando solicitado para falar com a opção -kSwitch Default Voice.workflow agora é baseado em arquivo de configuração e suporta mais de 2 vozes para a comutação cíclica; O texto de confirmação padrão falado sobre a comutação agora é o nome localizado do idioma da nova voz.Speak With Specific Voice.workflow permite falar texto selecionado com uma voz alternativa fixa.v0.1.9 (2015-07-28):
v0.1.8 (2015-07-28):
v0.1.7 (2015-07-28):
-k própria da voices não honre taxas de fala personalizada devido a uma limitação na utilidade say .v0.1.6 (2015-07-28):
v0.1.5 (2015-07-27):
v0.1.4 (2015-07-27):
v0.1.3 (2015-07-06):
--version simplificada.v0.1.2 (2015-07-01):
v0.1.1 (2015-06-30):
v0.1.0 (2015-06-29):