Class Music
- All Implemented Interfaces:
Audio
Im Gegensatz zu einem Sound wird Music für längere
Audiodateien benutzt, die zum Beispiel als Hintergrundmusik gespielt werden.
Die Audiodaten werden daher nicht vollständig in den Speicher geladen,
sondern direkt aus der Quelle gestreamt und direkt wiedergegeben.
Daher ist es nicht möglich, die länge der Musik im Vorfeld abzufragen oder zu einer bestimmten Stelle im Stream zu springen.
MP3-Dateien verwenden
Java kann nativ nur Waveform (.wav) Dateien wiedergeben. Um auch
MP3-Dateien zu nutzen, müssen die Bibliotheken jlayer, tritonus-share und mp3spi eingebunden werden.
Details zur Verwendung können in der Dokumentation
der Zeichenmaschine nachgelesen werden.-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoidaddAudioListener(AudioListener listener) Fügt dem Medium das angegebene Objekt alsAudioListenerhinzu, der bei Start und Stopp der Wiedergabe informiert wird.voiddispose()Stoppt die Wiedergabe und gibt alle Ressourcen, die für das Medium verwendet werden, frei.doubleLiefert die aktuelle Lautstärke dieses Mediums.booleanPrüft, ob das Medium gerade in einer Schleife abgespielt wird.booleanPrüft, ob das Medium gerade abgespielt wird.voidloop()Spielt das Medium in einer kontinuierlichen Schleife ab.voidplay()Startet die Wiedergabe des Mediums.voidStartet die Wiedergabe des Mediums und blockiert das Programm, bis die Wiedergabe beendet ist.voidremoveAudioListener(AudioListener listener) Entfernt den angegebenenAudioListenervom Medium.voidsetVolume(double volume) Legt die Lautstärke des Mediums beim Abspielen fest.voidstop()Stoppt die Wiedergabe.
-
Constructor Details
-
Music
Erstellt eine Musik aus der angegebenen Audioquelle.- Parameters:
audioSource- Quelle der Audiodaten.- Throws:
NullPointerException- Falls die Quellenullist.- See Also:
-
-
Method Details
-
getSource
-
isPlaying
public boolean isPlaying()Description copied from interface:AudioPrüft, ob das Medium gerade abgespielt wird. -
isLooping
public boolean isLooping()Description copied from interface:AudioPrüft, ob das Medium gerade in einer Schleife abgespielt wird. WennisLooping() == truegilt, dann muss auch immerisPlaying() == truegelten. -
setVolume
public void setVolume(double volume) Description copied from interface:AudioLegt die Lautstärke des Mediums beim Abspielen fest.Die Lautstärke wird auf einer linearen Skale festgelegt, wobei 0 kein Ton und 1 volle Lautstärke bedeutet. Werte über 1 verstärken den Ton des Mediums. Negative Werte setzen die Lautstärke aud 0.
-
getVolume
public double getVolume()Description copied from interface:AudioLiefert die aktuelle Lautstärke dieses Mediums.Die Lautstärke wird auf einer linearen Skale angegeben, wobei 0 kein Ton und 1 volle Lautstärke bedeutet. Werte über 1 verstärken den Ton des Mediums.
-
play
public void play()Description copied from interface:AudioStartet die Wiedergabe des Mediums. Das Audio-Medium wird einmal abgespielt und stoppt dann.Die Methode beendet sofort und die Wiedergabe erfolgt im Hintergrund. Soll die Programmausführung erst nach Wiedergabe des Mediums fortgesetzt werden, sollte
Audio.playAndWait()verwendet werden.Soll die Wiedergabe im Hintergrund ablaufen, aber dennoch auf das Ende reagiert werden, kann ein
AudioListenerverwendet werden. -
playAndWait
public void playAndWait()Description copied from interface:AudioStartet die Wiedergabe des Mediums und blockiert das Programm, bis die Wiedergabe beendet ist.- Specified by:
playAndWaitin interfaceAudio
-
loop
public void loop()Description copied from interface:AudioSpielt das Medium in einer kontinuierlichen Schleife ab. Die Methode startet die Wiedergabe im Hintergrund und beendet dann sofort. Um die Wiedergabe zu stoppen, mussAudio.stop()aufgerufen werden. -
stop
public void stop()Description copied from interface:AudioStoppt die Wiedergabe. Wird das Medium gerade nicht abgespielt (isPlaying() == false), dann passiert nichts. -
dispose
public void dispose()Description copied from interface:AudioStoppt die Wiedergabe und gibt alle Ressourcen, die für das Medium verwendet werden, frei. -
addAudioListener
Description copied from interface:AudioFügt dem Medium das angegebene Objekt alsAudioListenerhinzu, der bei Start und Stopp der Wiedergabe informiert wird.- Specified by:
addAudioListenerin interfaceAudio- Parameters:
listener- Das Listener-Objekt.
-
removeAudioListener
Description copied from interface:AudioEntfernt den angegebenenAudioListenervom Medium.- Specified by:
removeAudioListenerin interfaceAudio- Parameters:
listener- Das Listener-Objekt.
-