帖子

[demo分享] Node.js 集成讯飞云服务

[复制链接]
从Node.js客户端调用科大讯飞API.

> 仅支持Linux64, 仅支持听写接口

Read ```https://www.npmjs.com/package/xfy-node```.

![]()

## 准备工作
```
git clone git@github.com:Samurais/xfy-node-getstarted.git
cd resources
sudo unzip xfyun_Linux_voice_1135_5864ae2d.zip -d /opt/xfy-sdk
```

## 资源文件
**data.vioces**

*.silk 文件 - N/A
*.wav 文件 - 16k, 单通道
*.flac 文件 - 22k, 单通道

## 测试
```
cd xfy-node-getstarted
npm install
node index.js
```

## 解释
```
const xfyclient = require('xfy-node');
let file_name = "pro_16k/627b62fb776f833bad37efaf55954e1f_16.wav";
let params = {
    username: null, // 账号名称
    password: null, // 账号密码
    appid: '5864ae2d', // AppID
    // 语言
    // zh_cn:简体中文
    // zh_tw:繁体中文
    // en_us:英语
    // 默认为zh_cn
    lang: 'en_us',
    // 口音
    // mandarin:普通话
    // cantonese:粤语
    // 默认为mandarin
    accent: 'mandarin',
    // 音频格式
    // 8000, 16000, 默认为16000
    sample_rate: 16000,
    // 音频文件位置,绝对路径
    audio_file: `/home/hain/git/xfy-node-getstarted/data.vioces/${file_name}`
}

xfyclient.iat(params) // 返回Promise
        .then(function (result) {
            console.log('result', result);
        }, function(err){
            console.log('err', err);
        });
```


## Trouble Shooting

### 转码

> 官方案例的数据格式: sox --info wav/iflytek01.wav

```
Input File     : 'wav/iflytek01.wav'

Channels       : 1

Sample Rate    : 16000

Precision      : 16-bit

Duration       : 00:00:04.36 = 69699 samples ~ 326.714 CDDA sectors

File Size      : 139k

Bit Rate       : 256k

Sample Encoding: 16-bit Signed Integer PCM
```

* 批量转码

```
cd data.vioces
find . -name "*.wav" -print0 | xargs -0 -I file sox file -r 16000 pro_16k/file
```

评分

参与人数 1语点 +5 收起 理由
栗子讲究 + 5 很给力!

查看全部评分

iflytek-小黑 发表于 2017-1-12 16:52:04
2#
666
使用道具 举报 回复
hanziwen0415@16 发表于 2017-2-14 12:34:11 来自手机
3#
提示: 作者被禁止或删除 内容自动屏蔽
使用道具 举报 回复
vwisdom@163.com 发表于 2017-12-16 10:02:59
4#
node新手,现在项目部署在win服务器上,是不是就直接的尴尬了。。。。
使用道具 举报 回复