中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

微信小程序怎么獲取音頻時長與實時獲取播放進度問題

發布時間:2021-05-22 13:24:55 來源:億速云 閱讀:2546 作者:小新 欄目:web開發

小編給大家分享一下微信小程序怎么獲取音頻時長與實時獲取播放進度問題,希望大家閱讀完這篇文章之后都有所收獲,下面讓我們一起去探討吧!

首先在沒有播放音頻之前,居然拿不到總時長

但是在播放之后也需要設置setTimeout來獲取

所以在監聽音頻播放進度更新事件中獲取。順便獲取當前播放進度

按照官方的寫法

audioPlayed: function () {
  myAudio.play()
  setTieout(() => {
    myAudio.onTimeUpdate(() => {
      console.log(myAudio.duration)  //總時長
      console.log(myAudio.currentTime)  //當前播放進度
    })
  }, 500)
}

但是這兩個console都沒有觸發,很是神奇

增加延遲的時間也沒有用

打斷點都沒有進去

但是!

audioPlayed: function () {
  myAudio.play()
  setTieout(() => {
    myAudio.currentTime
    myAudio.onTimeUpdate(() => {
      console.log(myAudio.duration)  //總時長
      console.log(myAudio.currentTime)  //當前播放進度
    })
  }, 500)
}

在里面寫了一個

myAudio.currentTime  或者   myAudio.duration

斷點就進去了,console也出來了

由于過于神奇,所以記錄一下

下面看下微信小程序音頻長度獲取的問題

小程序推薦使用wx.createInnerAudioContext()創建的innerAudioContext,我們也通過這個接口創建音頻。

音頻的長度可以通過屬性獲取:

微信小程序怎么獲取音頻時長與實時獲取播放進度問題

但是,給innerAudioContext賦值src后就能獲取嗎,請看下面的例子:

onLoad: function () {
    bgM = wx.createInnerAudioContext();
    bgM.src = 'https://upyun.lesson.bbwansha.com/dub/user/2.mp3';
    console.log(bgM.duration);//0
    bgM.onCanplay(()=>{
       console.log(bgM.duration)//0
    })
    bgM.play();
    bgM.onPlay(()=>{
       console.log(bgM.duration)//0
    })
    setTimeout(()=>{
      console.log(bgM.duration)//2.795102
    },1000)
},

賦值結束后不能獲取能夠理解,在onCanplay,onPlay沒法獲取有點難以理解。

還好,我們通過setTimeout可以獲取到。

獲取到之后,還有個問題,在開發工具里,音頻播放完之后,duration不變。

偶爾出現的問題:但在真機上,duration變為0了,也就是第二遍播放的時候,獲取不到duration了。這個可以聲明個個變量解決。

看完了這篇文章,相信你對“微信小程序怎么獲取音頻時長與實時獲取播放進度問題”有了一定的了解,如果想了解更多相關知識,歡迎關注億速云行業資訊頻道,感謝各位的閱讀!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

五寨县| 西贡区| 慈溪市| 永平县| 荥阳市| 青田县| 台东市| 城固县| 卫辉市| 呼玛县| 永胜县| 铁岭市| 北流市| 辽阳市| 郸城县| 高陵县| 同江市| 浮梁县| 卢氏县| 武隆县| 屯门区| 林芝县| 盈江县| 潜江市| 双牌县| 海宁市| 拜泉县| 木兰县| 昌宁县| 盐亭县| 黎城县| 泾阳县| 聊城市| 尼勒克县| 马尔康县| 东莞市| 台南市| 内黄县| 水富县| 阿拉善右旗| 阜宁县|