テキストを読み上げる
スピーチシンセサイザー
iPhoneはテキストを読み上げさせることが簡単にできます。
学習内容
・スピーチシンセサイザーを使ってみる
・スピーチシンセサイザーの弱点を知る
1.Lesson2のプロジェクトを開く
Lesson2で作ったsegmentedControlのプロジェクトを使います。
開いたままの方はそのまま、閉じてしまった方は開き直してください。
Xcodeの「メニュー→File→Open Recent(最近開いたファイル)」から開けます。
2.分割画面を元に戻す
デザイン画面とプログラム画面を分割で開いていると狭くて書きにくいので、プログラム画面を大きくしてみましょう。
画面の左上にある☓ボタン(閉じるボタン)を押すと、その表示画面が消えます。
また右上にある画面追加ボタンを押せば2画面になります。
画面を切り替えて快適に使えるようにしてください。
3.ViewController.swiftを変更する
ファイル一覧の「ViewController.swift」をクリックするとプログラムが表示されます。
すでに表示されている場合はそのままです。
ViewController.swiftの上の方に「import」と書いてある部分があるので、そこに
「import AVFoundation」という1行を書き足してください。
「オーディオビジュアルの機能を使いたいので追加する」という意味です。
次に、アウトレットの上あたりに、下記の「var speak ~」を追加してください。
スピーチシンセサイザーという機能を呼び出すために「speak」という名前を付けたものです。あとで使います。
スピーチシンセサイザーとはそのままの意味で、音声合成の機能です。
最後にボタンを押したときの処理「tapHello」にスピーチ機能を呼び出す3行を書き足してください。
1行目はlabelHelloの内容を音声合成に渡す準備です。
2行名目で音声データに変換します。「language:”ja-JP”」の部分で、これは日本語ですよ、と教えています。
3行目では、スピーチシンセサイザーの「speak」という機能でしゃべらせています。
プログラム全体では下のようになります。変更点を赤線と枠で強調しました。
ViewController.swift
実行してあいさつボタンを押すと、内容に応じて声であいさつするようになります。
ただし、マナーモードにしていると音が出ません。また、音量が小さいと聞こえないので、iPhone本体の音量ボタンで調節してください。
あいさつの文言を変えればその内容に応じてしゃべります。
余裕がある方は文言を変えて再実行して、自由にしゃべらせてみてください。
iPhoneは、こういう高度な機能を簡単に使えるような仕組みがあります。
他にもたくさんの機能がありますので徐々に試していきましょう。
4.スピーチシンセサイザーの弱点
スピーチシンセサイザーの機能はすばらしいのですが、弱点があります。
あいさつの内容を下のように変えてください。
「雲取山」は東京都の最高峰で、「くもとりやま」と読みます。
これで実行して、朝のあいさつをさせてみてください。
「うんしゅやま」と読んでしまいます。
また、現在は正しく読みますが、以前は「ウエルシア」を「かみるしあ」と読んでいました。意味がわかりますか?
答え:「ウエルシア」→「上るしあ」→「かみるしあ」 なぜか「ウエ」を一度漢字にしていたようです。
年々改善しているとはいえ、スピーチシンセサイザーはたまに読みを間違えます。日本人にとって当たり前の読みも間違えることがよくあるため、試してみて読めなかった漢字はひらがなにする必要があります。