我正在做一个项目,我必须使用java从音频.wav文件中提取人声。音频.wav文件可能包含3到4种声音,例如狗、猫、音乐和人声。我将必须识别人声,然后从音频.wav文件中提取该部分。我正在使用FFT.java和Complex.java.现在我已经编写了一个AudioFileReader类,它从硬盘驱动器读取audio.wav文件,然后将其转换为字节数组。然后使用上面提到的FFT.java和Complex.java来应用FFT.fft(bytesArray),这会返回Complex数组;现在的问题是如何从返回的Complex数组中提取人声字节模式...有谁知道我如何实现这一点?编辑:我们
我对Java的MIDI功能不是很了解。事实上,这让我很困惑。然而,我想做的是只是构建一个简单的应用程序来播放一个音符。如何使用JavaSound播放单个MIDI音符?网上对此的支持几乎不存在,我完全不知所措。 最佳答案 我知道这是一个非常古老的问题,但是,作为一名新手程序员,我很难弄清楚如何做到这一点,所以我想我会分享以下让Java成为播放单个MIDI音符以帮助其他人入门。importjavax.sound.midi.*;publicclassMidiTest{publicstaticvoidmain(String[]args){t
是否有人知道Java世界中存在的任何将midi音符编号映射到特定音符名称和Octave音阶编号的方法。例如见引用表:http://www.harmony-central.com/MIDI/Doc/table2.html我想将一个midi音符编号60映射到它在Octave音程4中的相应音符名称(MiddleC)。我可以为此编写一个实用程序类/枚举,但这会相当乏味。有人知道吗?我专门用它在Java中编写Tenori-On/Monome克隆,到目前为止一切顺利......解决方案这就是我最终使用的:String[]noteString=newString[]{"C","C#","D","D#
1.考虑我的代码在我拥有的JPanel的某行上,我是否自动在EDT上?2.对于不属于GUI、JPanels或其他View类的所有其他类,简单逻辑类,同样的问题。3.如果我有JPanel,我在其中播放音乐,音乐应该在事件调度线程上运行还是在其他非EDT线程上运行(为了不阻塞GUI,尽管我没有任何感觉从EDT运行它有问题吗?注意:我想要一个通用规则如何在不使用SwingUtilities.isEventDispatchThread()的情况下知道它谢谢 最佳答案 没有。没有。后台线程。如果在EDT之外运行的代码调用GUI类中定义的方法,
连接两个WAV的最简单方法是什么?Java1.6中的文件?(等频和所有,没什么特别的。)(这可能太简单了,但我的Google-fu今天在这个问题上似乎很薄弱。) 最佳答案 这是准系统代码:importjava.io.File;importjava.io.IOException;importjava.io.SequenceInputStream;importjavax.sound.sampled.AudioFileFormat;importjavax.sound.sampled.AudioInputStream;importjavax
在Java中开始录制操作时如何检测静音?什么是PCM数据?我如何用Java计算PCM数据?我找到了解决方案:packagebemukan.voiceRecognition.speechToText;importjavax.sound.sampled.*;importjava.io.*;publicclassRecordAudio{privateFileaudioFile;protectedbooleanrunning;privateByteArrayOutputStreamout;privateAudioInputStreaminputStream;finalstaticfloatMA
我正在尝试将.MID文件读入Java程序,并希望将每个音符/和弦分开,以便在某种UI上显示它们。我在Java中使用SequencerAPI运气不佳,并且尝试直接使用MidiFileReader对我也不起作用。我会附上我在这里使用的代码,如果有人想看的话:packagemiditest;importjava.io.File;importjava.io.IOException;importjavax.sound.midi.InvalidMidiDataException;importjavax.sound.midi.MidiSystem;importjavax.sound.midi.Mid
我正在尝试将.MID文件读入Java程序,并希望将每个音符/和弦分开,以便在某种UI上显示它们。我在Java中使用SequencerAPI运气不佳,并且尝试直接使用MidiFileReader对我也不起作用。我会附上我在这里使用的代码,如果有人想看的话:packagemiditest;importjava.io.File;importjava.io.IOException;importjavax.sound.midi.InvalidMidiDataException;importjavax.sound.midi.MidiSystem;importjavax.sound.midi.Mid
我正在尝试使用SnowLeopard上的JavaSound录制/处理来自三个USB麦克风的一些音频(但如果可以解决问题,可以切换到Windows)。问题是,当我尝试使用与USB麦克风对应的混音器时,JavaSound告诉我该线路不受支持。具体来说,它是这样说的……Availablemixers:JavaSoundAudioEngineUSBMICSerial#041270067Built-inInputBuilt-inMicrophoneSoundflower(2ch)Soundflower(16ch)Exceptioninthread"AWT-EventQueue-0"java.la
我正在尝试使用SnowLeopard上的JavaSound录制/处理来自三个USB麦克风的一些音频(但如果可以解决问题,可以切换到Windows)。问题是,当我尝试使用与USB麦克风对应的混音器时,JavaSound告诉我该线路不受支持。具体来说,它是这样说的……Availablemixers:JavaSoundAudioEngineUSBMICSerial#041270067Built-inInputBuilt-inMicrophoneSoundflower(2ch)Soundflower(16ch)Exceptioninthread"AWT-EventQueue-0"java.la