首页 > 编程语言 >纯前端实现微信小程序录音后自动将语音转文字的同声传译功能

纯前端实现微信小程序录音后自动将语音转文字的同声传译功能

时间:2024-10-28 20:48:05浏览次数:9  
标签:插件 微信 WechatSIManager 录音 传译 同声 组件

 本文将手把手教你如何借助微信官方提供的微信同声传译插件,不依赖后端接口,纯前端实现微信小程序录音后自动将语音转文字功能。我们需要依赖微信官方提供的微信同声传译插件。首先,需要进入微信公众平台添加插件。

一、登录微信公众平台 ,进入账号设置

二、进入第三方设置,添加插件

三、搜索插件,微信同声传译,搜索后添加。

四、添加之后微信需要审核,审核通过后会看到如下详情,需要记下这里的AppID,后面会用到。

五、插件添加成功被授权使用以后就可以进行代码逻辑的编写。接下来我们进入到代码编写阶段。在app.json文件中添加如下代码,加载插件。

"plugins": {
    "WechatSI": {
      "version": "0.3.6",
      "provider": "wx069ba97219f66d99"
    }
 }

六、在组件wxml文件,编写页面并且绑定录音和停止录音事件。

下面演示两个按钮,一个点击后开始录音,一个点击后结束录音。上面显示转换后的文字内容。

<view class="record-action">
    <view>{{recordText}}</view>
    <button class="record-start" bindtap="startRecord">开始录音</button>
    <button class="record-stop" bindtap="stopRecord">结束录音</button>
</view>

七、组件的index.js文件编写

首先,引入微信同声传译插件,接着初始化定义录音开始和结束的回调函数(通常就是我们需要处理的业务代码),最后在录音开始和结束的地方执行微信同声传译插件的start 和stop方法即可。详细代码如下。

// 引入微信同声传译插件
const WechatSIPlugin = requirePlugin("WechatSI");
const WechatSIManager = WechatSIPlugin.getRecordRecognitionManager();
Component({
  /**
   * 组件的属性列表
   */
  properties: {},

  /**
   * 组件的初始数据
   */
  data: {
    recordingText: '', // 转换后的文字
  },
   /**
   * 组件的初始化
   */
  attached() {
    // 初始化识别语音方法
    this.initRecord();
  },
    /**
   * 组件销毁
   */
  detached() {
    // 组件销毁时执行的代码
    WechatSIManager.stop();
  },
  /**
   * 组件的方法列表
   */
  methods: {
    // 初始化定义录音开始和结束的回调函数
    initRecord() {
      // 识别语音开始
      WechatSIManager.onStart = (res) => {
        // 开始录音后的业务逻辑……
        console.log("WechatSIManager onStart", res);
      };
      // 识别语音结束回调函数
      WechatSIManager.onStop = (res) => {
        // 录音结束后的业务逻辑……,下面为了演示把录音转成的文字显示到页面上
        if (res.result) {
          this.setData({ recordingText: res.result });
        }
      };
      // 录音发送错误时
      WechatSIManager.onError = (res) => {
        // 确保在错误处理中停止录音
        WechatSIManager.stop();
        showToast(res.msg);
      };
    },
   
    // 开始录音
    startRecord() {
      WechatSIManager.start({ duration: 60000, lang: "zh_CN" }), // // 会自动触发WechatSIManager.onStar方法
    },
    // 结束录音
    stopRecord() {
      WechatSIManager.stop(); // 会自动触发WechatSIManager.onStop方法
    },
  },
});

八、在页面使用上面的录音组件。例如我在home页面使用。

home.json文件中引入刚才写的record组件内容:

{
  "usingComponents": {
    "recordToText": "./components/record/index"
  }
}

home.wxml文件中引入刚才写的record组件:

<view class="container">
    <recordToText />
</view>

总结

本文我们介绍了如何在微信小程序项目中引入微信同声传译组件,并且封装了一个语音转文字的功能组件,最后演示了如何在其他页面引入我们封装的语音转文字的功能组件。希望本文能给你带来一些收获。

标签:插件,微信,WechatSIManager,录音,传译,同声,组件
From: https://blog.csdn.net/qq_37268201/article/details/143311306

相关文章

  • (开题报告)django+vue心理健康科普微信小程序的设计与实现论文+源码
    本系统(程序+源码+数据库+调试部署+开发环境)带论文文档1万字以上,文末可获取,系统界面在最后面。系统程序文件列表开题报告内容一、选题背景关于心理健康科普方面的研究,现有研究主要以传统的网页平台或线下方式为主。在国内外,虽然有众多心理健康相关的研究成果,但专门针对心理......
  • python+flask计算机毕业设计高校图书馆综合服务微信小程序的设计与实现服务端(程序+开
    本系统(程序+源码+数据库+调试部署+开发环境)带论文文档1万字以上,文末可获取,系统界面在最后面。系统程序文件列表开题报告内容一、选题背景关于高校图书馆综合服务微信小程序服务端的研究,现有研究主要以图书馆综合服务系统的前端功能或整体架构为主,专门针对其服务端的研究较......
  • 【最新Java必过毕设选题】基于微信小程序的智能商场(源码+万字LW)
    今天向大家分享一个最新完成的高质量毕业设计项目作品基于springboot+uniapp的XXX微信小程序项目评分(最低0分,满分5分)难度系数:3分工作量:5分创新点:3分界面美化:5分使用技术小程序框架:uniapp小程序开发软件:HBuilderX小程序运行软件:微信开发者微信小程序配置环境......
  • 基于SSM框架和微信小程序的旅游自助拼团系统 (含源码数据库)
    1.开发环境开发系统:Windows10/11架构模式:MVC/前后端分离JDK版本:JavaJDK1.8开发工具:IDEA数据库版本:mysql5.7或8.0数据库可视化工具:navicat2.视频演示地址3.功能这个系统包含三个主要角色:管理员、用户和旅行社。管理员负责全面的管理职能,包括订单管理、用......
  • 如何轻松管理50个微信号?看这里!
    无论是个人还是企业,都拥有多个微信号来处理不同的社交和商业需求。但是,管理这么多账号往往让人头疼,今天,我们就来聊聊如何轻松管理50个微信号,让你的工作效率翻倍!1.多微信号同屏聚合聊天个微管理系统的多账号同屏聚合聊天功能,让你告别繁琐的操作。只需登录系统,即可在一个界面......
  • 使用php解析企业微信消息wxwork_finance_sdk扩展安装
    安装参考如果你是用docker环境,请查看GitHub-oh-stone/wework-chatdata-sdk:微信SDK打包非docker环境安装:GitHub-pangdahua/php7-wxwork-finance-sdk:PHP企业微信会话存档扩展liunx为php7.4安装wxwork_finance_sdk扩展1.例如我们使用宝塔环境,php安装路径为:/www/......
  • python+flask框架的基于微信小程序的体检预约系统小程序8(开题+程序+论文) 计算机毕业
    本系统(程序+源码+数据库+调试部署+开发环境)带论文文档1万字以上,文末可获取,系统界面在最后面。系统程序文件列表开题报告内容选题背景随着移动互联网技术的飞速发展,微信小程序作为一种轻量级的应用形式,因其便捷性和即用即走的特性,深受用户喜爱。在医疗健康领域,体检预约系统......
  • python+flask框架的基于微信小程序的体检预约系统后台8(开题+程序+论文) 计算机毕业设
    本系统(程序+源码+数据库+调试部署+开发环境)带论文文档1万字以上,文末可获取,系统界面在最后面。系统程序文件列表开题报告内容选题背景随着移动互联网技术的快速发展,人们越来越依赖于智能手机和各类应用程序来满足日常生活需求。微信小程序作为一种轻量级的应用形式,因其无需......
  • python+flask框架的基于微信小程序的树洞交流平台38(开题+程序+论文) 计算机毕业设计
    本系统(程序+源码+数据库+调试部署+开发环境)带论文文档1万字以上,文末可获取,系统界面在最后面。系统程序文件列表开题报告内容选题背景随着移动互联网技术的飞速发展,社交媒体平台已成为人们日常生活中不可或缺的一部分。微信小程序作为一种轻量级的应用形态,凭借其无需下载、......
  • python+flask框架的基于微信小程序的树洞交流平台(开题+程序+论文) 计算机毕业设计
    本系统(程序+源码+数据库+调试部署+开发环境)带论文文档1万字以上,文末可获取,系统界面在最后面。系统程序文件列表开题报告内容选题背景随着互联网技术的飞速发展,社交媒体平台已成为人们日常交流的重要工具。微信小程序作为一种轻量级的应用形式,凭借其便捷性和即用即走的特性......