更新记录

1.0.0(2025-08-02) 下载此版本

yao-RecordFrame

web audio api录音


平台兼容性

uni-app(4.07)

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

yao-RecordFrame

配置

需要将模块下uni_modules/yao-RecordFrame的dist复制到static目录下面 或者 将uni_modules/yao-RecordFrame/dist目录的配置文件放到static/dist目录下面

说明

插件只适用于接实时语音识别的模型,不适合录音上传

示例代码

<template>
    <view class="content">
        <view class="start-record" @click="onStartRecord">开始录音</view>
        <view class="stop-record" @click="onStopRecord">停止录音</view>

        <view class="frame">
            <view>实时回调:是否是最后一帧:{{isLastFrame}}</view>
            <view class="frameBuffer">{{frameBuffer}}</view>
        </view>

        <yao-RecordFrame
        ref="recordFrame"
        @onFrameRecorded="frameRecorded"
        @onStop="stopIt"></yao-RecordFrame>
    </view>
</template>

<script>
    export default {
        data() {
            return {
                frameBuffer:'',//实时帧的frameBuffer值
                isLastFrame:false,//是否是最后一帧
            }
        },
        onLoad() {

        },
        methods: {
            onStartRecord(){
                //开启录音(仅支持两种参数)
                this.$refs.recordFrame.start({
                    sampleRate:16000,
                    frameSize:1024
                })
            },
            onStopRecord(){
                //停止录音
                this.$refs.recordFrame.stop();
            },
            //停止录音
            stopIt(base64){
                //base64音频只能在浏览器播放
                //也可以base64音频转成文件音频可app播放
                console.log(base64);
            },
            frameRecorded({isLastFrame,frameBuffer}){
                console.log(isLastFrame,frameBuffer);
                if(!isLastFrame){
                    this.frameBuffer=frameBuffer;
                }

                this.isLastFrame=isLastFrame?'true':'false';
            }
        }
    }
</script>

隐私、权限声明

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

需要麦克风权限

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

插件不采集任何数据

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

许可协议

MIT协议