前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >PHP与语音识别功能现在也是很普遍了

PHP与语音识别功能现在也是很普遍了

作者头像
php007
发布2019-08-05 15:20:47
8490
发布2019-08-05 15:20:47
举报
文章被收录于专栏:PHP专享栏PHP专享栏
文章正文

语音识别的功能的应用场景

将语音实时识别为文字,适用于语音聊天、语音输入、语音搜索、语音下单、语音指令、语音问答等多种场景。

我们还是利用百度API,语音识别功能,给大家讲解如何使用。API主要就是要学会看文档,小编一直都强调,api的思路都是差不多。

编码之前,首先要登录百度云,注册应用,拿到相应的key与SECRET_KEY,下载SDK。

SDK安装步骤

语音识别 PHP SDK目录结构

├── AipSpeech.php             //语音识别
└── lib
    ├── AipHttpClient.php        //内部http请求类
    ├── AipBCEUtil.php           //内部工具类
    └── AipBase                  //Aip基类

使用PHP SDK开发骤如下

1.在官方网站下载php SDK压缩包。

2.将下载的aip-php-sdk-version.zip解压后,复制AipSpeech.php以及lib/*到工程文件夹中。

3.引入AipSpeech.php

新建AipSpeech

AipSpeech是语音识别的PHP SDK客户端,为使用语音识别的开发人员提供了一系列的交互方法。

参考如下代码新建一个AipSpeech:

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);

在上面代码中,常量APP_ID在百度智能云控制台中创建,常量API_KEYSECRET_KEY是在创建完毕应用后,系统分配给用户的,均为字符串,用于标识用户,为访问做签名验证,可在AI服务控制台中的应用列表中查看。

准备一段语音,要对段保存的这段语音的语音文件进行识别:代码如下

// 识别本地文件
$client->asr(file_get_contents('audio.pcm'), 'pcm', 16000, array(
    'dev_pid' => 1536,
));

返回的json数据

// 成功返回
{
    "err_no": 0,
    "err_msg": "success.",
    "corpus_no": "15984125203285346378",
    "sn": "481D633F-73BA-726F-49EF-8659ACCC2F3D",
    "result": ["北京天气"]
}

// 失败返回
{
    "err_no": 2000,
    "err_msg": "data empty.",
    "sn": null
}

这里有个简单的例子,可以参考一下。

<?php  

require_once 'AipSpeech.php';

// 你的 APPID AK SK
const APP_ID = '10533442';
const API_KEY = 'eb8vDMwPyec1DGxecYQRzEjz';
const SECRET_KEY = '56ac673eafc3a65f49dd37d8dd8f27e8';

$client = new AipSpeech(APP_ID, API_KEY, SECRET_KEY);
// 识别本地文件
$li = $client->asr(file_get_contents('./test.wav'), 'wav', 16000, array(
    'lan' => 'zh',
));

interface Msg{
    function getMsg();
}

class Result implements Msg{
    protected $res = null;
    protected function __construct($re){
        $this->res = $re;
    }
    public  function getMsg(){}
}
class Success extends Result{
    public function __construct($re){
        parent::__construct($re);
    }
    public function getMsg(){
        if ($this->res['err_msg'] == 'success.') {
            // var_dump($this->res);exit;
            echo  $this->res['result'][0];
        }
    }
}

$tmp = new Success($li);
$tmp->getMsg();

更多的知识教程,请大家多多看文档

http://ai.baidu.com/docs/#/ASR-Online-PHP-SDK/top

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2019-07-30,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 风帆 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
语音识别
腾讯云语音识别(Automatic Speech Recognition,ASR)是将语音转化成文字的PaaS产品,为企业提供精准而极具性价比的识别服务。被微信、王者荣耀、腾讯视频等大量业务使用,适用于录音质检、会议实时转写、语音输入法等多个场景。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档