1
我有一首歌曲,我正在玩Web音頻,我安排兩個playbackRate變化,然後再播放歌曲。第一個playbackRate更改生效,但第二個不會觸發。這是預期的行爲?我錯過了什麼來完成這項工作?網絡音頻:音頻2順序playbackRate值只適用於第一個值
基本邏輯是:
sourceNode = _mySoureNodeGetterFn('blah.mp3');
sourceNode.start(0);
sourceNode.playbackRate.setValueAtTime(.8, 5);
sourceNode.playbackRate.setValueAtTime(1.2, 10);
audioContext.resume();
第二playbackRate值,setValueAtTime(1.2, 10)
,定於10S到歌曲不會觸發。第一個playbackRate觸發很好。
我在Macbook上使用Chrome 56.0.2924.87。
這已經被報告https://bugs.chromium.org/p/chromium/issues/detail?id=645776(莫名其妙),並在58金絲雀固定。另請注意,時間參數是相對於audioContext的時鐘。如果這個值已經過去了,似乎還有一個新的提議使它與currentTime相關,但目前似乎沒有人實現它,並且應該調用'setValueAtTime(val,audioCtx.currentTime + offset)'。 – Kaiido
謝謝@Kaiido。看起來這個問題是在v58金絲雀裏修復的。雖然鉻錯誤似乎有點不同於我所看到的,它隨機/不確定地發生,因爲我的錯誤打破了每一個怪異的時間。解決方案是等待v58然後... – JohnW
是的,我認爲核心問題是一樣的,而bug報告並不完全是同一個問題。但它確實在58年工作。 – Kaiido