pcm-player/example/index.html

48 lines
1.4 KiB
HTML

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Opus to PCM</title>
</head>
<body>
<div id="container" style="width: 400px; margin: 0 auto; font-size: 30px;">
It should play audio if everying went well!
</div>
<script>
var orgSampleRate = 8000,
channels = 1,
configFlag = false;
var opsuToPCM = new OpusToPCM({
orgSampleRate: orgSampleRate,
channels: channels
});
var player = new PCMPlayer();
var ws = new WebSocket(this.url);
ws.addEventListener('message',function(event) {
var data = new Uint8Array(event.data);
opsuToPCM.decode(data).then(function(pcmData) {
/*
Sample rate in opus is not fixed.
It can vary depending on hardware rate. But
we need sample rate for playing PCM data using audio context,
so lets set sampelRate here returned by decoder.
*/
if (!configFlag) {
var samppleRate = opsuToPCM.getSampleRate();
player.setConfig(samppleRate, channels);
configFlag = true;
}
player.feed(pcmData);
});
});
</script>
<script type="text/javascript" src="dist/opus-to-pcm.js"></script>
<script type="text/javascript" src="player/pcm-player.js"></script>
</body>
</html>