首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >我需要将立体声转换为单声道进行FFT运算吗?

我需要将立体声转换为单声道进行FFT运算吗?
EN

Stack Overflow用户
提问于 2013-11-02 18:53:05
回答 1查看 721关注 0票数 2

我发现大多数其他的问题是如何将立体声转换为单声道,但我想知道我是否需要把我的音频数据从立体声转换成单音,这样才能进行FFT?如果我不知道,我知道在两个频道上做FFT,但我如何使用它们来寻找音频的分形维数?如果我这么做了,那么将这两个值相加是否是个好主意?

此外,我有数以百万计的观点,当你看到它们时,你会看到音频信号是什么样子的。如果我有很多点,我为什么要做一个只有1024字节的FFT呢?

这是我使用的音频格式: PCM_SIGNED 44100.0 Hz,16位,立体声,4字节/帧,小终端

当我读取流时缓冲区可能得到的一个例子: 41,0,68,0

如果我只是将两者相加,我就是这样做的:

代码语言:javascript
复制
amplitude1 = (double) (buffer[1] << 8 | buffer[0] & 0xFF) / 32767.0;
amplitude2 = (double) (buffer[3] << 8 | buffer[2] & 0xFF) / 32767.0;
double aveAmp = (amplitude2+amplitude1)/2;
EN

回答 1

Stack Overflow用户

发布于 2013-11-07 00:03:22

声音的真实不是单一的或立体声的,而是空间中的一个领域。“立体声”是一种简单的数据压缩形式,它利用了我们缺少耳朵的优势。Mono只是稍微深入了一点。

也就是说,对于音频来说,“分形维数”并没有得到很好的定义。以立体为例,你可以用左通道作为X坐标,右边通道作为Y坐标,然后得到一条二维路径,有一个相关的分形维数。这将与等效的“单”一维解释同一声音的分形维数完全无关;立体声分形维数将测量真实的立体声内容。(只要复制信号,在立体声中播放mon就会产生1.0的立体分形维数,因为L=R总是--这是一条线)

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/19745573

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档