我试图使用JAVA制作桌面录音机应用程序
我发现JSyn很好,但我不知道如何充分利用它
我不知道如何...处理音频数据。(如果我想分析频域或样本态度,滤除麦克风噪音,使声音听起来像男性或女性,像这样的事情......)
我想制作那些东西"可自定义"。
用户指南说我可以编写一个扩展UnitFilter的自定义单位生成器 但我不知道这些值是什么意思(double [] input,double [] output,start,limit ...)
是否可以使用" AudioSpectrumListener"有这个东西?
对于我来说,这个JAVA菜鸟已经足够强大,可以弄清楚如何从麦克风录制声音。
Synthesizer synth = JSyn.createSynthesizer();
LineIn micIn = new LineIn();
synth.add(micIn);
synth.start(44100, AudioDeviceManager.USE_DEFAULT_DEVICE, 2, AudioDeviceManager.USE_DEFAULT_DEVICE, 2);
File file = new File("record.wav");
try {
WaveRecorder recorder = new WaveRecorder(synth, file);
micIn.output.connect(0,recorder.getInput(),0);
micIn.output.connect(1,recorder.getInput(),1);
recorder.start();
System.out.println("start recording");
Thread.sleep(5000);
System.out.println("stop recording");
recorder.stop();
recorder.close();
synth.stopUnit(micIn);
synth.stop();
...
在此之后,我不知道如何获取数据或如何使声音更响亮或更安静,并且在关闭录音机并停止合成器后程序不会退出。
我错过了什么停止或关闭?
// --- 不,我只是要使用TargetDataLine并像处理another audio data question的答案一样处理数据。