Android 文件转语音TTS输出(文字转语音)

这篇具有很好参考价值的文章主要介绍了Android 文件转语音TTS输出(文字转语音)。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

一、介绍

目录

一、介绍

二、配置

三、使用

四、权限

五、补充


目前国内Android系统自带语音引擎基本上都是Pico TTS,Pico TTS不支持中文转语音播报。因为项目需要播放中文,引入科大讯飞引擎3.0.apk。

二、配置

下载好科大讯飞语音引擎3.0.apk(若是下载小爱,小度等其他引擎也可以),安装成功之后,进入系统设置—>语言输入法设置—>文字转语音(TTS)输出—>选择科大讯飞语音引擎(选择你下载的引擎)。

三、使用

代码很简单,注释很详细,废话不多说,直接上工具类。

package com.welbell.temperature.type.ui;

import android.content.Context;
import android.speech.tts.TextToSpeech;
import android.util.Log;

import java.util.Locale;

public class VoiceAnnouncements implements TextToSpeech.OnInitListener {

    private static final String TAG = VoiceAnnouncements.class.getName();
    public static VoiceAnnouncements mVoiceAnnouncements;
    private TextToSpeech mTextToSpeech;

    public static VoiceAnnouncements getInstance() {
        synchronized (VoiceAnnouncements.class) {
            if (mVoiceAnnouncements == null) {
                mVoiceAnnouncements = new VoiceAnnouncements();
            }
        }
        return mVoiceAnnouncements;
    }

    public void init(Context context) {
        mTextToSpeech = new TextToSpeech(context, this);
    }

    /**
     * 设置语音播放参数(设置-1将不起作用)
     *
     * @param pitch      音调
     * @param speechRate 语速
     */
    public void setParameter(float pitch, float speechRate) {
        if (mTextToSpeech == null) {
            return;
        }
        if (pitch != -1)
            //设置音调
            mTextToSpeech.setPitch(pitch);
        if (speechRate != -1)
            //设置语速,1.0为正常语速
            mTextToSpeech.setSpeechRate(speechRate);
    }

    /**
     * 设置播放内容
     * 播放语音前需要等初始化成功之后 
     * @param isCover 是否覆盖式播放
     * @param text  播放的内容
     */
    public void speak(boolean isCover,String text){
        if (isCover){
            mTextToSpeech.stop();
        }
        mTextToSpeech.speak(text, TextToSpeech.QUEUE_ADD, null);
    }

    /**
     * 回调函数
     * @param status
     */
    @Override
    public void onInit(int status) {
            //设置朗读语言
        int supported = mTextToSpeech.setLanguage(Locale.SIMPLIFIED_CHINESE);
        if ((supported != TextToSpeech.LANG_AVAILABLE) && (supported != TextToSpeech.LANG_COUNTRY_AVAILABLE)) {
            Log.e(TAG, "onInit: 不支持当前语言");
        }
    }
}

四、权限

TTS需要使用文件操作权限

<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" /> <!-- 外部存储读权限 -->
    <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" /> <!-- 外部存储写权限 -->

五、补充

第三方引擎APK,需要通过用户手动设置为默认TTS输出,否则不能使用。目前除了改framework层以外,Android上层没有办法修改第三方APK为默认的输出TTS应用。

Android 文件转语音TTS输出(文字转语音)

 文章来源地址https://www.toymoban.com/news/detail-513231.html

到了这里,关于Android 文件转语音TTS输出(文字转语音)的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 4个步骤实现Java版的TTS(文字转语音)

    TTS是Text To Speech的缩写,即“从文本到语音”,让机器能够说话。 微软自带TTS(Text To Speech) 语音引擎,可以将文本转换成语音播报。 现在通过Java程序(jacob包),利用Windows自带的TTS实现语言的播报。 详细步骤如下: 下载jacob jar包和dll文件 将dll放置到相应的文件目录中 将

    2024年02月07日
    浏览(66)
  • 浏览器原生JavaScript离线文字转语音TTS播放,支持Windows自带TTS语音和移动端(安卓、IOS)

    JS已经可以实现语音合成(文字转语音)和语音识别(语音转文字),各个浏览器支持列表如下所示: 语音识别支持列表: 因此,浏览器上面使用语音合成非常简单。 页面效果示例: 1、支持速度,音调设置 2、支持下拉选择语音模板 3、文字转语音 该文件可直接保存成htm

    2024年02月04日
    浏览(58)
  • vue使用WEB自带TTS实现语音文字互转

    时隔多日,自己已经好久没更新文章了;今年一直跟随公司的政策[BEI YA ZHA]中,做了一个又一个的需求,反而没有多少自己的时间,更别说突破自己 ˚‧º·(˚ ˃̣̣̥᷄⌓˂̣̣̥᷅ )‧º·˚ (雾) 然后最近,我朋友突然和我说有没有做过TTS,我第一反应是??? ʕ •ᴥ•ʔ…… 一

    2024年02月04日
    浏览(50)
  • Python调用edge-tts实现在线文字转语音

    edge-tts是一个 Python 模块,允许通过Python代码或命令的方式使用 Microsoft Edge 的在线文本转语音服务。 GitHub - rany2/edge-tts: Use Microsoft Edge\\\'s online text-to-speech service from Python WITHOUT needing Microsoft Edge or Windows or an API key Use Microsoft Edge\\\'s online text-to-speech service from Python WITHOUT needing Micro

    2024年03月27日
    浏览(58)
  • idea的Translation插件,使用有道翻译文字转语音出现TTS处理

    IDEA -- File -- Plugins -- Marketplace 中搜索 Translation 右击翻译–播放语言 1、打开host文件,地址:C:WindowsSystem32driversetchosts 2、添加 108.177.97.100 translate.googleapis.com到文件中

    2024年01月18日
    浏览(90)
  • 文字转语音 - 搭建微软tts整合web服务提供api接口(免费)

    微软tts是业界公认文字转语音效果最佳 本文使用docker搭建微软tts服务并提供api接口对外提供服务 对接官方免费在线体验接口,搭建后可免费进行调用使用,不保证永久稳定可用 url :http://127.0.0.1:5003/tts method :POST 参数 类型 描述 text string 语音文字内容 voiceName string 发音人(

    2024年02月11日
    浏览(45)
  • 简述Android语音播报TTS

    ✍️作者简介:小北编程(专注于HarmonyOS、Android、Java、Web、TCP/IP等技术方向) 🐳博客主页:开源中国、稀土掘金、51cto博客、博客园、知乎、简书、慕课网、CSDN 🔔如果文章对您有一定的帮助请👉关注✨、点赞👍、收藏📂、评论💬。 🔥如需转载请参考【转载须知】 在现

    2024年04月22日
    浏览(41)
  • 口播神器,基于Edge,微软TTS(text-to-speech)文字转语音免费开源库edge-tts实践(Python3.10)

    不能否认,微软Azure在TTS(text-to-speech文字转语音)这个人工智能细分领域的影响力是统治级的,一如ChatGPT在NLP领域的随心所欲,予取予求。君不见几乎所有的抖音营销号口播均采用微软的语音合成技术,其影响力由此可见一斑,仅有的白璧微瑕之处就是价格略高,虽然国内也可

    2024年02月02日
    浏览(51)
  • Android 9.0 设置讯飞语音引擎为默认tts语音播报引擎

    在9.0的系统rom定制化开发中,在产品开发中,一些内置的app需要用到tts语音播报功能,所以需要用到讯飞语音引擎作为默认的系统tts语音引擎功能,所以就需要 了解系统关于tts语音引擎默认的设置方法,然后在设置讯飞语音引擎为默认的tts语音引擎来实现tts语音播报功能的实

    2024年02月07日
    浏览(71)
  • Android 调用TTS语音引擎过程及问题记录

      背景是需要在华为平板上部署一个能够进行相关中文语音提示的APP,华为系统为鸿蒙3.0,对应Android API 12.   调用TTS引擎之前,首先要确认自己的设备中是否安装了相关的文本转语音引擎以及是否支持中文,查看方法为“设置-辅助功能-无障碍-文本转语音”,鸿蒙系统是

    2024年02月16日
    浏览(41)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包