Hacker News new | past | comments | ask | show | jobs | submit
Other cute `say` tricks: muck around with OSX Default Speech Voice (to a siri-ish voice) and you can invoke that from the CLI.

I hacked together a little script for demo recording like:

    START_FROM="$1"
    STARTED=0
    function transcript() {
       ID="$1"
       TO_SAY="$2"
       if [[ ...STARTED || START_FROM && ID... ]]; then
          STARTED=1
          say "$TO_SAY"
       fi
    }

    transcript "STEP001" "This is a test"
    transcript "STEP001b" "of the emergency broadcast system"
    transcript "STEP002" "This is only a test, if this was ..."
    transcript "STEP003" "...etc..."
...and then I have a hardcoded `--output` which will then change the invocation to `say -o "$ID.wav" "$TO_SAY"` and output audio files.

That way I can iterate on voiceover scripts, eg: `./demo-script "STEP002"` => `./demo-script --output`

It's really helpful for iterating on pronunciations, eg: `transcript "STEP005" "In case of Four Hundred and Four errors..."`, I can just "skip to" and iterate against that line (and subsequent ones), or "skip back" and hear it in more of a flowing context.

...even if I don't end up using the `say`-generated audio, having a transcript (and even pacing) that I can just read through with my own voice is super helpful.