Jump to content

Recommended Posts

Hi there!

 

Here is another workflow merely for fun. It's based on a MacOS built-in voice synthesizer. See more details below and have a fun!

 

GitHub: https://github.com/vookimedlo/alfred-say-you-say-me

 

alfred-say-you-say-me

Alfred 3 workflow for saying a given text or a file content with a selected voice.

Installation

  1. Install alfred-say-you-say-me workflow.
  2. All further updates are handled automatically.

Usage

Select a UTF-8 encoded text file in finder and invoke the alfred file actions ⌃⌘\.

Alfred actions screenshot

Choose the Say... in a displayed menu and select appropriate voice.

Then, the resulting file will appear in your Desktop directory.


Alternatively, you can pass the text you want to hear to this workflow. In Alfred, type say and pass the text as an argument.

Alfred menu screenshot

Then, select a voice and your text will be spoken. Voices are sorted by their locales and previously selected voices are prioritized. Notice, that each voice in a menu contains its locale, name and a localized voice introduction.

Alfred voice menu screenshot

If you press  during a voice selection, spoken text will be saved in a file stored in your Desktop directory.


Have too many voices for a selection is pretty useless, so you can configure the language filter in a workflow configuration. Fill all required locales in language_filtervariable. Filter is case insensitive and is a regular expression. If you don't know what the regular expression is, just put there all locales divided by the pipe symbol |. See the screenshot below.

 

Alfred workflow configuration screenshot

 

Then, you will see just voices which your languages support.

 

Alfred filtered voice menu screenshot

There is another variable you could set. It's a buggy_voices_filter variable, which contains a list of buggy voices. Currently, there is a problem in the Apple Synthetization Daemon and some voices can stick it. At the moment, only the en_us - Alex voice is added there. Again, list is a regular expression.

Stuck daemon could be unstuck by typing .say-unstick in Alfred.

Alfred actions screenshot

Share this post


Link to post

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×