前提・実現したいこと
合唱のパートの音源を並行して重なり合うように流したい。
発生している問題・エラーメッセージ
最初から流したときはうまく重なるのですが、currentTimeをかえて途中から流すと何故かずれます。
該当のソースコード
html
1<button onclick="play_pause()"></button>
javascript
1let sop = new Audio('./audio/Sop.mp3'); 2let alt = new Audio('./audio/Alt.mp3'); 3let ten = new Audio('./audio/Ten.mp3'); 4let bas = new Audio('./audio/Bas.mp3'); 5 6//うまく行く場合 7function play_pause() { 8 if (sop.paused) { 9 sop.play(); 10 alt.play(); 11 ten.play(); 12 bas.play(); 13 } else { 14 sop.pause(); 15 alt.pause(); 16 ten.pause(); 17 bas.pause(); 18 } 19} 20 21//うまく行かない場合 22function play_pause() { 23 if (sop.paused) { 24 sop.currentTime = 100; 25 alt.currentTime = 100; 26 ten.currentTime = 100; 27 bas.currentTime = 100; 28 sop.play(); 29 alt.play(); 30 ten.play(); 31 bas.play(); 32 } else { 33 sop.pause(); 34 alt.pause(); 35 ten.pause(); 36 bas.pause(); 37 } 38}
試したこと
play()をsetTimeoutで少し遅くしてみた。
補足情報(FW/ツールのバージョンなど)
ブラウザ chrome 84.0.4147.125(Official Build)
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。