更新记录

1.0.4(2026-01-07) 下载此版本

更像返回值为number[] 数组,从回调里处理,否则有兼容性问题

1.0.3(2026-01-07) 下载此版本

添加录音权限申请

1.0.2(2026-01-06) 下载此版本

调整回调返回值为ArrayBuffer

查看更多

平台兼容性

uni-app(4.75)

Vue2 Vue3 Vue2插件版本 Chrome Safari app-vue app-nvue Android iOS 鸿蒙
- 1.0.0 -
微信小程序 支付宝小程序 抖音小程序 百度小程序 快手小程序 京东小程序 鸿蒙元服务 QQ小程序 飞书小程序 快应用-华为 快应用-联盟
- - - - - - - - - -

uni-app x(4.75)

Chrome Safari Android iOS 鸿蒙 微信小程序
- - - - - -

wxz-record

支持PCM录音实时帧回调的UTS插件

功能特性

  • ✅ 支持PCM格式录音
  • ✅ 实时帧回调,可获取录音过程中的PCM数据
  • ✅ 支持自定义采样率、声道数、位深
  • ✅ 支持Android、iOS、HarmonyOS平台

使用方法

引入插件

import { startRecord, stopRecord, StartRecordOptions, StopRecordOptions } from '@/uni_modules/wxz-record'

开始录音

startRecord({
  config: {
    sampleRate: 16000,      // 采样率,默认16000
    channels: 1,            // 声道数,1=单声道,2=立体声,默认1
    bitsPerSample: 16,       // 位深,8/16/24/32,默认16
    frameSize: 4096         // 帧大小(字节),每次回调的PCM数据大小,默认4096
  },
  onFrame: (data: ArrayBuffer) => {
    // 实时接收PCM数据帧
    console.log('收到PCM数据,大小:', data.byteLength);
    // 处理PCM数据...
  },
  success: (res) => {
    console.log('录音开始成功', res);
  },
  fail: (err) => {
    console.error('录音开始失败', err);
  }
});

停止录音

stopRecord({
  success: (res) => {
    console.log('录音停止成功', res);
    console.log('录音时长:', res.duration, 'ms');
  },
  fail: (err) => {
    console.error('录音停止失败', err);
  }
});

配置说明

录音配置参数

参数 类型 默认值 说明
sampleRate number 16000 采样率(Hz),常见值:8000, 16000, 44100, 48000
channels number 1 声道数,1=单声道,2=立体声
bitsPerSample number 16 位深,支持8/16/24/32
frameSize number 4096 每次回调的PCM数据大小(字节)

错误码

错误码 说明
9010001 录音权限被拒绝
9010002 录音初始化失败
9010003 录音启动失败
9010004 录音停止失败
9010005 录音过程中发生错误
9010006 参数错误

权限配置

Android

插件已自动配置 RECORD_AUDIO 权限,需要在应用manifest中声明。

iOS

插件已自动配置 NSMicrophoneUsageDescription,需要在Info.plist中配置权限说明。

HarmonyOS

插件已自动配置 ohos.permission.MICROPHONE 权限。

开发文档

UTS 语法 UTS API插件 UTS uni-app兼容模式组件 UTS 标准模式组件 Hello UTS

隐私、权限声明

1. 本插件需要申请的系统权限列表:

麦克风

2. 本插件采集的数据、发送的服务器地址、以及数据用途说明:

3. 本插件是否包含广告,如包含需详细说明广告表达方式、展示频率:

许可协议

MIT协议