我有我需要显示现场麦克风音频频率的网站。 我有一个this code,但它非常难以理解(它使用傅立叶变换和所有)。 在一些研究中,我了解了getByteFrequencyData()
,它返回音频的频率。有没有人用过Live Audio最好在Web Audio API中使用它?使用WebAudio API计算现场麦克风音频频率的简单代码
5
A
回答
8
“显示频率”可能意味着很多事情。实际上,我的PitchDetect演示不使用傅里叶变换 - 它使用自相关。但这只会给你一个高精度的单一音调。如果你的信号有多个同步音符 - 好吧,这是一个难题。
如果您想查看实时麦克风输入的频率分析细目,请查看http://webaudiodemos.appspot.com/AudioRecorder/index.html(代码为https://github.com/cwilso/AudioRecorder)。它使用RealtimeAnalyser中的内置FFT来显示实时音频信号的频谱图。
7
我写一个简单的代码,您可以显示在您的网页频率:
<body>
<audio id="audio" src="2.mp3"></audio>
<div id="bar">
<div id="P10" class="p"></div>
<div id="P20" class="p"></div>
<div id="P30" class="p"></div>
<div id="P40" class="p"></div>
<div id="P50" class="p"></div>
<div id="P60" class="p"></div>
<div id="P70" class="p"></div>
<div id="P80" class="p"></div>
<div id="P90" class="p"></div>
</div>
而且剧本是
<style>
#bar {
position: fixed;
top: 20%;
left: 40%;
width: 40%;
height: 40%;
-webkit-transition: 0.1s ease all;
}
.p {
background-color: blue;
height: 100%;
width: 10%;
float: left;
}
</style>
<script>
window.onload = function() {
audioCtx = new AudioContext();
analyser = audioCtx.createAnalyser();
source = audioCtx.createMediaElementSource(audio);
source.connect(analyser);
analyser.connect(audioCtx.destination);
analyser.fftSize = 32;
var frequencyData = new Uint8Array(analyser.frequencyBinCount);
function renderFrame() {
analyser.getByteFrequencyData(frequencyData);
P10.style.height = ((frequencyData[0] * 100)/256) + "%";
P20.style.height = ((frequencyData[1] * 100)/256) + "%";
P30.style.height = ((frequencyData[2] * 100)/256) + "%";
P40.style.height = ((frequencyData[3] * 100)/256) + "%";
P50.style.height = ((frequencyData[4] * 100)/256) + "%";
P60.style.height = ((frequencyData[5] * 100)/256) + "%";
P70.style.height = ((frequencyData[6] * 100)/256) + "%";
P80.style.height = ((frequencyData[7] * 100)/256) + "%";
P90.style.height = ((frequencyData[8] * 100)/256) + "%";
console.log(frequencyData)
requestAnimationFrame(renderFrame);
}
audio.pause();
audio.play();
renderFrame();
};
</script>
好运。
相关问题
- 1. Android,如何使用麦克风来计算声音频率?
- 2. 如何计算分贝单位的麦克风音频输入功率
- 3. 使用HTML5麦克风录制音频?
- 4. 如何知道麦克风的音频频率
- 5. 麦克风的现场音频峰值检测
- 6. 麦克风音频可视化器网络音频API
- 7. 如何使用Skype4Com找到麦克风音频的采样率?
- 8. 使用AudioKit麦克风的音轨频率
- 9. Julius使用音频代替麦克风的语音识别
- 10. 静音麦克风音频getUserMedia
- 11. 如何使用移动麦克风读取声音频率?
- 12. 一个简单的实时麦克风音频表中的Android
- 13. 处理iOS麦克风输入并计算频率? (Swift)
- 14. 实时播放麦克风的音频
- 15. 强制音频输入到麦克风
- 16. 麦克风/扬声器音频反馈
- 17. JavaScript和麦克风音频流
- 18. MonoTouch:从麦克风捕获音频流
- 19. 麦克风UDP实时音频流
- 20. 从HTML5音频麦克风流
- 21. Android音频流和麦克风
- 22. Android - 从不同频率的麦克风播放声音
- 23. 获取音频数据从麦克风
- 24. 如何使用谐波数据计算麦克风输入的基本频率
- 25. 使用Qt处理来自麦克风的音频声音
- 26. 麦克风音高/频率检测(尤其是动作3.0)
- 27. 如何计算音频记录器麦克风输入数据的频率水平
- 28. 如何将系统麦克风音频流传输到连接的设备麦克风音频流
- 29. 使用WebAudio API播放音频流
- 30. 简单的Pygame音频频率
我正在寻找一个这样的酒吧简单的例子,谢谢! – Macumbaomuerte
我不能相信它,它是完美的!谢谢 ! –