如何从DirectShow中从麦克风接收的原始数据获得响度级别?
IMediaSample以字节为单位保存数据。我怎么能读取这些字节并得到一些东西?
答案 0 :(得分:2)
响度是听觉质量,而不是物理公式。它有很多定义。
这也是一个时间价值。因此,此值会在此期间发生变化。
我记得几年前我见过的最简单的实现,只是将时间放在幅度的最大值上。但幅度的对数肯定更好地接近耳敏感度。
您还可以考虑信号的功率(信号*信号......但是还有更多的定义考虑了频谱成分......)。
这是厨房食谱。选择最简单的。
编辑:似乎我的答案太快而且模糊,我可能会误解音量和响度。 this wikipedia article表示有测量响度的单位。 Sone和Phon。
答案 1 :(得分:1)
您需要处理数据以计算原始字节的响度。其中一种方法在BS.1770 : Algorithms to measure audio programme loudness and true-peak audio level规范中定义,并描述了所涉及的算法。