在Android中,使用TextToSpeech類調整音調可以通過設置SpeechRate屬性來實現。SpeechRate是一個表示文本到語音(TTS)語速的枚舉類型,它允許你以不同的速率讀出文本。以下是如何使用TextToSpeech類調整音調的示例代碼:
import android.os.Bundle;
import android.speech.tts.TextToSpeech;
import android.speech.tts.TextToSpeech.OnInitListener;
import android.speech.tts.Voice;
import androidx.appcompat.app.AppCompatActivity;
public class MainActivity extends AppCompatActivity implements OnInitListener {
private TextToSpeech tts;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
// 初始化TextToSpeech對象
tts = new TextToSpeech(this, this);
// 設置語言
String language = "zh-CN"; // 例如,使用簡體中文
tts.setLanguage(language);
// 設置語速,范圍從0.1到10.0,1.0為正常語速
float speechRate = 1.5f; // 例如,設置音調為150%
tts.setSpeechRate(speechRate);
// 朗讀文本
String text = "你好,這是一個調整音調的示例。";
tts.speak(text, TextToSpeech.QUEUE_FLUSH, null);
}
@Override
public void onInit(int status) {
if (status == TextToSpeech.SUCCESS) {
// 初始化成功,可以在這里設置其他屬性
} else {
// 初始化失敗,處理錯誤情況
}
}
}
在這個示例中,我們創建了一個TextToSpeech對象,并設置了語言為簡體中文。然后,我們通過調用setSpeechRate方法來設置音調,其中1.5表示正常語速的150%,即音調提高。你可以根據需要調整speechRate的值來獲得不同的音調效果。