Java 生成声音
我创建了一个pong克隆,我想在发生碰撞时添加一些声音效果。我的问题是,我能找到的关于合成声音的每个示例大约需要30行代码,考虑到我的整个应用程序只有90行代码。我正在寻找一种更简单的方法。有没有一种简单的方法来产生不同音调的哔哔声?持续时间无关紧要。我只想要一系列不同音调的哔哔声。
我创建了一个pong克隆,我想在发生碰撞时添加一些声音效果。我的问题是,我能找到的关于合成声音的每个示例大约需要30行代码,考虑到我的整个应用程序只有90行代码。我正在寻找一种更简单的方法。有没有一种简单的方法来产生不同音调的哔哔声?持续时间无关紧要。我只想要一系列不同音调的哔哔声。
下面是一个从 Java Sound 获取(并缩短)的小示例 - 示例:生成音频音调的代码
byte[] buf = new byte[ 1 ];;
AudioFormat af = new AudioFormat( (float )44100, 8, 1, true, false );
SourceDataLine sdl = AudioSystem.getSourceDataLine( af );
sdl.open();
sdl.start();
for( int i = 0; i < 1000 * (float )44100 / 1000; i++ ) {
double angle = i / ( (float )44100 / 440 ) * 2.0 * Math.PI;
buf[ 0 ] = (byte )( Math.sin( angle ) * 100 );
sdl.write( buf, 0, 1 );
}
sdl.drain();
sdl.stop();
java.awt.Toolkit.getDefaultToolkit().beep()
一连串的哔哔声?
int numbeeps = 10;
for(int x=0;x<numbeeps;x++)
{
java.awt.Toolkit.getDefaultToolkit().beep();
}