Używanie elementu <audio> do odtwarzania surowego dźwięku

Pracuję nad małym projektem, który odszyfrowuje (przy użyciu openpgp.js) i dekoduje plik audio po stronie serwera przy użyciu interfejsu API Web Audio. Odszyfrowany plik dociera do klienta jako surowy dźwięk. Obecnie mogę odtwarzać pliki audio za pomocąsource.start(0) ale wydaje się, że nie ma łatwego sposobu na zrzucenie audio do GUI, które pozwoliłoby użytkownikom robić takie rzeczy, jak regulacja głośności i wyszukiwanie dźwięku.

mamAudioContext obiekt, który został zdekodowany i buforowanycreateBufferSource

function playSound(decodedAudio) {
  var source = context.createBufferSource();
  source.buffer = decodedAudio;
  source.connect(context.destination);
  source.start(0);
}

Ponieważ odbierany jest surowy dźwięk, nie mogę w prosty sposób użyć czegoś takiegoaudio.src = ... z elementem audio. A może pomijam coś oczywistego?
Czy istnieje sposób, aby ten zdekodowany dźwięk w interfejsie API Web Audio dobrze się bawił z miejscem docelowym<audio> element?

Idealny przepływ wyglądałby jak ...
1) Użytkownik klika, aby włączyć odtwarzanie klipu audio
2) Dźwięk jest odszyfrowany po stronie serwera i wysyłany do klienta jako surowy dźwięk
3) Dźwięk jest dekodowany i odtwarzany, możliwy do przeglądania ... itd.

Możliwe rozwiązania, o których chciałbym myśleć
- Ponieważ pliki audio mogą mieścić się w zakresie od 1 minuty do 60 minut, zapisz dźwięk w pliku przy użyciu API FileSystem, a następnie użyj<audio> element do rzeczywistego odtwarzania
- Napisz mój własny system sterowania do wstrzymywania, szorowania i zwiększania głośności nad interfejsem API Web Audio

questionAnswers(1)

yourAnswerToTheQuestion