ASからsayを使うと

 古いAppleScriptの本が手放せないでいます。……と言ってもそんなに使っていないのですが、稀に必要になるAppleScriptのコーディングで困ると網羅的な情報がある(といってもかなり古い情報ですが)ので、またその本を取り出して使うというサイクルを繰り返しています。

 またしてもその本に頼っていてsayコマンドが載っているのを発見して、こんなに古くからあったのかと驚きました。コマンドとしても随分と昔からあったんですね……。

 それで思い立って今の環境の辞書を調べたら、ASからだと高低(pitch)も変更できることを『今更に』発見。でもNSSpeechSynthesizerを見ると早さ(rate)だけしか見当たりませんでした。新しいライブラリだと違うのかもしれませんが。

 

 ASでのみ操れるのかなぁと思ったら使ってみたくなてとりあえず書いたコード。

 適当な文章がなかったのでとりあえず歌の歌詞を読ませてみました。

 

    * * * * *

 

 set lyric to {"(歌詞)", "(歌詞)", "(歌詞)", ...,"(歌詞)"}

tell application "System Events"
    
    repeat with ly in lyric
        say ly using "Alex" speaking rate "210" pitch "56" modulation "5" volume "1"
        delay 2
    end repeat
    
end tell

 

   * * * * *

 

 ここにさらにXMLでデータを与えて、人を入れ替えつつ、声の調子を変えつつ……なにかの芝居の台本のようなものを読ませたら面白いかもなと思いながら今日はここまで。