Eu uso muito a função Text to Speech do Mac. Em Configurações> Fala> Texto em fala, também defini uma "Chave" para acesso rápido.
Como também quero que o Text to Speech leia alemão e o OS Lion ofereça vozes para outros idiomas, gostaria de ter um segundo atalho para o alemão.
Alguém sabe onde eu posso definir isso? Ou é a única maneira de alterar constantemente a voz do sistema antes que eu queira que um texto em alemão seja lido? (E redefinir a voz para Alex para textos em inglês)? E o texto em francês?
Que opções existem para esse problema geral?
macos
keyboard
text-to-speech
Joseph
fonte
fonte
Respostas:
Diga como ...
Você pode usar o
say
comando com outras vozes do OS X para obter idiomas diferentes. Use aThomas
voz para obter pronúncia francesa ouYannick
para alemão.Neste exemplo, usarei Thomas e francês, pois é o que sei, mas também
Yannick
deve funcionar para o texto em alemão.Experimente o seguinte comando em Aplicativos> Utilitários> Terminal.app :
Se isso for aceitável, você pode agrupar o
say
comando em um serviço do Automator; o que faremos a seguir.Serviço de Automator
Para criar o Serviço de Automator:
Copie e cole no AppleScript abaixo:
Para usar o serviço:
Et voilà! Outros idiomas e vozes estão disponíveis.
Essa abordagem do Automator permite manter a voz padrão do computador definida no idioma preferido. Enquanto permite que o texto selecionado seja lido na voz alternativa.
Vozes e idiomas disponíveis
Você pode listar as vozes disponíveis e os idiomas associados com o comando:
As vozes disponíveis podem mudar entre as versões do macOS. No macOS 10.13, o comando retorna:
fonte
Tipo de post antigo e talvez você já tenha encontrado uma solução. Uma maneira de simplificar isso é com o Automator.
Abra o Automator, escolha Serviço, Serviço recebe o texto selecionado, arraste a ação "Falar texto" para criar um fluxo de trabalho, selecione Voz (por exemplo: Ryan Speaking) Salvar
Repita com vozes diferentes.
(A Lista de serviços pode ser editada / limpa com o Aplicativo Scrubber e parcialmente em Preferências do sistema> Teclado> Atalhos do teclado> Serviços)
Editar: agora que você tem duas ou mais vozes no menu Serviços, pode ir para: Preferências do sistema> Teclado> Atalhos do teclado> Atalhos do aplicativo e criar um novo atalho para cada voz.
Até agora, ele funciona assim na minha máquina (OS 10.6.8): Voz padrão do sistema: Ryan (Infovox) Atalho selecionado em Pref de fala para Control + S. Isso inicia e pára o texto em inglês.
A voz alemã que eu designei Control + Y (voz de Yannick do Lion OS). Control + Y inicia a voz em alemão para o texto selecionado em alemão; que pode ser interrompido clicando duas vezes no atalho inicial / inicial principal, aqui Control + S + S. A razão para duas vezes é porque pressioná-lo uma vez inicia a voz em inglês sobre a voz em alemão. Foi o melhor que pude chegar até agora. Verifique se os atalhos não entram em conflito com outros atalhos. Você notará que o atalho adicional permite iniciar vários threads de voz, conversando entre si e a voz padrão do sistema, o que aumenta a atividade do processador, mas não há problema se alguém se lembrar de interromper a fala executando duas vezes o atalho para o voz padrão.
Não tenho certeza se isso funciona em todo o sistema, mas funciona nos meus navegadores, no Mail e no aplicativo BookReader que estou usando.
Edição 2: Observei que, ao ativar uma voz secundária de conversão de texto em fala através do Serviço Automator, o processo Automator Runner aumenta a atividade do processador para acima de 100%, com os ventiladores acelerando. Não tenho certeza se existe uma solução para isso.
fonte
Você também pode definir a voz do sistema como francesa.
Vá para Preferências do sistema> Ditado e fala> Texto para fala e defina a voz do sistema como,
Thomas
por exemplo.Então:
Há também uma opção para definir um atalho, para que você possa selecionar qualquer texto e pressionar o atalho para começar a falar em francês.
fonte
Eu escrevi uma ferramenta para isso, basta ir para:
https://github.com/Fredmf/polyglott
fonte
Inicie o Automator.app
Crie um novo serviço
Adicionar uma ação Falar texto
Selecione Samantha
Salve o serviço como SpeakSamantha
Configurar um atalho de teclado para o serviço
Abra Preferências do Sistema
Selecionar teclado
Selecione Atalhos
Selecione Serviços
Crie um atalho, Command + Alt + 1 para SpeakSamantha
Para usar o serviço
Abra um navegador
Selecione alguns textos em inglês
Pressione Command + Alt + 1
Para parar o discurso (método 1)
Para parar o discurso (método 2)
Clique no ícone de engrenagem giratória na barra de menus
Clique no botão
Para adicionar uma segunda voz
Repita o processo acima adicionando as seguintes pequenas alterações
Selecione uma segunda voz, por exemplo, Anna , uma voz alemã
Salve o serviço como SpeakAnna
Crie um atalho de teclado, Command + Alt + 2 para SpeakAnna
Um pequeno problema conhecido: não pressione um atalho novamente antes de terminar o discurso ou o discurso termina. Caso contrário, você receberá uma mensagem de erro como a seguinte.
fonte
O uso de um serviço personalizado com a
Speak Text
ação padrão para falar o texto selecionado com uma voz alternativa específica tem uma grande desvantagem, conforme detalhado na resposta da Mikofox :Você não pode parar facilmente a reprodução da maneira que pode com o serviço TTS embutido, simplesmente pressionando o atalho do teclado novamente.
Existem duas soluções :
Divulgação: criei os serviços pré-empacotados e a
voices
CLIEm vez disso, crie um serviço personalizado com uma
Run Shell Script
ação , na qual você usa asay
CLI , que permite implementar uma alternância de reprodução (interromper a fala se for invocada enquanto ainda estiver falando da invocação anterior)Como alternativa, crie um serviço que alterne a voz padrão sob demanda , o que permitirá que você use o serviço TTS interno com seu recurso de alternância de reprodução.
voices
CLI :Siga as instruções aqui ou use o link de download direto (permanecerá atualizado).
Implementação simples de um serviço com alternância de reprodução :
Como afirmado, isso não respeitará as taxas de fala personalizadas configuradas para a voz escolhida.
Run Shell Script
ação e cole o seguinte:fonte
Como o Mikofox mencionou, você pode criar um serviço Automator para falar texto:
Há um erro nas versões 10.8 e 10.7, em que os atalhos para os serviços do Automator nem sempre funcionam até você passar o mouse sobre o menu de serviços na barra de menus.
O WorkflowServiceRunner também pode usar mais de 100% da CPU ao falar texto.
Eu usei o FastScripts para atribuir um atalho para este script:
Outra opção é apenas executar algo parecido
pbpaste | say -v kyoko
.fonte
echo 'Guten Tag. Wie geht es?' | pbcopy && pbpaste | say -v Anna