JavaScript ile Mikrofon Verisi Okuma

JavaScript ile mikrofona erişme ve ham veri okuma ve sesin şiddetini bir bar yardımıyla görselleştirme uygulaması.

Proje kodu:

<div style="height: 30px; overflow: hidden">
	<div id="progressBar" style="width: 0%; height: 100%; background-color: #22f"></div>
</div>
<script>
var progressBar = document.getElementById("progressBar");

navigator.mediaDevices.getUserMedia({ audio: true, video: false })
.then(stream => {
	var context = new AudioContext();
	var source = context.createMediaStreamSource(stream);
	var processor = context.createScriptProcessor(1024, 1, 1);
	
	source.connect(processor);
	processor.connect(context.destination);
	
	processor.onaudioprocess = function(e) {
		var channelData = e.inputBuffer.getChannelData(0);
		
		var avg = 0;
		
		channelData.forEach(f => { avg += Math.abs(f); });
		
		avg = (avg / 1024) * 1000;
		
		progressBar.style.width = avg + "%";
	};
});
</script>

 

Yorum Yaz

Yorum yazabilmek için üye girişi yapmanız gerekiyor!

Yukarı Git