<div class="offscreen">
<audio id="msg" preload="auto">
<source type="audio/mpeg" src="/msg.mp3">
<source type="audio/wav" src="/msg.wav">
<source type="audio/ogg" src="/msg.ogg">
<embed src="/msg.wav" type="audio/wav" autostart="0" autoplay="0" width="1" height="1" id="msg2" enablejavascript="1">
</audio>
</div>
document.querySelector('source[src="/msg.mp3"]').src = "data:audio/mpeg;base64,<и т.д. то что получено в сервисе data uri>"
javascript:void(document.querySelector('source[src="/msg.mp3"]').src = "data:audio/mpeg;base64,<и т.д. то что получено в сервисе data uri>");
и при нажатии на неё файл будет заменяться. const source = document.querySelector('source[src="/msg.mp3"]')
source.src = "data:audio/mpeg;base64,<и т.д. то что получено в сервисе data uri>";
const audio = source.parentNode;
audio.load();
audio.volume = 1;
const audioContext = new AudioContext();
const gainNode = new GainNode(audioContext, { gain: 10 });
audioContext
.createMediaElementSource(audio)
.connect(gainNode)
.connect(audioContext.destination);