问题标签 [amplitude]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
2796 浏览

qt - Qt - 从 QBytearray 获取音频幅度

我正在尝试使用 Qt (c++) 创建一个程序,该程序可以使用 QAudioinput 和 QIODevice 从我的麦克风录制音频。我进行了一项研究,并想出了一个位于此页面上的示例。这个例子做我需要的。

现在,我正在尝试创建录制声音的音频波形。我想提取音频幅度并将它们保存在 QList 中。为此,我使用以下代码:

m_audioInput 是 QAudioinput | m_buffer 是 QBytearray | m_input 是 QIODevice | btlist 是 QList

我使用以下 QAudioFormat:

当我打印我的 QList 时,使用 qWarning() << btlist.at(int),我得到一些代表我的音频幅度的正数和负数。我使用 Microsoft Excel 绘制数据并将其与实际声音波形进行比较。

(根据 OP 评论进行编辑)我正在像这样在 Qt 中使用 QPainter 绘制波形

问题是我的 QList 在像这样的幅度数据之间也有很多零 (0) ,如果我将其绘制为波形,它们是一条直线,这是不正常的,因为它会损坏我的波形。我的问题是为什么会这样?这些零 (0) 代表什么?难道我做错了什么?另外,有没有更好的方法从 QBytearray 中提取音频幅度?

谢谢你。

0 投票
1 回答
521 浏览

java - 如何为 2 个或更多通道绘制波形:从 2 个或更多通道获取幅度?

我正在做一个项目,需要在向我提供波形文件时对音频进行信号处理。我知道如何使用公式使用通道的样本值计算幅度

但是该怎么办如果我说 6 个通道,我需要如何处理每个通道的样本值以获得绘制波形的幅度。我正在读取波形文件

这可能给了我帧中的样本值

其中每个样本是一个 8 位或 16 位的值。

0 投票
3 回答
3024 浏览

c# - 需要音频分析库来从音频文件创建实时反馈?

不一定需要实时,但是我正在为我最后一年的项目创建一个游戏,我希望使用音频的力量来创建仅基于正在播放的音乐曲目的动态关卡。我的目标是使用 playstation mobile 和 C# 为 PS Vita 创建这个游戏,但如果我愿意,我可以切换到 C++ 和 PSP。

我可以使用 WAV 文件,并希望提取波形的幅度,并从这些数据中计算其他特征,例如平均频率和近似 BPM,以创建一个电平。

我对尝试使用这些原始数据没有任何疑虑,我只想知道一种方法,我可以首先实际获取这些信息。如果我可以提取样本并断言这些样本的不同特征,我可以存储它们并计算出响度、音高等的变化来创建音符等。

我正在使用 C#,但如果可能的话,我可以使用 p/invoke 或将我的项目切换到另一个使用 C++ 而不是 C# 的设备。

我在这里有点恐慌,因为我真的有点难过。

非常感谢你们。

0 投票
1 回答
1539 浏览

audio - 采样 wav 文件以获取特定时间的幅度

我想知道是否有任何方法可以循环浏览 .wav 文件以获取 wav 文件中特定点的振幅/DB。我现在正在将它读入一个字节数组,但这对我来说没有任何帮助。

我将它与我开发的一些硬件结合使用,这些硬件将光数据编码为二进制并输出音频。我不会详细介绍,但我需要能够在 c# 或 c++ 中执行此操作。我在任何地方都找不到有关此的任何信息。我从未编写过任何与音频相关的东西,所以如果这是一件非常简单的事情,请原谅。

我没有任何开始,因为这是起点,所以如果有人能指出一些函数、库或方法,以便能够在文件中的特定时间收集波的幅度,我将不胜感激。

我希望这是足够的信息,如果您愿意提供帮助,请提前感谢您。

0 投票
2 回答
9800 浏览

python - (numpy)FFT阵列的错误幅度(?)?

我正在使用 numpy 和 matplotlib 从我的模拟中分析数据输出。有一个(明显的)不一致之处,我找不到其根源。如下:

我有一个具有给定能量 a^2~1 的信号。当我使用 rfft 进行 FFT 并计算傅里叶空间中的能量时,它会明显更大。为了避免提供我的数据等的详细信息,这里有一个简单的正弦波示例:

原则上,这两个数字应该是相同的(至少在数字意义上),但这就是我从这段代码中得到的:

我试图通过 numpy.fft 文档但找不到任何东西。这里的搜索给出了以下内容,但我无法理解那里的解释:

现有(合成)信号与滤波信号之间的 FFT 幅度差异很大

我错过了什么/误解了什么?在这方面的任何帮助/指针将不胜感激。

谢谢!

0 投票
1 回答
1622 浏览

java - 我需要一些帮助来使用 java 读取 WAV 文件并确定它的各种幅度

从本质上讲,我要问的问题是,当 wav 文件的数据由于是一个大文件而导致剪辑崩溃时,我如何查看它的数据,然后在歌曲播放时确定它的振幅。将程序中的这些振荡想象为像 winamp 一样可视化音乐。在这种情况下,我需要形成声波的数值。

我对采样率之类的东西进行了一些疯狂的研究,甚至设法找到了一些代码,但这对我完成这项任务没有帮助。

如果有人能提供粗略的大纲和一些代码,我将不胜感激。谢谢

0 投票
1 回答
709 浏览

java - MediaRecorder.getMaxAmplitude 总是返回 0

我是 Java 新手,我的英语也不是最好的。我想编写一个测量记录幅度的应用程序。该应用程序的工作原理是幅度始终为 0。我现在已经阅读了几个网站,但没有找到答案。如果有人帮助我,我会很高兴。

谢谢您的帮助!

0 投票
1 回答
6212 浏览

c# - how to change frequency ( pitch) and the amplitude in wave file using c#

how to change frequency (pitch) and the amplitude in wave file using c# like this but on wave file not tone http://www.youtube.com/watch?v=Tumpkl-xJuA

0 投票
0 回答
1204 浏览

c - 使用 fftw c 库获取前 4 个谐波的幅度和相位

我有一个周期性的 360 值系列。如何使用 fftw c 库获取第一、第二、第三和第四谐波的幅度和相位?

如果我这样做 N=360

我可以得到离散傅里叶变换,其中 output_array[i] 是半复数数组的第 i 个元素的实部,而 output_array[Ni] 是第 i 个值的虚部。

因此,如果我想要一次谐波的幅度或幅度(??),我应该这样做吗?

那是对的吗?那么二次谐波的幅度将是相同的,但使用 output_array[2] 等等,对吗?

那么我怎样才能得到一、二、三、四次谐波的相位呢?

谢谢你。

0 投票
0 回答
685 浏览

android - 录音时如何显示波形并与播放时的波形同步

我遇到过这样的问题,就是边录边显示波形,就像recforge app里显示的一样。随着录音的进行,波形应该一点一点地显示出来,播放相同的录音时波形应该是一样的。

我希望录音格式可以是amr。

下面是我尝试过的:使用mediarecord的getMaxAmplitude获取值并使用Drawline绘制出来,这似乎可行,但问题是当我参考ringdroid的源代码播放时,我发现波形不同步与录音。

那我就想问一下,怎么让录音和播放的波形显示一样,怎么从cheapAmr.java中获取录音的Amplitude

recforce : https://play.google.com/store/apps/details?id=dje073.android.audiorecorderlite&hl=zh_CN

环形机器人:https : //play.google.com/store/apps/details? id=com.ringdroid