Android TTS 音量控制

2024-03-18

向 TTS 引擎发送请求时,有什么方法可以控制 TTS 引擎的音量吗?我可以在这里使用 AudioManager 吗?

谢谢。


您可以在 TTS talk() 方法中获取此信息,但只能从 API 级别 11 开始。

为了保持向后兼容性,您可以定位更高的 api 级别(具有较低的最小 sdk)并使用“@TargetApi(api_level)”装饰器以及 sdk 版本检查。

/**  speak the single word, at a lower volume if possible */
protected void speakOneWord(String text) {
    int apiVer = android.os.Build.VERSION.SDK_INT;
    if (apiVer >= 11){
        speakApi13(text);
    } else {
        // compatibility mode
        HashMap<String, String> params = new HashMap<String, String>();
        mTts.speak(text, TextToSpeech.QUEUE_ADD, params);
    }
}   

/**  speak at a lower volume, for platform >= 13 */
@TargetApi(13)
protected void speakApi13(String text) {
    HashMap<String, String> params = new HashMap<String, String>();
    params.put(TextToSpeech.Engine.KEY_PARAM_VOLUME, "0.1");
    mTts.speak(text, TextToSpeech.QUEUE_ADD, params);
}   
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Android TTS 音量控制 的相关文章

随机推荐

  • Chart.js 响应式条形图标签大小调整

    所以我有一个使用 Chart js 的条形图 并且启用了响应式功能 它似乎适用于某些图表 但不适用于其他图表 例如 我的条形图标签似乎没有随窗口调整大小 但其他所有内容都会使整个图表在较小的窗口尺寸下看起来非常奇怪 如何重新调整标签大小以使
  • sed 或 awk 替换块中的行

    输入文件包含 abc para1 123 para2 456 para3 111 pqr para1 333 para2 765 para3 1345 xyz para1 888 para2 236 para3 964 shell脚本的要求
  • 获取 UTC 时间戳[重复]

    这个问题在这里已经有答案了 如何在 JavaScript 中获取当前 UTC 时间戳 我想这样做 这样我就可以从客户端发送独立于时区的时间戳 new Date getTime 有关更多信息 请参阅 詹姆斯 麦克马洪的回答 https sta
  • 从 Finger Tree 文章中查找丢失的“Reduce”类型类

    昨天的维基百科 http www urbandictionary com define php term Wikibender开始于这个计算器问题 https stackoverflow com questions 8428554 what
  • 查找 Android 应用程序的包名称以使用 Intent 从网络启动 Market 应用程序

    我正在创建一个移动网站 其中包含一个页面 人们可以从中下载我们推荐的相关应用程序 我发现了指示 http developer android com distribute googleplay promote linking html用于创
  • 预期有 0​​ 个参数的问题,但在 Redux Toolkit 中得到 1

    我有一个错误Expected 0 arguments but got 1 在简单的 Redux Slice 文件中 当我尝试调度时出现此错误 App tsx useEffect gt dispatch getMovies query sea
  • 如何在 Linux Fedora 上的 Apache 中启用 PHP?

    标题几乎概括了这一点 我在跑Fedora 18 64 位通过 httpd 安装 Apache 我的 Apache 运行得很好 但我的 PHP 似乎无法工作 我相当确定我的机器上确实安装了它 Linux 新手 我在我的目录中创建了一个 tes
  • PIP:“无法卸载‘ipython’。它是一个已安装的 distutils 项目,因此我们无法准确确定......”[重复]

    这个问题在这里已经有答案了 正在尝试安装spyder https pypi org project spyder using pip pip install spyder 弹出这个错误 无法卸载 ipython 这是一个已安装的 distu
  • 标尺应用程序如何在所有设备上保持准确?

    我真的很困惑目前市场上的 iOS Ruler 应用程序如何与不同尺寸的设备兼容 底部显示了一个示例 经过研究 我得出的结论是 实时获取当前屏幕的 PPI 是不可能的 这使得无法以编程方式绘制尺子 我的疑问是这些标尺应用程序如何在无法获取设备
  • 关于在视频中查找学生

    我现在正在从事一个眼球追踪项目 在这个项目中 我在网络摄像头视频中跟踪眼睛 分辨率为 640X480 我可以在每一帧中定位和跟踪眼睛 但我需要定位瞳孔 我读了很多论文 大部分都是参考Alan Yuille的可变形模板方法来提取和跟踪眼睛特征
  • Spring + Oauth2:如何刷新访问令牌

    我正在使用 Spring Boot 构建 REST Web 服务 身份验证是使用 Spring Security 和 OAuth2 实现的 用户根据 LDAP 服务器进行身份验证 这是我的网络安全配置 Configuration Enabl
  • C# 开发最简单的免费设置

    我在上网本上使用 Windows XP SP3 我需要编译 C 程序以供学习 我没有快速的电脑或快速的互联网连接或快钱 有人可以建议让我继续前进的最佳方法吗 谢谢你们 http www microsoft com express Downl
  • 在 Android 3.1 上调整 TextView 大小不会缩小其高度

    我有一个TextView可以动态调整大小 我使用setTextSize 它在 Android 2 2 上正确扩展和收缩其边界 但在Android 3 1上 当文本变小时 区域的高度不会缩小 这证明了这一点 布局只是简单的垂直LinearLa
  • 背景和 CSS 浮动

    所以我使用 960 网格系统 发现了一些他们不支持的东西 我考虑过切换到蓝图 但我必须在此过程中稍后再回到设计 不管怎样 我简化了我的代码来展示我所经历的
  • 对数据库中的项目符号进行排序

    我有一个专栏 datatype varchar 50 在数据库 SQL Server 2008 中 其值如下所示 1 2 1 1 11 4 1 5 2 1 1 1 4 1 2 1 4 2 2 4 3 4 2 4 3 1 4 2 1 11 2
  • HTML 标题对齐问题

    你好 我有 2 个简单的标题 一个 h3 位于一个 h2 之上 由于某些奇怪的原因 h2 标题的左侧似乎有一个 1px 的间隙 这让我发疯 我只是不明白为什么会这样 h2 的字体大小为 40px 而 h3 的字体大小为 12px 有人能帮我
  • 使用 EPPlus 返回 INT 的 Excel 日期列

    所以我使用 EPPlus 来读取和写入 Excel 文档 Workflow 用户生成填充的 Excel 文档 打开文档并添加一行 已上传并已阅读 当我读回值时 使用 EPPlus 创建文档时生成的日期显示正确 但用户更改日期或添加的行显示为
  • 如何在样式文件中定义可绘制对象的大小?

    我想指定一次资源 值 styles xml两个复选框的大小及其四个形状可绘制对象 res drawable cb1 checked xml res drawable cb1 unchecked xml res drawable cb2 ch
  • 是什么原因导致“无可辩驳的模式失败了”,这是什么意思?

    什么是 无可辩驳的模式失败了 意思是 什么情况会导致这个运行时错误 考虑这个例子 foo Just x hello main putStrLn foo Nothing 这使用了一种无可辩驳的模式 部分 无可辩驳的模式总是 匹配 所以这个打印
  • Android TTS 音量控制

    向 TTS 引擎发送请求时 有什么方法可以控制 TTS 引擎的音量吗 我可以在这里使用 AudioManager 吗 谢谢 您可以在 TTS talk 方法中获取此信息 但只能从 API 级别 11 开始 为了保持向后兼容性 您可以定位更高