Hvordan å generere en Tone i Java
Det kan være lurt å lage lyd fra programmet, for eksempel en varseltone, uten tilgang til pre-innspilte lyder fra harddisken. Du kan bruke den medfølgende "sound" biblioteker for å bygge lyd-generering funksjoner i Java. Disse funksjonene kan deretter spille lengre toner basert på numerisk inngang for varighet og hyppighet.
Bruksanvisning
1 Sett opp Java-klasse:
public class SolidTone {
}
2 Lag en funksjon for å lage tonen inne i klassen. Denne funksjonen vil skape lengden og frekvensen av tonen i en matrise:
public class SolidTone {
public double[] createTone(double hertz, double length) {
int N = (int) (StdAudio.SAMPLE_RATE * length);
double[] a = new double[N+1];
for (int i = 0; i <= N; i++) {
a[i] = Math.sin(2 * Math.PI * i * hertz / StdAudio.SAMPLE_RATE);
}
return a;
}
}
3 Lag den viktigste funksjonen inne i SolidTone klasse, med variabler for å konstruere tone:
public static void main (String [] args) {
double hertz = 35; //35 hertz
double length = 25; //25 seconds
double[] created_tone = createTone(hertz, length); //creates an array
StdAudio.play (a);
}
4 Spill tonen inne den viktigste funksjonen:
StdAudio.play (created_tone);