blob: 28474db8ae3e3e99847cfd8416edf1bac3266c08 [file] [log] [blame]
<!doctype html>
<html>
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1, user-scalable=no">
<meta name="apple-mobile-web-app-capable" content="yes"> <!-- Fullscreen Landscape on iOS -->
<link rel="stylesheet" href="../common/reset.css">
</head>
<body>
<div id="main"></div>
<script src="../common/echarts.js"></script>
<script src="../common/StageControl.js"></script>
<script src="../texture/sample.jpg.js"></script>
<script>
var UPDATE_DURATION = 20;
var chart = echarts.init(document.getElementById('main'));
window.AudioContext = window.AudioContext || window.webkitAudioContext;
var audioContext = new AudioContext();
var oReq = new XMLHttpRequest();
oReq.open('GET', '../data/roll-it-up.mp3', true);
oReq.responseType = 'arraybuffer';
oReq.onload = function(e) {
audioContext.decodeAudioData(oReq.response, drawWaveform);
};
oReq.send();
function drawWaveform(audioBuffer) {
var leftChannel = audioBuffer.getChannelData(0);
var data = [];
console.log(leftChannel.length);
for (var i = 10000; i < 200000; i++) {
data.push([i, leftChannel[i]]);
}
chart.setOption({
tooltip: {},
grid: {
top: 0,left:0,right:0,bottom:0
},
xAxis: {
show: false,
type: 'value',
min: 'dataMin',
max: 'dataMax'
},
yAxis: {
show: false,
type: 'value'
},
series: [{
type: 'line',
symbol: 'none',
data: data,
lineStyle: {
normal: {
width: 0.5,
color: '#15f0ff'
}
}
}]
});
}
window.addEventListener('resize', function () {
chart.resize();
});
</script>
</body>
</html>