Ner*_*ero 2 java android text-to-speech
嗨,大家好
我一直在环顾四周,但似乎找不到合适的答案来集成到我的功能中。我目前基本上使用以下代码:
private void sayHello(String timeString) {
textToSpeech.speak(timeString,
TextToSpeech.QUEUE_FLUSH,
null);
}
Run Code Online (Sandbox Code Playgroud)
这段代码工作正常,但声音太大,只能通过设备本身的音量来控制。我希望能够调整/硬编码/能够使用微调器来控制 TTS 的音量,但似乎无法相应地这样做。
该功能可用于该库吗?可以实现吗?
我还尝试在我的代码中实现以下内容:
KEY_PARAM_VOLUME
Run Code Online (Sandbox Code Playgroud)
但是,我看不到任何使用此方法的示例,并且显示创建函数时出现错误。有什么建议吗?
public class MainActivity extends AppCompatActivity {
int androidAPILevel = android.os.Build.VERSION.SDK_INT;
TextToSpeech tts;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
tts = new TextToSpeech(this, new TextToSpeech.OnInitListener() {
@Override
public void onInit(int i) {
start();
}
});
}
private void start() {
if (androidAPILevel < 21) {
HashMap<String,String> params = new HashMap<>();
params.put(TextToSpeech.Engine.KEY_PARAM_VOLUME, "0.5"); // change the 0.5 to any value from 0-1 (1 is default)
tts.speak("This is a volume test.", TextToSpeech.QUEUE_FLUSH, params);
} else { // android API level is 21 or higher...
Bundle params = new Bundle();
params.putFloat(TextToSpeech.Engine.KEY_PARAM_VOLUME, 0.5f); // change the 0.5f to any value from 0f-1f (1f is default)
tts.speak("This is a volume test.", TextToSpeech.QUEUE_FLUSH, params, null);
}
}
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1865 次 |
| 最近记录: |