Pythonで時間がかかる処理をしていると、
気がついたらエラーで止まってしまい、時間を無駄にしてがっかりすることがあります。
処理の完了まで画面をずっと眺めているわけにもいかないので、MacのSay
コマンドを使い、処理が止まったら呼んでもらうことにしました。
% say "こんにちは"
このようにファイルの実行時に &&
や ||
をつけて、成功時と失敗時で異なるメッセージを読み上げてもらうことができます。
% python generate.py && say "無事におわりました" || say "失敗みたいですよ"
これで安心して画面から目を離すことができますね。
これだけでもいいのですが、音声の変更もできるようなので、少し調整してみます。
音声の変更
デフォルトの音声は「システム設定 > アクセシビリティ > 読み上げコンテンツ」から指定できます。
日本語だと"Hattori", "Kyoko", "O-Ren", "Otoya", "Siri”が選択できるようです。
また、say
コマンドのパラメーターを使って声を変更することもできmす。
% say -v Kyoko "こんにちは"
利用可能な音声一覧は-v '?'
で確認できますが、システム設定で選べた他の音声は表示されず、"Kyoko"のみが選択可能でした。
% say -v '?'
パラメーター
[[ ]]
で囲むと、文章の途中で音声の調整が可能です。
パラメーター | 効果 | 値 |
---|---|---|
volm | 音量 | 0.000 ~ 1.000 |
rate | 速度 | 0.000 ~ 65535.999 |
pbas | 音程 | 0.000 ~ 127.000 |
pmod | 抑揚 | 0.000 ~ 127.000 |
# 音量 volm
say "[[volm 0.1]]こんにちは、いい天気ですね [[volm 1]]こんにちは、いい天気ですね"
# 速度 Speech rate
say "[[rate 100]]こんにちは、いい天気ですね [[rate 300]]こんにちは、いい天気ですね"
# 音程 Baseline pitch
say "[[pbas 0]]こんにちは、いい天気ですね [[pbas 127]]こんにちは、いい天気ですね"
# 抑揚 Pitch modulation
say "[[pmod 0]]こんにちは、いい天気ですね [[pmod 127]]こんにちは、いい天気ですね"
複数のパラメーターをまとめて指定することもできます。
say "[[rate 160]][[pbas 70]][[pmod 100]]こんにちは、いい天気ですね"