speak

abstract suspend fun speak(text: String, queue: Boolean = false, volume: Int = 100, voiceId: String = VOICE_ID_UNSPECIFIED, speed: Float = VOICE_SPEED_DEFAULT, pitch: Float = VOICE_PITCH_DEFAULT, audioUsage: AndroidAudioUsage? = null)

text を読み上げる。実装は読み上げが実際に完了する(またはコルーチンのキャンセルで 打ち切られる)まで suspend すること。:core:narrator の NarratorEngine は開始音と同じ コルーチン上で完了・優先度判定・割り込みを扱う前提でこのRepositoryを呼び出すため、 即座に返ってしまうと読み上げ中に次のイベントの音声が重なって再生されてしまう。

Parameters

queue

true なら再生中の読み上げの後ろへ追加し、false なら再生中の読み上げを 打ち切って即座に読み上げる(:core:narrator の speak(queue) と同じ意味)。

voiceId

Windowsは音声名、Androidは Voice.name。空ならシステム既定、 見つからなければ日本語音声へフォールバックする。

volume

読み上げ音量(0〜100)。アプリの読み上げ音量設定に合わせる。0なら発話しない。

speed

読み上げ速度。1.0が標準、0.5〜2.0。範囲外は実装側でcoerceInする。

pitch

声の高さ。1.0が標準、0.5〜2.0。範囲外は実装側でcoerceInする。

audioUsage

Androidの音声用途。nullなら保存済み設定を使う。Android以外では無視する。