更新记录
1.0.0(2026-02-10) 下载此版本
自动与插件根目录changelog.md保持同步
平台兼容性
uni-app(3.8.0)
| Vue2 | Vue3 | Chrome | Safari | app-vue | app-nvue | Android | Android插件版本 | iOS | iOS插件版本 | 鸿蒙 |
|---|---|---|---|---|---|---|---|---|---|---|
| - | - | - | - | - | - | 5.0 | 1.0.0 | 12 | 1.0.0 | - |
| 微信小程序 | 支付宝小程序 | 抖音小程序 | 百度小程序 | 快手小程序 | 京东小程序 | 鸿蒙元服务 | QQ小程序 | 飞书小程序 | 小红书小程序 | 快应用-华为 | 快应用-联盟 |
|---|---|---|---|---|---|---|---|---|---|---|---|
| - | - | - | - | - | - | - | - | - | - | - | - |
FYQ 实时录音插件
简介
FYQ Audio Recorder 是一个基于 UTS 开发的实时录音插件,支持获取 PCM 音频数据回调,适用于语音识别、音频可视化等场景。
特性
- 支持 Android/iOS 双平台
- 实时 PCM 数据回调
- 可配置采样率、声道、位深
- 完整的权限处理
- 支持暂停/恢复录音
- 提供 AudioRecord (Android) 和 AVAudioEngine (iOS) 原生实现
安装
将 fyq-audio-recorder 目录放入项目的 uni_modules 目录下。
使用方法
import { createAudioRecorder } from '@/uni_modules/fyq-audio-recorder'
// 创建录音器实例
const recorder = createAudioRecorder()
// 设置数据回调
recorder.onFrameRecorded((data) => {
console.log('PCM 数据:', data.frameBuffer)
console.log('数据大小:', data.bufferSize)
console.log('时间戳:', data.timestamp)
})
// 设置状态回调
recorder.onStateChange((state) => {
console.log('录音状态:', state.status)
if (state.status === 'error') {
console.error('错误信息:', state.message)
}
})
// 开始录音
recorder.start({
sampleRate: 16000, // 采样率 16kHz
channels: 1, // 单声道
bits: 16, // 16bit
format: 'raw' // PCM 格式
})
// 暂停录音
recorder.pause()
// 恢复录音
recorder.resume()
// 停止录音
recorder.stop()
// 释放资源
recorder.release()
API 文档
createAudioRecorder()
创建录音器实例。
返回值: IAudioRecorder 录音器实例
IAudioRecorder
start(options)
开始录音。
参数:
options.sampleRate: 采样率,默认 16000options.channels: 声道数,默认 1 (单声道)options.bits: 位深,默认 16options.format: 音频格式,默认 'raw'
stop()
停止录音。
pause()
暂停录音。
resume()
恢复录音。
release()
释放资源。
onFrameRecorded(callback)
设置实时 PCM 数据回调。
回调参数:
frameBuffer: ArrayBuffer - PCM 音频数据bufferSize: number - 数据大小(字节)timestamp: number - 时间戳
onStateChange(callback)
设置状态变化回调。
回调参数:
status: 'start' | 'stop' | 'error' - 状态code: number - 错误码(仅错误时)message: string - 错误信息(仅错误时)
错误码
| 错误码 | 说明 |
|---|---|
| 900001 | 麦克风权限被拒绝 |
| 900002 | 录音器初始化失败 |
| 900003 | 录音器启动失败 |
| 900004 | 参数配置错误 |
平台配置
Android
需要在 manifest.json 中添加录音权限:
{
"app-plus": {
"distribute": {
"android": {
"permissions": [
"<uses-permission android:name=\"android.permission.RECORD_AUDIO\"/>",
"<uses-permission android:name=\"android.permission.MODIFY_AUDIO_SETTINGS\"/>"
]
}
}
}
}
iOS
需要在 manifest.json 中添加麦克风权限说明:
{
"app-plus": {
"distribute": {
"ios": {
"privacyDescription": {
"NSMicrophoneUsageDescription": "需要使用麦克风进行录音"
}
}
}
}
}
注意事项
- Android 最低 SDK 版本为 21
- iOS 最低版本为 12.0
- 使用完毕后务必调用
release()释放资源 - PCM 数据格式为 16bit 有符号整数,小端序
示例项目
项目包含完整的测试页面 pages/audioRecorder/audioRecorder.vue,包含:
- 录音控制按钮
- 实时数据统计
- 音频波形可视化
- 运行日志输出
版本历史
1.0.0 (2024-02-10)
- 初始版本
- 支持 Android/iOS 双平台
- 实时 PCM 数据回调
- 暂停/恢复功能
开发文档
参考 UTS 插件开发文档:

收藏人数:
下载插件并导入HBuilderX
赞赏(0)
下载 3
赞赏 0
下载 11221129
赞赏 1858
赞赏
京公网安备:11010802035340号