所以我想知道什么是最短的(在有效线路方面)打开AL代码从默认麦克风读取数据并输出到默认扬声器?
我正在Visual Studio 2008下的Windows 7上进行开发
我是Java新手,虽然我已经掌握了语法和结构,但我很难从麦克风中获取处理过的数字音频样本.
我想要实现的是非常简单的,而从长远来看,我正在尝试创建一个非常简单的频谱图,但只是为了理解/掌握我试图从头开始的音频处理过程.
这是我的问题
当麦克风检测到一声嘟嘟声或任何声音时,我想捕获那些二进制数据,并只是以原始格式显示它.
JAVA要求真的太多了吗?
我已经阅读过有关模拟/数字信号,FFT,matlab的内容,我搜索了许多链接,如下所示:
和甲骨文的着名介绍
http://docs.oracle.com/javase/tutorial/sound/capturing.html
但他们都无法为我的答案提供解决方案.
我不是要求代码,虽然它会很棒,只是阅读每一行并理解所涉及的机制,但一个简单的提示也会很好.
这是一个简单的代码,用于捕获字节,但仅限于现有wav文件
import java.io.FileInputStream;
import java.io.IOException;
public class Boo{
public static void main(String[] arguments){
try {
FileInputStream file = new FileInputStream("beep.wav");
boolean eof = false;
int count = 0;
while(!eof){
int input = file.read();
System.out.print(input + "");
if(input == -1)
eof = true;
else
count++;
}
file.close();
System.out.println("\nBytes read: " + count);
}catch (IOException e){
System.out.println("Error - " + e.toString());
}
} …Run Code Online (Sandbox Code Playgroud)