|
发表于 2018-6-7 23:21:25
|
显示全部楼层
来自 中国河南郑州
编了好一会的详细教程,被吞了?再来一次,这一次来个精简版凑合看:
第一步:
- 制作一个提交查询的POST表单:
- <form action="" method="post">
- <input type="text" name="tts" value="百度AI">
- <input type="submit" value="点击倾听">
- </form>
复制代码
第二步:
- 参考官方的接口文件:
- $result = $client->synthesis('你好百度', 'zh', 1, array('vol' => 5,));
- /* 将’你好百度‘ 更改为,实际接收的查询数据 $_POST['tts'] */
- 示例:$result = $client->synthesis($_POST['tts'], 'zh', 1, array('vol' => 5,));
复制代码 第三步:
- 继续参考官方:
- if(!is_array($result)){
- file_put_contents('audio.mp3', $result);
- }
- /* 文件合法,则在指定目录下生成一个音频文件:audio.mp3 */
复制代码 第四步:
- 让页面自动播放音频文件,
- <audio src="audio.mp3" controls="controls" autoplay="autoplay">如果浏览器不支持,此处给出用户友好提示:请更换或升级!</audio>
复制代码
最后,来一个完整Demo示例,若使用此文件,存储为.php:
- <?php
- require_once 'AipSpeech.php';
- // 你的 APPID AK SK
- const APP_ID = '你的 App ID';
- const API_KEY = '你的 Api Key';
- const SECRET_KEY = '你的 Secret Key';
- $client = new AipSpeech(APP_ID, API_KEY, SECRET_KEY);
- /*此行:以上部分内容,请到百度AI开放平台申请并获取*/
- $tts = $_POST['tts']; //获取POST表单提交的文字信息
- $result = $client->synthesis($tts, 'zh', 1, array('vol' => 5,));
- //判断$result,并将音频文件addio.mp3写入到当前文件
- if(!is_array($result)){
- file_put_contents('audio.mp3', $result);
- }
- $rand = rand(10000, 99999); // 生成一个随机数,预防浏览器缓存延迟
- ?>
- <!doctype html>
- <html lang="en">
- <head>
- <meta charset="UTF-8">
- <title>Demo:百度TTS</title>
- </head>
- <body>
- <form action="" method="post">
- <input type="text" name="tts" value="百度AI">
- <input type="submit" value="点击倾听">
- </form>
- <!-- 载入,并自动播放音频文件 -->
- <audio src="audio.mp3?<?php echo $rand ?>" controls="controls" autoplay="autoplay">浏览器不支持,请更换或升级!</audio>
- </body>
- </html>
复制代码
|
评分
-
查看全部评分
|