アットウィキロゴ

じゃヴぁ0716

import java.io.*;
import javax.sound.sampled.*;
public class game0716{
static int htz = 44100;
static AudioFormat fmt = new AudioFormat(htz, 8, 1, true, true);
static SourceDataLine line;
static InputStream stream;

public static void writeData(double rate) {
int don,dp,t;      
byte[] data = new byte[htz];
rate=261.6;
don=(int)(htz/rate);
dp=(int)(don/2);
t=0;
for (int i = 0; i < htz; i++) {
if(t<dp)data[i]=100;
if(t>dp-1)data[i]=-100;
t=t+1;
if(t>don)t=0;        
        }
        
line.write(data,0,htz);        
writeFile(new File("sound.wav"), data); // ファイルへ保存
    }
    
public static void writeFile(java.io.File target, byte[] buf) {
        InputStream in = new ByteArrayInputStream(buf);
        AudioInputStream ais = new AudioInputStream(in, fmt, buf.length);
        try {
            AudioSystem.write(ais, AudioFileFormat.Type.WAVE, target);
        } catch (IOException e) {
            System.out.println(e);
        }
    }
    
public static void main(String[] args) {

try {
DataLine.Info info = new DataLine.Info(SourceDataLine.class, fmt);
line = (SourceDataLine)AudioSystem.getLine(info);
line.open();
line.start();
writeData(440.00);
writeData(880.00);
line.drain();
        } catch (LineUnavailableException e) {
            System.out.println(e);
            System.exit(1);
        }
    }
}
最終更新:2011年02月27日 15:21