TextToSpeech文本转为语音

2024-05-14 19:38

本文主要是介绍TextToSpeech文本转为语音,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

转自http://flycatdeng.iteye.com/blog/1827245


  1. <?xml version="1.0" encoding="utf-8"?>  
  2. <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"  
  3.     android:layout_width="fill_parent"  
  4.     android:layout_height="fill_parent"  
  5.     android:orientation="vertical" >  
  6.   
  7.     <TextView  
  8.         android:id="@+id/speechTxt"  
  9.         android:layout_width="fill_parent"  
  10.         android:layout_height="fill_parent"  
  11.         android:text="you are very good !" />  
  12.   
  13.     <Button  
  14.         android:id="@+id/speechBtn"  
  15.         android:layout_width="wrap_content"  
  16.         android:layout_height="wrap_content"  
  17.         android:layout_alignParentLeft="true"  
  18.         android:layout_alignParentTop="true"  
  19.         android:layout_marginTop="22dp"  
  20.         android:text="text to speech" />  
  21.   
  22. </RelativeLayout>  

 MainAty.java

Java代码   收藏代码
  1. package fly.aty;  
  2.   
  3. import java.util.Locale;  
  4.   
  5. import android.app.Activity;  
  6. import android.os.Bundle;  
  7. import android.speech.tts.TextToSpeech;  
  8. import android.speech.tts.TextToSpeech.OnInitListener;  
  9. import android.view.View;  
  10. import android.view.View.OnClickListener;  
  11. import android.widget.Button;  
  12. import android.widget.TextView;  
  13. import android.widget.Toast;  
  14.   
  15. public class MainAty extends Activity implements OnClickListener, OnInitListener{  
  16.   
  17.     private Button speechBtn; // 按钮控制开始朗读  
  18.     private TextView speechTxt; // 需要朗读的内容  
  19.     private TextToSpeech textToSpeech; // TTS对象  
  20.   
  21.     @Override  
  22.     public void onCreate(Bundle savedInstanceState) {  
  23.         super.onCreate(savedInstanceState);  
  24.         setContentView(R.layout.main);  
  25.   
  26.         speechBtn = (Button) findViewById(R.id.speechBtn);  
  27.         speechBtn.setOnClickListener(this);  
  28.   
  29.         speechTxt = (TextView) findViewById(R.id.speechTxt);  
  30.         textToSpeech = new TextToSpeech(thisthis); // 参数Context,TextToSpeech.OnInitListener  
  31.     }  
  32.       
  33.     /** 
  34.      * 用来初始化TextToSpeech引擎 
  35.      * status:SUCCESS或ERROR这2个值 
  36.      * setLanguage设置语言,帮助文档里面写了有22种 
  37.      * TextToSpeech.LANG_MISSING_DATA:表示语言的数据丢失。 
  38.      * TextToSpeech.LANG_NOT_SUPPORTED:不支持 
  39.      */  
  40.     @Override  
  41.     public void onInit(int status) {  
  42.         if (status == TextToSpeech.SUCCESS) {  
  43.             int result = textToSpeech.setLanguage(Locale.US);  
  44.             if (result == TextToSpeech.LANG_MISSING_DATA  
  45.                     || result == TextToSpeech.LANG_NOT_SUPPORTED) {  
  46.                 Toast.makeText(this"数据丢失或不支持", Toast.LENGTH_SHORT).show();  
  47.             }  
  48.         }  
  49.     }  
  50.   
  51.     @Override  
  52.     public void onClick(View v) {  
  53.         if (textToSpeech != null && !textToSpeech.isSpeaking()) {  
  54.             textToSpeech.setPitch(0.5f);// 设置音调,值越大声音越尖(女生),值越小则变成男声,1.0是常规  
  55.             textToSpeech.speak(speechTxt.getText().toString(),  
  56.                     TextToSpeech.QUEUE_FLUSH, null);  
  57.         }  
  58.     }  
  59.   
  60.     @Override  
  61.     protected void onStop() {  
  62.         super.onStop();  
  63.         textToSpeech.stop(); // 不管是否正在朗读TTS都被打断  
  64.         textToSpeech.shutdown(); // 关闭,释放资源  
  65.     }  
  66. }  

这篇关于TextToSpeech文本转为语音的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/989664

相关文章

Java实现在Word文档中添加文本水印和图片水印的操作指南

《Java实现在Word文档中添加文本水印和图片水印的操作指南》在当今数字时代,文档的自动化处理与安全防护变得尤为重要,无论是为了保护版权、推广品牌,还是为了在文档中加入特定的标识,为Word文档添加... 目录引言Spire.Doc for Java:高效Word文档处理的利器代码实战:使用Java为Wo

Python文本相似度计算的方法大全

《Python文本相似度计算的方法大全》文本相似度是指两个文本在内容、结构或语义上的相近程度,通常用0到1之间的数值表示,0表示完全不同,1表示完全相同,本文将深入解析多种文本相似度计算方法,帮助您选... 目录前言什么是文本相似度?1. Levenshtein 距离(编辑距离)核心公式实现示例2. Jac

Python中高级文本模式匹配与查找技术指南

《Python中高级文本模式匹配与查找技术指南》文本处理是编程世界的永恒主题,而模式匹配则是文本处理的基石,本文将深度剖析PythonCookbook中的核心匹配技术,并结合实际工程案例展示其应用,希... 目录引言一、基础工具:字符串方法与序列匹配二、正则表达式:模式匹配的瑞士军刀2.1 re模块核心AP

Python中图片与PDF识别文本(OCR)的全面指南

《Python中图片与PDF识别文本(OCR)的全面指南》在数据爆炸时代,80%的企业数据以非结构化形式存在,其中PDF和图像是最主要的载体,本文将深入探索Python中OCR技术如何将这些数字纸张转... 目录一、OCR技术核心原理二、python图像识别四大工具库1. Pytesseract - 经典O

苹果macOS 26 Tahoe主题功能大升级:可定制图标/高亮文本/文件夹颜色

《苹果macOS26Tahoe主题功能大升级:可定制图标/高亮文本/文件夹颜色》在整体系统设计方面,macOS26采用了全新的玻璃质感视觉风格,应用于Dock栏、应用图标以及桌面小部件等多个界面... 科技媒体 MACRumors 昨日(6 月 13 日)发布博文,报道称在 macOS 26 Tahoe 中

Python实现精准提取 PDF中的文本,表格与图片

《Python实现精准提取PDF中的文本,表格与图片》在实际的系统开发中,处理PDF文件不仅限于读取整页文本,还有提取文档中的表格数据,图片或特定区域的内容,下面我们来看看如何使用Python实... 目录安装 python 库提取 PDF 文本内容:获取整页文本与指定区域内容获取页面上的所有文本内容获取

Springboot3+将ID转为JSON字符串的详细配置方案

《Springboot3+将ID转为JSON字符串的详细配置方案》:本文主要介绍纯后端实现Long/BigIntegerID转为JSON字符串的详细配置方案,s基于SpringBoot3+和Spr... 目录1. 添加依赖2. 全局 Jackson 配置3. 精准控制(可选)4. OpenAPI (Spri

C#实现将Office文档(Word/Excel/PDF/PPT)转为Markdown格式

《C#实现将Office文档(Word/Excel/PDF/PPT)转为Markdown格式》Markdown凭借简洁的语法、优良的可读性,以及对版本控制系统的高度兼容性,逐渐成为最受欢迎的文档格式... 目录为什么要将文档转换为 Markdown 格式使用工具将 Word 文档转换为 Markdown(.

详解如何使用Python从零开始构建文本统计模型

《详解如何使用Python从零开始构建文本统计模型》在自然语言处理领域,词汇表构建是文本预处理的关键环节,本文通过Python代码实践,演示如何从原始文本中提取多尺度特征,并通过动态调整机制构建更精确... 目录一、项目背景与核心思想二、核心代码解析1. 数据加载与预处理2. 多尺度字符统计3. 统计结果可

Python中edge-tts实现便捷语音合成

《Python中edge-tts实现便捷语音合成》edge-tts是一个功能强大的Python库,支持多种语言和声音选项,本文主要介绍了Python中edge-tts实现便捷语音合成,具有一定的参考价... 目录安装与环境设置文本转语音查找音色更改语音参数生成音频与字幕总结edge-tts 是一个功能强大的