Tidak dapat membuat pemain Tone.js berfungsi dan memainkan satu fail wav
P粉231079976
2023-09-01 10:34:17
<p>无法让 Tone Player 播放任何内容,这是我的简单 VueJs 代码:</p>
<pre class="brush:php;toolbar:false;"><template>
<div>
<h1>Simple Tone.js Demo</h1>
<gaya butang="warna latar belakang: biru kadet; pelapik: 4px 10px;" @click="main">Main</button>
</div>
</template>
<skrip>
import * sebagai Nada daripada "nada";
eksport lalai {
data() {
kembali {
pemain: null,
};
},
kaedah: {
main async() {
cuba {
console.log("Tone.js context state:", Tone.context.state);
jika (Tone.context.state !== "berjalan") {
tunggu Tone.start();
console.log("konteks audio dimulakan");
}
this.player.start();
} tangkap (ralat) {
console.error("Ralat semasa main balik:", error.message, error);
}
},
async initializePlayer() {
console.log(Tone.context.state);
cuba {
this.player = tunggu Tone.Player baharu({
url: "/sounds/rain.wav",
gelung: benar,
autostart: palsu,
}).toDestination();
this.player.loaded;
} tangkap (ralat) {
console.error("Ralat memuatkan fail audio:", ralat);
}
console.log("Fail audio dimuatkan", this.player.loaded);
},
},
dicipta() {
this.initializePlayer();
},
};
</script></pre>
<p>我正在加载的声音存在于正确的位置 sound/rain.wav 并且如果我在 chrome 中输入它的百输入它,我说打开它
http://localhost:5173/sounds/rain.wav
</p>
<p>运行应用程序得到的输出:</p>
<p>了解 Tone.js 的人可以帮助我让播放器播放单个文件吗?我花了一整天的时间天的时,觗件吗?我花了一整天的时,觗件吗甚至使用了 GPT4,但我遇到了同样的问题,播放器无法播放简单的文件。</p>
Saya rasa ralat berlaku kerana
播放器
muat turun audio masih belum selesai.Pembina tidak membalas janji. Kalau nak tunggu
Player
准备就绪,则需要传递onload
函数。通过将其包装在 Promise 中,它可用于等待Player
dah siap.