以下是一个使用jQuery结合Recorder.js实现录音功能,并将录音文件上传至服务器,然后调用阿里云语音识别接口进行语音转文字的示例代码:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>语音识别示例</title>
<script src="https://code.jquery.com/jquery-3.5.1.min.js"></script>
<script src="path/to/recorder.js"></script>
</head>
<body>
<button id="recordButton">录音</button>
<script>
$(document).ready(function(){
// 初始化Recorder
var recorder = new Recorder({
sampleBits: 16,
sampleRate: 16000,
numChannels: 1
});
$('#recordButton').click(function(){
if (recorder.getStatus() === 'stopped') {
recorder.start(); // 开始录音
$(this).text('正在录音...');
} else if (recorder.getStatus() === 'recording') {
recorder.stop(); // 停止录音
$(this).text('录音已保存');
// 录音结束后,将文件上传到服务器
recorder.getBlob().then(function(blob) {
var formData = new FormData();
formData.append('file', blob, 'recording.wav');
$.ajax({
url: '/upload', // 服务器上传接口
type: 'POST',
data: formData,
processData: false,
contentType: false,
success: function(response) {
// 假设服务器返回的是阿里云的语音识别结果URL
var resultUrl = response.data.url;
// 发起阿里云语音识别接口请求
$.ajax({
url: resultUrl,
type: 'GET',
success: function(aliResult) {
console.log('识别结果:', aliResult.SegmentList.map(s => s.content).join(''));
},
error: function(error) {
console.error