【发布时间】:2012-01-13 00:51:22
【问题描述】:
我正在尝试通过将电影文件拆分为相机镜头来分析电影文件,然后尝试确定哪些镜头比其他镜头更重要。我在考虑镜头重要性的因素之一是电影那部分的音量有多大。为此,我正在分析相应的声音文件。我无法确定一个镜头有多“响亮”,因为我认为我没有完全理解 WAV 文件中的数据代表什么。
我使用类似于this post 中描述的方法将文件读入音频缓冲区。
已经将相应的视频文件分割成镜头,我现在正试图找出 WAV 文件中哪些镜头比其他镜头更响亮。我试图通过像这样提取文件中的每个样本来做到这一点:
double amplitude = (double)((audioData[i] & 0xff) | (audioData[i + 1] << 8));
我读过的其他一些帖子似乎表明我需要对这个音频数据应用快速傅立叶变换以获得幅度,这让我想知道我提取的值实际代表什么。我在做什么正确吗?我的声音文件格式是 16 位单声道 PCM,采样率为 22,050 Hz。当我试图分析文件的体积时,我应该用这个 22,050 的值做些什么吗? Other posts 建议使用均方根来评估响度。这是必需的,还是只是一种更准确的方法?
我研究得越多,我就越困惑。如果有人能解释我的错误和误解,我将不胜感激!
【问题讨论】: