大家估计都知道现在很多AI音响能够给你播报天气,叫你起床...甚至能够接受语音指令!所谓的人工智能音响,听起来很高大上,都说PHP是最好的编程语言,今天我就带大家来实现一个语音播报功能!先大体说一个思路,PHP怎么实现语音播报呢?其实就是调个API(接口)的事情,这个就尴尬了。实际上,现在很多AI平台都提供一些成熟的接口供你使用,比如语音转文字,文字转语音,语音唤醒等等,这里我使用的是百度的语音合成接口(https://ai.baidu.com/tech/speech/tts),思路就是使用PHP将文字调用接口转换成甜美的妹子语音播放出来。

来。。。你没看错,就是这么简单!

模拟业务场景:有时候我们需要在办公室里对收到的每一笔订单进行播报,那么这种需求可能就需要我们自己开发咯!

今天博主基于百度AI平台的语音合成SDK做了一个简单的demo,Demo基于手动点击按钮进行播报,业务场景是触发播报:

演示链接:

[演示地址](https://zz1.com.cn/speech/index/audio)

实际上,上线的项目可能流量较大,下单量也较大比较频繁,这种情况您可以采用队列来解决;每次有新的订单完成后,将语音播报的代码丢入队列,一个一个进行播报。

以下示例代码仅供学习参考:根据实际情况,你可以将代码进行封装。

```

/**

* 文字转换语音播报的代码

* @return mixed

*/

public function audio()

{

if(request()->isPost()){

$text = input('post.text');

Loader::import('/aip_speech/AipSpeech',EXTEND_PATH);

$client = new \AipSpeech(config('speech.appid'), config('speech.api_key'), config('speech.secret_key'));

$result = $client->synthesis($text, 'zh', 1, array('pit'=>10,'vol' => 10,'per'=>0));

//识别正确返回语音二进制 错误则返回json 参照下面错误码

if(!is_array($result)){

$path = 'uploads'.DS.'audio'.DS;

if(!is_dir($path)) mkdir($path, 0755, true);

$audioFile = Time::get13TimeStamp().'_audio.mp3';

file_put_contents($path.$audioFile, $result);

echo json_encode(['code'=>1,'audioFile'=>DS.$path.$audioFile]);exit;

}else{

echo json_encode(['code'=>0,'msg'=>'文字转换语音失败']);exit;

}

}else{

return $this->fetch();

}

}

```

SDK存放目录(官方有下载哦)

![](https://zz1.com.cn/uploads/20181020/4d3a62780a761a8666767229b83272f4.png)

以上就是语音播放的Demo,剩下的大家可以发挥一下想象力,比如定时给你播报一些股票信息、播放歌曲、早上定时叫你起床。从理论上说我们还可以调用百度API接口去识别我们的语音命令,然后根据命令去执行操作,这样岂不是就是一个AI音响了?哈哈,纯属娱乐... ...

原文阅读:[PHP实现语音播报功能](https://zz1.com.cn/php-voice-announcements.html)

php加入语音播报功能_PHP实现语音播报功能相关推荐

  1. php聊天功能_php实现简单聊天功能

    搜索热词 1.创建聊天消息表,其表的字段有消息内容,发送时间和发送者的名称: CREATE TABLE `guanhui`.`message` ( `id` INT(10) NOT NULL AUTO ...

  2. php 和mysql实现抢购功能_php处理抢购类功能的高并发请求

    本文以抢购.秒杀为例.介绍如何在高并发状况下确保数据正确. 在高并发请求下容易参数两个问题 1.数据出错,导致产品超卖. 2.频繁操作数据库,导致性能下降. 测试环境 Windows7 apache2 ...

  3. php实现小说字典功能_PHP实现生成数据字典功能示例

    本文实例讲述了PHP实现生成数据字典功能.分享给大家供大家参考,具体如下: 最近时间紧迫,没有时间发博客,趁现在有点时间向大家分享一个知识点.在咱们做开发的时候 ,也许经常会遇到对数据库分析,做一个数 ...

  4. iOS 语音播报解决方案(实现支付宝语音收款功能)

    iOS10 语音播报填坑详解(解决串行播报中断问题) 在来聊这类需求的解决方案之前,咱们还是先来聊一聊这类需求的真实使用场景:语音播报.语音播报需求运用最为广泛的应该是收银对账了,就类似于支付宝.微信 ...

  5. Android 9.0 设置讯飞语音引擎为默认tts语音播报引擎

    1.前言 在9.0的系统rom定制化开发中,在产品开发中,一些内置的app需要用到tts语音播报功能,所以需要用到讯飞语音引擎作为默认的系统tts语音引擎功能,所以就需要 了解系统关于tts语音引擎默 ...

  6. WT588F34B语音芯片单曲更换语音功能的实现与应用

    开发背景: 产品需要更换语音内容一直能存在于生产端,而不能够实现产品在使用终端更换语音,从而实现产品的迭代升级. 实现原理: 既然是要能够实现单曲声音的更换,那就需要规划一个文件系统去记录声音的信息, ...

  7. 来电语音播报软件下载apk_来电播报下载-来电播报app安卓版下载v1.2.0-游侠软件下载...

    来电播报是一款能够播报来电人姓名.号码和短信内容的应用软件,使用来电播报,用户在开车或是不方便查看信息的时候,也能知道是谁来电,有需要的朋友赶快下载吧! 来电播报app介绍 来电播报APP是通过获取来 ...

  8. win10 c语言语音朗读,win10怎么使用语音朗读?win10开启语音播报讲述人的办法

    win10怎么使用语音朗读?win10开启语音播报讲述人的办法? win10电脑怎么使用语音朗读功能?现在智能手机都有语音播报功能,而操作电脑时却无该功能,许多网友表示很不习惯,于是咨询小编电脑是不有 ...

  9. 【微信小程序】语音播报,文字转语音,使用《微信同声传译插件》

    需要实现的功能是: 输入一段文字,由小程序读出来 步骤如下: 一.小程序添加 "微信同声传译" 插件 添加插件步骤看这篇博===>如何添加插件并配置 二.代码编写 index ...

最新文章

  1. 3分钟掌握支持向量机-机器学习面试必备
  2. Redis笔记之常用命令
  3. delphi初级教程之delphi断点调试二
  4. 丢了好几年的 Auto CAD又拿起来......
  5. api如何使用_记录API:技术作家和工程师指南
  6. 51nod1743-雪之国度【最小生成树,LCA,并查集】
  7. c4d序列号_(图文+视频)野分享:手把手教你免费获取Megascans所有资产并应用于C4D...
  8. WinAPI: RemoveDirectory - 删除空目录
  9. Python 安装openGL教程
  10. VS Code报错:Java 11 or more recent is required to run. Please download and install a recent JDK
  11. 冰冻三尺,非一日之寒。数据解析——xpath(1)
  12. git bisect_Git Bisect如何使调试更容易
  13. 寻道,思考人生的价值(观小米十周年演讲有感)
  14. EXCEL常用函数公式和VBA汇总
  15. 怎么查看war包代码
  16. 网站管理员请注意jsDelivr因备案被取消CDN访问可能延迟或错误
  17. 判断计算机硬件和网络故障,计算机硬件故障的识别与处理
  18. 【思维·状压】 jzoj1434灌水(COCI2009) 纪中集训提高B组
  19. 自然语言处理第二讲:单词计数
  20. yolo专属深度学习框架darknet的安装记录

热门文章

  1. 163net邮箱,对商务办公人士有哪些帮助?
  2. linux分区出现hfs,如何在Ubuntu中将HFS分区挂载为读/写?
  3. nbs***bsp;是牛客的bug吗
  4. 网站限制某些ip访问,仅允许某些ip…
  5. React Hook之Effect Hook
  6. 使用DirectDraw直接显示YUV视频数据
  7. windows 命令大全
  8. 让apache支持pathinfo
  9. 自学Python:按照日期自动分类照片
  10. 小程序外包公司有哪些选择参考标准?