百度api文字转语音效果

文字转语音接口:

http://tts.baidu.com/text2audio?lan=zh&ie=UTF-8&spd=2&text=需要转语音的文字

参数说明:

lan=zh:语言是中文,如果改为lan=en,则语言是英文。

ie=UTF-8:文字格式。

spd=2:语速,可以是1-9的数字,数字越大,语速越快。

text=**:这个是你要转换的文字。

如何调用?

1,调用前要用javascript的encodeURI()函数对text要传的文字进行编码

voiceText("王炸");

function voiceText(str){
     var url = "http://tts.baidu.com/text2audio?lan=zh&ie=UTF-8&text=" + encodeURI(str);
     var audio = new Audio(url);
     audio.src = url;
     audio.play();
}

2,可以直接在浏览器地址输入api地址回车,即可听到文字转换后的语音:

http://tts.baidu.com/text2audio?lan=zh&ie=UTF-8&spd=2&text=%E7%8E%8B%E7%82%B8


其中请求接口回调的错误示例:

{"err_no":500,"err_msg":"notsupport.","sn":"abcdefgh","idx":1}


错误码解释

错误码含义
500不支持输入
501输入参数不正确
502token验证失败
503合成后端错误



  • 5
    点赞
  • 17
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 2
    评论
以下是在 Android Studio 中调用百度 API 进行文字语音的代码示例: 1. 在 build.gradle 中添加依赖: ``` implementation 'com.baidu.android:bd-speech:1.0.0.12' ``` 2. 在布局文件中添加一个按钮和一个 EditText: ``` <Button android:id="@+id/btn_speak" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="Speak"/> <EditText android:id="@+id/et_text" android:layout_width="match_parent" android:layout_height="wrap_content" android:hint="Input text to speak"/> ``` 3. 在 MainActivity.java 中添加以下代码: ```java import com.baidu.tts.client.SpeechSynthesizer; import com.baidu.tts.client.TtsMode; public class MainActivity extends AppCompatActivity { private Button btnSpeak; private EditText etText; private SpeechSynthesizer mSpeechSynthesizer; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); // 初始化按钮和 EditText btnSpeak = findViewById(R.id.btn_speak); etText = findViewById(R.id.et_text); // 初始化语音合成对象 mSpeechSynthesizer = SpeechSynthesizer.getInstance(); mSpeechSynthesizer.setContext(this); mSpeechSynthesizer.setAppId("your_app_id"); // 替换为自己的 App ID mSpeechSynthesizer.setApiKey("your_api_key"); // 替换为自己的 API Key mSpeechSynthesizer.setSecretKey("your_secret_key"); // 替换为自己的 Secret Key mSpeechSynthesizer.setParam(SpeechSynthesizer.PARAM_SPEAKER, "0"); // 设置为女声 mSpeechSynthesizer.initTts(TtsMode.MIX); // 初始化合成引擎 // 点击按钮进行语音合成 btnSpeak.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { String text = etText.getText().toString(); mSpeechSynthesizer.speak(text); } }); } @Override protected void onDestroy() { super.onDestroy(); mSpeechSynthesizer.release(); // 释放合成引擎 } } ``` 注意替换 `setAppId`、`setApiKey` 和 `setSecretKey` 方法中的参数为自己在百度开发者平台申请的 App ID、API Key 和 Secret Key。此外,还可以通过 `setParam` 方法设置语音合成的参数,例如设置说话人和语速等。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

caicaicai404

对作者使用钞能力,欢迎点这里

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值