我想知道是否有人可以为我提供一个好的教程,或者向我展示如何绘制字节数组的幅度。我使用的音频格式是:U LAW 8000.0 Hz,8位,单声道,1字节/帧。 解决方案如下: 听起来您对短期平滑的RMS幅度测量感兴趣。通常情况下,您需要对输入信号进行整流,然后对此应用一个低通滤波器,例如 x1 = abs(x); // x2 = rectified input signal x2 = k * x2 + (1 - k) * x1; // simple single pole low pass recursive fil…

2020年11月27日 0条评论 12点热度 阅读全文

我经历了与我想知道的内容相同的堆栈溢出问题apply gain with variation,但是找不到答案我尝试了他们在上述问题链接中提到的答案,但仍然没有正确或确切的解决方案,但我仍在发出声音(如Walkie-Talkie)。任何做得正确的人。 public class Mediarec extends Activity { public static final int SAMPLE_RATE = 16000; private AudioRecord mRecorder; private File mReco…

2020年8月19日 0条评论 21点热度 阅读全文

从本质上讲,我要问的问题是,当wav文件由于大文件而导致片段崩溃时,如何查看其数据,然后在播放歌曲时确定其幅度。可以将程序中的振荡想像成Winamp来对音乐进行视觉化。在这种情况下,我需要形成声波的数值。 我对诸如采样率之类的东西进行了一些疯狂的研究,甚至设法找到了一些代码,但这并没有帮助我完成这项任务。 如果有人愿意提供一个粗略的轮廓和一些代码,我将不胜感激。谢谢 解决方案如下: 此代码未经测试,但这大致就是您应该做的: File fileIn = new File("C:\\path\\to\\your\\fi…

2020年7月13日 0条评论 15点热度 阅读全文

Searching the web for weeks i came to the following code for calculating the amplitudes of a given .wav file in Java . Now the problem is it doesn't scale well at all with big audio files like let's say 30 minutes , the produces array is huge. 为了绘制它,我使用的是JavaF…

2020年1月9日 0条评论 19点热度 阅读全文

我正在尝试确定使用Java Sound API记录的乐器(小号,吉他等)的振幅,并显示振幅与时间的关系图。我对该API经验不足,也不太确定如何为声波输入计算RMS或FFT。我该如何实现这一目标? import javax.swing.*; import java.awt.*; import java.awt.event.*; import java.io.*; import javax.sound.sampled.*; public class FrequencyAmplitude extends JFrame {…

2019年12月17日 0条评论 17点热度 阅读全文

我对使用Delphi编程还是很陌生,对Java一无所知。但是,我需要使用RAD Studio编写一个程序,该程序可以读取音频输入的幅度。我无法在Delphi中找到一种方法(我负担得起),但确实找到了使用Android API的方法。该解决方案似乎位于MediaRecorder对象中,因此我尝试将其与此代码一起使用。 var Form1: TForm1; RecorderObj: Jobject; Recorder: JMediaRecorder; procedure TForm1.FormCreate(Sender…

2019年6月4日 0条评论 12点热度 阅读全文

我正在尝试制作一个可以记录声音一秒钟的应用程序,然后从记录的声音中读取最大振幅。到目前为止,这是我所拥有的,但是我的应用程序崩溃了,我不知道为什么。 这是我的第二个 Activity ,在我按下“记录”按钮后从第一个 Activity 开始调用。该应用程序在我的模拟器和手机上崩溃。 package radu.soundSampler; import java.io.IOException; import android.app.Activity; import android.content.Intent; imp…

2019年1月25日 0条评论 14点热度 阅读全文