import java.net.URL; import java.applet.AudioClip; import java.applet.Applet; public class Esimerkki {
//URL url = new URL("src/Musiikki.wav"); AudioClip aani = Applet.newAudioClip(url); aani.play(); } |
Tässä esimerkissä url on haettu Esimerkki-luokan sijainnin perusteella, mutta URL:n konstruktorin perusteella url:n voi määrittää myös kommentoidulla tavalla. Itse käytän tuota luokan perusteella hakua, koska se toimii myös sen jälkeen kun ohjelmasta on tehty suoritettava jar-paketti.
Kiitokset tästä esimerkistä ttpekkan:lle, joka etsi koodin omaan Väritestiinsä.
import java.net.URL; import javax.sound.sampled.AudioInputStream; import javax.sound.sampled.AudioSystem; import javax.sound.sampled.Clip; import javax.sound.sampled.FloatControl; import javax.sound.sampled.FloatControl.Type; public class Esimerkki {
private boolean aanetPaalla; private void haeMusiikki() {
try {
this.aani = AudioSystem.getClip(); this.aani.open(audioInputStream);
FloatControl gainControl = (FloatControl)this.aani.getControl(FloatControl.Type.MASTER_GAIN);
this.aanetPaalla = false; public void soitaAani() {
|
Tässä esimerkissä en niinkään puutu Audio-luokkiin, koska olen niitä vasta kerran käyttänyt omassa ohjelmassa, mutta sen verran tuosta FloatControl:sta, että setValue-metodia käytettäessä arvon muutos asetetaan desibeleinä. Itsellä tuo menee vähän tuntemattomammalle puolelle joten olen arvioinut määriä kokeilemalla.
Viimeksi muokattu 1.7.2012