Package Exports
- xf-voice
Readme
xf-voice
讯飞语音听写(流式版)WebAPI的React/Node.js SDK
安装
npm install xf-voice使用示例
Node.js 环境
const XfVoiceDictation = require('xf-voice');
const recorder = new XfVoiceDictation({
APPID: '你的APPID',
APIKey: '你的APIKey',
APISecret: '你的APISecret',
onTextChange: (text) => {
console.log('识别结果:', text);
}
});
// 开始录音
recorder.start();
// 停止录音
setTimeout(() => {
recorder.stop();
}, 5000);React 环境
import React, { useState, useEffect } from 'react';
import XfVoiceDictation from 'xf-voice';
function VoiceRecorder() {
const [text, setText] = useState('');
useEffect(() => {
const recorder = new XfVoiceDictation({
APPID: '你的APPID',
APIKey: '你的APIKey',
APISecret: '你的APISecret',
onTextChange: (result) => {
setText(result);
}
});
return () => {
recorder.stop();
};
}, []);
return (
<div>
<button onClick={() => recorder.start()}>开始录音</button>
<button onClick={() => recorder.stop()}>停止录音</button>
<div>识别结果: {text}</div>
</div>
);
}
export default VoiceRecorder;API
构造函数
new XfVoiceDictation(options)
参数:
options.APPID: 必填,讯飞开放平台APPIDoptions.APIKey: 必填,讯飞开放平台APIKeyoptions.APISecret: 必填,讯飞开放平台APISecretoptions.onTextChange: 识别结果回调函数options.onWillStatusChange: 状态变更回调函数options.language: 语言,默认'zh_cn'options.accent: 方言,默认'mandarin'
方法
start(): 开始录音stop(): 停止录音setParams({language, accent}): 设置识别参数
注意事项
- React项目需要v16.8+版本(支持Hooks)
- 需要在服务端环境下运行
- 需要有效的讯飞开放平台账号和API权限
- 浏览器需要支持Web Audio API和WebSocket
- 在Chrome浏览器中需要在https或localhost环境下才能获取麦克风权限
- 使用React时,建议在组件卸载时调用stop()方法
- Worker文件需要正确放置在public/js/目录下