37 lines
911 B
JavaScript
37 lines
911 B
JavaScript
'use strict';
|
|
|
|
// Create an instance
|
|
var wavesurfer;
|
|
|
|
// Init & load
|
|
document.addEventListener('DOMContentLoaded', function () {
|
|
var micBtn = document.querySelector('#micBtn');
|
|
|
|
// Init wavesurfer
|
|
wavesurfer = WaveSurfer.create({
|
|
container : '#waveform',
|
|
waveColor : 'black',
|
|
interact : false,
|
|
cursorWidth : 0,
|
|
plugins: [
|
|
WaveSurfer.microphone.create()
|
|
]
|
|
});
|
|
|
|
wavesurfer.microphone.on('deviceReady', function() {
|
|
console.info('Device ready!');
|
|
});
|
|
wavesurfer.microphone.on('deviceError', function(code) {
|
|
console.warn('Device error: ' + code);
|
|
});
|
|
|
|
// start/stop mic on button click
|
|
micBtn.onclick = function() {
|
|
if (wavesurfer.microphone.active) {
|
|
wavesurfer.microphone.stop();
|
|
} else {
|
|
wavesurfer.microphone.start();
|
|
}
|
|
};
|
|
});
|