【Android】语音合成多语种使用说明

注册

使用灵云的语音合成功能需要先在官网上进行注册应用。官网地址

注册比较简单,就不做过多介绍了,注册完应用以后,在后台创建自己的应用,创建完应用以后需要给应用开通对应的语音能力。
这里写图片描述

capKey说明:

  • tts.cloud.wangjing 中文女声
  • tts.cloud.xiaokun 中文女声
  • tts.cloud.haobo 中文男声
  • tts.cloud.xixi 中文童声
  • tts.cloud.maged 阿拉伯语男声
  • tts.cloud.thomas 法语男声
  • tts.cloud.sebastien 法语男声
  • tts.cloud.audrey-ml 法语女声
  • tts.cloud.kyoko 日语女声
  • tts.cloud.narae 韩语女声
  • tts.cloud.milena 俄语女声
  • tts.cloud.diego 西班牙语男声
  • tts.cloud.monica 西班牙语女声
  • tts.cloud.narisa 泰语女声
  • tts.cloud.vera 葡萄牙语女声
  • tts.cloud.joana 葡萄牙语女声
  • tts.cloud.anna 德语女声
  • tts.cloud.steffi 德语女声
  • tts.cloud.yannick 德语男声
  • tts.cloud.xiaojie 粤语女声
  • tts.cloud.alice-ml 意大利语女声
  • tts.cloud.damayanti 印度尼西亚语女声
  • tts.cloud.serena 英语女声
  • tts.cloud.daniel 英语男声
  • tts.cloud.javier 墨西哥-西班牙语男声
  • tts.cloud.paulina 墨西哥-西班牙语女声
  • tts.cloud.tom 美式英语男声
  • tts.cloud.samantha 美式英语女声
  • tts.cloud.allison 美式英语女声
  • tts.cloud.donna 美式英语女声
  • tts.cloud.jill 美式英语女声
  • tts.cloud.carol 美式英语女声
  • tts.cloud.julie.fr 加拿大-法语女声
  • tts.cloud.amelie 加拿大-法语女声
  • tts.cloud.felix 加拿大-法语男声
  • tts.cloud.aylin 土耳其语女声
  • tts.cloud.yelda 土耳其语女声
  • tts.cloud.claire 荷兰语女声
  • tts.cloud.xander 荷兰语女声
  • tts.cloud.melina 希腊语女声
  • tts.cloud.alexandros 希腊语男声
  • tts.cloud.uyghur 维吾尔语女声

集成

下载灵云的Android版本语音合成功能,下载地址

源码

Github

灵云在线合成功能

需要加入的so和jar包有:

  • libhci_curl.so
  • libhci_sys.so
  • libhci_sys_jni.so
  • libhci_tts.so
  • libhci_tts_jni.so
  • libhci_tts_cloud.synth.so
  • libspeex.so
  • libstlport_shared.so
  • hcicloud-5.0.jar
  • hcicloud_player-5.0.jar

权限

<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<uses-permission android:name="android.permission.SYSTEM_ALERT_WINDOW" />
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION"/>
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION"/>

配置类

package com.example.sinovoice.ttsutil;

/**
 * 灵云配置信息
 * Created by 10048 on 2016/12/3.
 */
public class ConfigUtil {
   
    /**
     * 灵云APP_KEY
     */
    public static final String APP_KEY = "bd5d547b";

    /**
     * 开发者密钥
     */
    public static final String DEVELOPER_KEY = "712ddd892cf9163e6383aa169e0454e3";

    /**
     * 灵云云服务的接口地址
     */
    public static final String CLOUD_URL = "http://test.api.hcicloud.com:8888";

    /**
     * 需要运行的灵云能力
     */
    /**
     * 中文女声
     */
    public static final String CAP_KEY_TTS_CLOUD_WANGJING = "tts.cloud.wangjing";

    /**
     * 中文女声
     */
    public static final String CAP_KEY_TTS_CLOUD_XIAOKUN = "tts.cloud.xiaokun";

    /**
     * 中文女童
     */
    public static final String CAP_KEY_TTS_CLOUD_XIXI = "tts.cloud.xixi";

    /**
     * 中文男声
     */
    public static final String CAP_KEY_TTS_CLOUD_HAOBO = "tts.cloud.haobo";

    /**
     * 阿拉伯语男声
     */
    public static final String CAP_KEY_TTS_CLOUD_MAGED = "tts.cloud.maged";

    /**
     * 法语男声
     */
    public static final String CAP_KEY_TTS_CLOUD_THOMAS = "tts.cloud.thomas";

    /**
     * 法语男声
     */
    public static final String CAP_KEY_TTS_CLOUD_SEBASTIEN = "tts.cloud.sebastien";

    /**
     * 法语女声
     */
    public static final String CAP_KEY_TTS_CLOUD_AUDREY_ML = "tts.cloud.audrey-ml";

    /**
     * 日语女声
     */
    public static final String CAP_KEY_TTS_CLOUD_KYOKO = "tts.cloud.kyoko";

    /**
     * 韩语女声
     */
    public static final String CAP_KEY_TTS_CLOUD_NARAE = "tts.cloud.narae";

    /**
     * 俄语女声
     */
    public static final String CAP_KEY_TTS_CLOUD_MILENA = "tts.cloud.milena";

    /**
     * 西班牙语男声
     */
    public static final String CAP_KEY_TTS_CLOUD_DIEGO = "tts.cloud.diego";

    /**
     * 西班牙语女声
     */
    public static final String CAP_KEY_TTS_CLOUD_MONICA = "tts.cloud.monica";

    /**
     * 泰语女声
     */
    public static final String CAP_KEY_TTS_CLOUD_NARISA = "tts.cloud.narisa";

    /**
     * 葡萄牙语女声
     */
    public static final String CAP_KEY_TTS_CLOUD_VERA = "tts.cloud.vera";

    /**
     * 葡萄牙语女声
     */
    public static final String CAP_KEY_TTS_CLOUD_JOANA = "tts.cloud.joana";

    /**
     * 德语女声
     */
    public static final String CAP_KEY_TTS_CLOUD_ANNA = "tts.cloud.anna";

    /**
     * 德语女声
     */
    public static final String CAP_KEY_TTS_CLOUD_STEFFI = "tts.cloud.steffi";

    /**
     * 德语男声
     */
    public static 
  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
实现多语种语音交互可以使用Python的语音处理库和机器学习库。以下是一个简单的多语种语音交互的Python实现示例: 1. 首先,需要使用Python的语音处理库PyAudio录制用户的语音输入。可以使用以下代码片段实现: ```python import pyaudio import wave # 录音参数 CHUNK = 1024 # 每个缓冲区的大小 FORMAT = pyaudio.paInt16 # 采样格式 CHANNELS = 1 # 声道数 RATE = 16000 # 采样率 RECORD_SECONDS = 5 # 录音时长 # 创建PyAudio对象 audio = pyaudio.PyAudio() # 打开音频流 stream = audio.open(format=FORMAT, channels=CHANNELS, rate=RATE, input=True, frames_per_buffer=CHUNK) print("开始录音...") frames = [] # 录音 for i in range(0, int(RATE / CHUNK * RECORD_SECONDS)): data = stream.read(CHUNK) frames.append(data) print("录音结束!") # 关闭音频流和PyAudio对象 stream.stop_stream() stream.close() audio.terminate() # 保存录音文件 wf = wave.open("record.wav", 'wb') wf.setnchannels(CHANNELS) wf.setsampwidth(audio.get_sample_size(FORMAT)) wf.setframerate(RATE) wf.writeframes(b''.join(frames)) wf.close() ``` 2. 接下来,需要使用Python的机器学习库scikit-learn进行语音识别。可以使用以下代码片段实现: ```python import speech_recognition as sr # 创建Recognizer对象 r = sr.Recognizer() # 读取录音文件 with sr.AudioFile('record.wav') as source: audio_data = r.record(source) # 识别语音输入 text = r.recognize_google(audio_data, language='en-US') # 以英语识别 print("您说的是:", text) ``` 3. 最后,需要使用Python的翻译库pydeepl进行语言翻译。可以使用以下代码片段实现: ```python import pydeepl # 翻译语音输入 translated_text = pydeepl.translate(text, target_language='zh') print("翻译结果:", translated_text) ``` 以上是一个简单的多语种语音交互的Python实现示例,可以根据实际需求进行扩展和优化。需要注意的是,语音识别和语言翻译的准确率取决于语音质量和模型的训练数据,因此需要进行充分的测试和调优。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值