这篇文章主要为大家展示了小程序中wx.getRecorderManager()录音管理怎么用,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带大家一起来研究并学习一下“小程序中wx.getRecorderManager()录音
这篇文章主要为大家展示了小程序中wx.getRecorderManager()录音管理怎么用,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带大家一起来研究并学习一下“小程序中wx.getRecorderManager()录音管理怎么用”这篇文章吧。
基础库 1.6.0 开始支持,低版本需做兼容处理,获取全局唯一的录音管理器 recorderManager。
// 录音管理let record = function (recorderManager) { this.recorderManager = recorderManager this.recordStart()}record.prototype = { // 开始录音 start: function (startObj) { this.recorderManager.start(startObj) }, //录音开始事件 recordStart: function () { this.recorderManager.onStart(() => { console.log(this.recorderManager, 'this.recorderManager') }) }}
//录音管理,new 出 第二阶段的实例 recorderManager = wx.getRecorderManager() that.newRecord = new record(recorderManager) that.newRecord.recorderManager.onStop((res) => { console.log(res, '获取录制完的链接') }) //播放录音 innerAudiocontext = wx.createInnerAudioContext() innerAudioContext.onEnded(() => { console.log("音频自然播放结束") })
startRecord() { let that = this, startObj = { duration: 60000, sampleRate: 44100, numberOfChannels: 1, encodeBitRate: 192000, fORMat: 'mp3', frameSize: 50 } //录音开始 that.newRecord.start(startObj) // 录音计时器 recordTimeInterval = setInterval(function () { }, 1000) },
stopRecord() { clearInterval(recordTimeInterval); //停止录音事件 this.newRecord.recorderManager.stop() }
// 播放录音 playVoice(e) { let that = this let srcPath = e.currentTarget.dataset.temppath, // 点击当前传递的播放链接 duration = e.currentTarget.dataset.duration, // 录音时间 index = e.currentTarget.dataset.index // 索引 checkArr[index] = srcPath //用于页面判断播放一个,另一个暂停 // 播放 innerAudioContext.obeyMuteSwitch = false innerAudioContext.src = srcPath innerAudioContext.play() // 时间减少器 playTimeInterval = setInterval(() => { let playTime = that.data.playTime += 1 }, 1000) }
// 停止播放 stopVoice(forIndex, e) { let index; e !== undefined ? index = e.currentTarget.dataset.index : index = forIndex clearInterval(playTimeInterval) checkArr[index] = undefined innerAudioContext.stop() }
// 只能播放一个 onePlayFor(tempFilePath, src) { tempFilePath.forEach((el, i) => { if (el.tempFilePath !== src) { this.stopVoice(i) } }) }
录音与停止录音使用小程序bind:touchstart='startRecord' bind:touchend='stopRecord' 事件
以上就是关于“小程序中wx.getRecorderManager()录音管理怎么用”的内容,如果该文章对您有所帮助并觉得写得不错,劳请分享给您的好友一起学习新知识,若想了解更多相关知识内容,请多多关注编程网精选频道。
--结束END--
本文标题: 小程序中wx.getRecorderManager()录音管理怎么用
本文链接: https://lsjlt.com/news/308146.html(转载时请注明来源链接)
有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341
2024-05-24
2024-05-24
2024-05-24
2024-05-24
2024-05-24
2024-05-24
2024-05-24
2024-05-24
2024-05-24
2024-05-24
回答
回答
回答
回答
回答
回答
回答
回答
回答
回答
0