Spec-Zone.ru › OpenJavaFX 17

Class MediaPlayer

java.lang.Object
javafx.scene.media.MediaPlayer
public final class MediaPlayer
extends Object
The MediaPlayer class provides the controls for playing media. It is used in combination with the Media and MediaView classes to display and control media playback. MediaPlayer does not contain any visual elements so must be used with the MediaView class to view any video track which may be present.

MediaPlayer provides the pause(), play(), stop() and seek() controls as well as the rate and autoPlay properties which apply to all types of media. It also provides the balance, mute, and volume properties which control audio playback characteristics. Further control over audio quality may be attained via the AudioEqualizer associated with the player. Frequency descriptors of audio playback may be observed by registering an AudioSpectrumListener. Information about playback position, rate, and buffering may be obtained from the currentTime, currentRate, and bufferProgressTime properties, respectively. Media marker notifications are received by an event handler registered as the onMarker property.

For finite duration media, playback may be positioned at any point in time between 0.0 and the duration of the media. MediaPlayer refines this definition by adding the startTime and stopTime properties which in effect define a virtual media source with time position constrained to [startTime,stopTime]. Media playback commences at startTime and continues to stopTime. The interval defined by these two endpoints is termed a cycle with duration being the difference of the stop and start times. This cycle may be set to repeat a specific or indefinite number of times. The total duration of media playback is then the product of the cycle duration and the number of times the cycle is played. If the stop time of the cycle is reached and the cycle is to be played again, the event handler registered with the onRepeat property is invoked. If the stop time is reached, then the event handler registered with the onEndOfMedia property is invoked regardless of whether the cycle is to be repeated or not. A zero-relative index of which cycle is presently being played is maintained by currentCount.

The operation of a MediaPlayer is inherently asynchronous. A player is not prepared to respond to commands quasi-immediately until its status has transitioned to MediaPlayer.Status.READY, which in effect generally occurs when media pre-roll completes. Some requests made of a player prior to its status being READY will however take effect when that status is entered. These include invoking play() without an intervening invocation of pause() or stop() before the READY transition, as well as setting any of the autoPlay, balance, mute, rate, startTime, stopTime, and volume properties.

The status property may be monitored to make the application aware of player status changes, and callback functions may be registered via properties such as onReady if an action should be taken when a particular status is entered. There are also error and onError properties which respectively enable monitoring when an error occurs and taking a specified action in response thereto.

The same MediaPlayer object may be shared among multiple MediaViews. This will not affect the player itself. In particular, the property settings of the view will not have any effect on media playback.

Since:
JavaFX 2.0
See Also:
Media, MediaView

Property Summary

Properties
Type Property Description
DoubleProperty audioSpectrumInterval
The interval between spectrum updates in seconds.
ObjectProperty<AudioSpectrumListener> audioSpectrumListener
A listener for audio spectrum updates.
IntegerProperty audioSpectrumNumBands
The number of bands in the audio spectrum.
IntegerProperty audioSpectrumThreshold
The sensitivity threshold in decibels; must be non-positive.
BooleanProperty autoPlay
Whether playing should start as soon as possible.
DoubleProperty balance
The balance, or left-right setting, of the audio output.
ReadOnlyObjectProperty<Duration> bufferProgressTime
The current buffer position indicating how much media can be played without stalling the MediaPlayer.
ReadOnlyIntegerProperty currentCount
The number of completed playback cycles.
ReadOnlyDoubleProperty currentRate
The current rate of playback regardless of settings.
ReadOnlyObjectProperty<Duration> currentTime
The current media playback time.
IntegerProperty cycleCount
The number of times the media will be played.
ReadOnlyObjectProperty<Duration> cycleDuration
The amount of time between the startTime and stopTime of this player.
ReadOnlyObjectProperty<MediaException> error
Observable property set to a MediaException if an error occurs.
BooleanProperty mute
Whether the player audio is muted.
ObjectProperty<Runnable> onEndOfMedia
Event handler invoked when the player currentTime reaches stopTime.
ObjectProperty<Runnable> onError
Event handler invoked when an error occurs.
ObjectProperty<Runnable> onHalted
Event handler invoked when the status changes to HALTED.
ObjectProperty<EventHandler<MediaMarkerEvent>> onMarker
Event handler invoked when the player currentTime reaches a media marker.
ObjectProperty<Runnable> onPaused
Event handler invoked when the status changes to PAUSED.
ObjectProperty<Runnable> onPlaying
Event handler invoked when the status changes to PLAYING.
ObjectProperty<Runnable> onReady
Event handler invoked when the status changes to READY.
ObjectProperty<Runnable> onRepeat
Event handler invoked when the player currentTime reaches stopTime and will be repeating.
ObjectProperty<Runnable> onStalled
Event handler invoked when the status changes to STALLED.
ObjectProperty<Runnable> onStopped
Event handler invoked when the status changes to STOPPED.
DoubleProperty rate
The rate at which the media should be played.
ObjectProperty<Duration> startTime
The time offset where media should start playing, or restart from when repeating.
ReadOnlyObjectProperty<MediaPlayer.Status> status
The current state of the MediaPlayer.
ObjectProperty<Duration> stopTime
The time offset where media should stop playing or restart when repeating.
ReadOnlyObjectProperty<Duration> totalDuration
The total amount of play time if allowed to play until finished.
DoubleProperty volume
The volume at which the media should be played.

Nested Class Summary

Nested Classes
Modifier and Type Class Description
static class  MediaPlayer.Status
Enumeration describing the different status values of a MediaPlayer.

Field Summary

Fields
Modifier and Type Field Description
static int INDEFINITE
A value representing an effectively infinite number of playback cycles.

Constructor Summary

Constructors
Constructor Description
MediaPlayer​(Media media)
Create a player for a specific media.

Method Summary

Modifier and Type Method Description
DoubleProperty audioSpectrumIntervalProperty()
The interval between spectrum updates in seconds.
ObjectProperty<AudioSpectrumListener> audioSpectrumListenerProperty()
A listener for audio spectrum updates.
IntegerProperty audioSpectrumNumBandsProperty()
The number of bands in the audio spectrum.
IntegerProperty audioSpectrumThresholdProperty()
The sensitivity threshold in decibels; must be non-positive.
BooleanProperty autoPlayProperty()
Whether playing should start as soon as possible.
DoubleProperty balanceProperty()
The balance, or left-right setting, of the audio output.
ReadOnlyObjectProperty<Duration> bufferProgressTimeProperty()
The current buffer position indicating how much media can be played without stalling the MediaPlayer.
ReadOnlyIntegerProperty currentCountProperty()
The number of completed playback cycles.
ReadOnlyDoubleProperty currentRateProperty()
The current rate of playback regardless of settings.
ReadOnlyObjectProperty<Duration> currentTimeProperty()
The current media playback time.
IntegerProperty cycleCountProperty()
The number of times the media will be played.
ReadOnlyObjectProperty<Duration> cycleDurationProperty()
The amount of time between the startTime and stopTime of this player.
void dispose()
Free all resources associated with player.
ReadOnlyObjectProperty<MediaException> errorProperty()
Observable property set to a MediaException if an error occurs.
AudioEqualizer getAudioEqualizer()
Retrieve the AudioEqualizer associated with this player.
double getAudioSpectrumInterval()
Retrieves the value of the audio spectrum notification interval in seconds.
AudioSpectrumListener getAudioSpectrumListener()
Retrieves the listener of the audio spectrum.
int getAudioSpectrumNumBands()
Retrieves the number of bands in the audio spectrum.
int getAudioSpectrumThreshold()
Retrieves the audio spectrum threshold in decibels.
double getBalance()
Retrieves the audio balance.
Duration getBufferProgressTime()
Retrieves the bufferProgressTime value.
int getCurrentCount()
Retrieves the index of the current cycle.
double getCurrentRate()
Retrieves the current playback rate.
Duration getCurrentTime()
Retrieves the current media time.
int getCycleCount()
Retrieves the cycle count.
Duration getCycleDuration()
Retrieves the cycle duration in seconds.
MediaException getError()
Retrieve the value of the error property or null if there is no error.
Media getMedia()
Retrieves the Media instance being played.
Runnable getOnEndOfMedia()
Retrieves the end of media event handler.
Runnable getOnError()
Retrieves the event handler for errors.
Runnable getOnHalted()
Retrieves the MediaPlayer.Status.HALTED event handler.
EventHandler<MediaMarkerEvent> getOnMarker()
Retrieves the marker event handler.
Runnable getOnPaused()
Retrieves the MediaPlayer.Status.PAUSED event handler.
Runnable getOnPlaying()
Retrieves the MediaPlayer.Status.PLAYING event handler.
Runnable getOnReady()
Retrieves the MediaPlayer.Status.READY event handler.
Runnable getOnRepeat()
Retrieves the repeat event handler.
Runnable getOnStalled()
Retrieves the MediaPlayer.Status.STALLED event handler.
Runnable getOnStopped()
Retrieves the MediaPlayer.Status.STOPPED event handler.
double getRate()
Retrieves the playback rate.
Duration getStartTime()
Retrieves the start time.
MediaPlayer.Status getStatus()
Retrieves the current player status.
Duration getStopTime()
Retrieves the stop time.
Duration getTotalDuration()
Retrieves the total playback duration including all cycles (repetitions).
double getVolume()
Retrieves the audio playback volume.
boolean isAutoPlay()
Retrieves the autoPlay property value.
boolean isMute()
Retrieves the muteProperty() value.
BooleanProperty muteProperty()
Whether the player audio is muted.
ObjectProperty<Runnable> onEndOfMediaProperty()
Event handler invoked when the player currentTime reaches stopTime.
ObjectProperty<Runnable> onErrorProperty()
Event handler invoked when an error occurs.
ObjectProperty<Runnable> onHaltedProperty()
Event handler invoked when the status changes to HALTED.
ObjectProperty<EventHandler<MediaMarkerEvent>> onMarkerProperty()
Event handler invoked when the player currentTime reaches a media marker.
ObjectProperty<Runnable> onPausedProperty()
Event handler invoked when the status changes to PAUSED.
ObjectProperty<Runnable> onPlayingProperty()
Event handler invoked when the status changes to PLAYING.
ObjectProperty<Runnable> onReadyProperty()
Event handler invoked when the status changes to READY.
ObjectProperty<Runnable> onRepeatProperty()
Event handler invoked when the player currentTime reaches stopTime and will be repeating.
ObjectProperty<Runnable> onStalledProperty()
Event handler invoked when the status changes to STALLED.
ObjectProperty<Runnable> onStoppedProperty()
Event handler invoked when the status changes to STOPPED.
void pause()
Pauses the player.
void play()
Starts playing the media.
DoubleProperty rateProperty()
The rate at which the media should be played.
void seek​(Duration seekTime)
Seeks the player to a new playback time.
void setAudioSpectrumInterval​(double value)
Sets the value of the audio spectrum notification interval in seconds.
void setAudioSpectrumListener​(AudioSpectrumListener listener)
Sets the listener of the audio spectrum.
void setAudioSpectrumNumBands​(int value)
Sets the number of bands in the audio spectrum.
void setAudioSpectrumThreshold​(int value)
Sets the audio spectrum threshold in decibels.
void setAutoPlay​(boolean value)
Sets the autoPlay property value.
void setBalance​(double value)
Sets the audio balance.
void setCycleCount​(int value)
Sets the cycle count.
void setMute​(boolean value)
Sets the value of muteProperty().
void setOnEndOfMedia​(Runnable value)
Sets the end of media event handler.
void setOnError​(Runnable value)
Sets the event handler to be called when an error occurs.
void setOnHalted​(Runnable value)
Sets the MediaPlayer.Status.HALTED event handler.
void setOnMarker​(EventHandler<MediaMarkerEvent> onMarker)
Sets the marker event handler.
void setOnPaused​(Runnable value)
Sets the MediaPlayer.Status.PAUSED event handler.
void setOnPlaying​(Runnable value)
Sets the MediaPlayer.Status.PLAYING event handler.
void setOnReady​(Runnable value)
Sets the MediaPlayer.Status.READY event handler.
void setOnRepeat​(Runnable value)
Sets the repeat event handler.
void setOnStalled​(Runnable value)
Sets the MediaPlayer.Status.STALLED event handler.
void setOnStopped​(Runnable value)
Sets the MediaPlayer.Status.STOPPED event handler.
void setRate​(double value)
Sets the playback rate to the supplied value.
void setStartTime​(Duration value)
Sets the start time.
void setStopTime​(Duration value)
Sets the stop time.
void setVolume​(double value)
Sets the audio playback volume.
ObjectProperty<Duration> startTimeProperty()
The time offset where media should start playing, or restart from when repeating.
ReadOnlyObjectProperty<MediaPlayer.Status> statusProperty()
The current state of the MediaPlayer.
void stop()
Stops playing the media.
ObjectProperty<Duration> stopTimeProperty()
The time offset where media should stop playing or restart when repeating.
ReadOnlyObjectProperty<Duration> totalDurationProperty()
The total amount of play time if allowed to play until finished.
DoubleProperty volumeProperty()
The volume at which the media should be played.

Methods declared in class java.lang.Object

clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait

Property Details

error

public ReadOnlyObjectProperty<MediaException> errorProperty
Observable property set to a MediaException if an error occurs.
See Also:
getError()

onError

public ObjectProperty<Runnable> onErrorProperty
Event handler invoked when an error occurs.
See Also:
getOnError(), setOnError(Runnable)

autoPlay

public BooleanProperty autoPlayProperty
Whether playing should start as soon as possible. For a new player this will occur once the player has reached the READY state. The default value is false.
See Also:
isAutoPlay(), setAutoPlay(boolean)

rate

public DoubleProperty rateProperty
The rate at which the media should be played. For example, a rate of 1.0 plays the media at its normal (encoded) playback rate, 2.0 plays back at twice the normal rate, etc. The currently supported range of rates is [0.0, 8.0]. The default value is 1.0.
See Also:
getRate(), setRate(double)

currentRate

public ReadOnlyDoubleProperty currentRateProperty
The current rate of playback regardless of settings. For example, if rate is set to 1.0 and the player is paused or stalled, then currentRate will be zero.
See Also:
getCurrentRate()

volume

public DoubleProperty volumeProperty
The volume at which the media should be played. The range of effective values is [0.0 1.0] where 0.0 is inaudible and 1.0 is full volume, which is the default.
See Also:
getVolume(), setVolume(double)

balance

public DoubleProperty balanceProperty
The balance, or left-right setting, of the audio output. The range of effective values is [-1.0, 1.0] with -1.0 being full left, 0.0 center, and 1.0 full right. The default value is 0.0.
See Also:
getBalance(), setBalance(double)

startTime

public ObjectProperty<Duration> startTimeProperty
The time offset where media should start playing, or restart from when repeating. When playback is stopped, the current time is reset to this value. If this value is positive, then the first time the media is played there might be a delay before playing begins unless the play position can be set to an arbitrary time within the media. This could occur for example for a video which does not contain a lookup table of the offsets of intra-frames in the video stream. In such a case the video frames would need to be skipped over until the position of the first intra-frame before the start time was reached. The default value is Duration.ZERO.

Constraints: 0 ≤ startTime < stopTime

See Also:
getStartTime(), setStartTime(Duration)

stopTime

public ObjectProperty<Duration> stopTimeProperty
The time offset where media should stop playing or restart when repeating. The default value is getMedia().getDuration().

Constraints: startTime < stopTime ≤ Media.duration

See Also:
getStopTime(), setStopTime(Duration)

cycleDuration

public ReadOnlyObjectProperty<Duration> cycleDurationProperty
The amount of time between the startTime and stopTime of this player. For the total duration of the Media use the Media.duration property.
See Also:
getCycleDuration()

totalDuration

public ReadOnlyObjectProperty<Duration> totalDurationProperty
The total amount of play time if allowed to play until finished. If cycleCount is set to INDEFINITE then this will also be INDEFINITE. If the Media duration is UNKNOWN, then this will likewise be UNKNOWN. Otherwise, total duration will be the product of cycleDuration and cycleCount.
See Also:
getTotalDuration()

currentTime

public ReadOnlyObjectProperty<Duration> currentTimeProperty
The current media playback time. This property is read-only: use seek(javafx.util.Duration) to change playback to a different stream position.
See Also:
getCurrentTime()

status

public ReadOnlyObjectProperty<MediaPlayer.Status> statusProperty
The current state of the MediaPlayer.
See Also:
getStatus()

bufferProgressTime

public ReadOnlyObjectProperty<Duration> bufferProgressTimeProperty
The current buffer position indicating how much media can be played without stalling the MediaPlayer. This is applicable to buffered streams such as those reading from network connections as opposed for example to local files.

Seeking to a position beyond bufferProgressTime might cause a slight pause in playback until an amount of data sufficient to permit playback resumption has been buffered.

See Also:
getBufferProgressTime()

cycleCount

public IntegerProperty cycleCountProperty
The number of times the media will be played. By default, cycleCount is set to 1 meaning the media will only be played once. Setting cycleCount to a value greater than 1 will cause the media to play the given number of times or until stopped. If set to INDEFINITE, playback will repeat until stop() or pause() is called.

constraints: cycleCount ≥ 1

See Also:
getCycleCount(), setCycleCount(int)

currentCount

public ReadOnlyIntegerProperty currentCountProperty
The number of completed playback cycles. On the first pass, the value should be 0. On the second pass, the value should be 1 and so on. It is incremented at the end of each cycle just prior to seeking back to startTime, i.e., when stopTime or the end of media has been reached.
See Also:
getCurrentCount()

mute

public BooleanProperty muteProperty
Whether the player audio is muted. A value of true indicates that audio is not being produced. The value of this property has no effect on volume, i.e., if the audio is muted and then un-muted, audio playback will resume at the same audible level provided of course that the volume property has not been modified meanwhile. The default value is false.
See Also:
isMute(), setMute(boolean)

onMarker

public ObjectProperty<EventHandler<MediaMarkerEvent>> onMarkerProperty
Event handler invoked when the player currentTime reaches a media marker.
See Also:
getOnMarker(), setOnMarker(EventHandler)

onEndOfMedia

public ObjectProperty<Runnable> onEndOfMediaProperty
Event handler invoked when the player currentTime reaches stopTime.
See Also:
getOnEndOfMedia(), setOnEndOfMedia(Runnable)

onReady

public ObjectProperty<Runnable> onReadyProperty
Event handler invoked when the status changes to READY.
See Also:
getOnReady(), setOnReady(Runnable)

onPlaying

public ObjectProperty<Runnable> onPlayingProperty
Event handler invoked when the status changes to PLAYING.
See Also:
getOnPlaying(), setOnPlaying(Runnable)

onPaused

public ObjectProperty<Runnable> onPausedProperty
Event handler invoked when the status changes to PAUSED.
See Also:
getOnPaused(), setOnPaused(Runnable)

onStopped

public ObjectProperty<Runnable> onStoppedProperty
Event handler invoked when the status changes to STOPPED.
See Also:
getOnStopped(), setOnStopped(Runnable)

onHalted

public ObjectProperty<Runnable> onHaltedProperty
Event handler invoked when the status changes to HALTED.
See Also:
getOnHalted(), setOnHalted(Runnable)

onRepeat

public ObjectProperty<Runnable> onRepeatProperty
Event handler invoked when the player currentTime reaches stopTime and will be repeating. This callback is made prior to seeking back to startTime.
See Also:
getOnRepeat(), setOnRepeat(Runnable)

onStalled

public ObjectProperty<Runnable> onStalledProperty
Event handler invoked when the status changes to STALLED.
See Also:
getOnStalled(), setOnStalled(Runnable)

audioSpectrumNumBands

public IntegerProperty audioSpectrumNumBandsProperty
The number of bands in the audio spectrum. The default value is 128; minimum is 2. The frequency range of the audio signal will be divided into the specified number of frequency bins. For example, a typical digital music signal has a frequency range of [0.0, 22050] Hz. If the number of spectral bands were in this case set to 10, the width of each frequency bin in the spectrum would be 2205 Hz with the lower bound of the lowest frequency bin equal to 0.0.
See Also:
getAudioSpectrumNumBands(), setAudioSpectrumNumBands(int)

audioSpectrumInterval

public DoubleProperty audioSpectrumIntervalProperty
The interval between spectrum updates in seconds. The default is 0.1 seconds.
See Also:
getAudioSpectrumInterval(), setAudioSpectrumInterval(double)

audioSpectrumThreshold

public IntegerProperty audioSpectrumThresholdProperty
The sensitivity threshold in decibels; must be non-positive. Values below this threshold with respect to the peak frequency in the given spectral band will be set to the value of the threshold. The default value is -60 dB.
See Also:
getAudioSpectrumThreshold(), setAudioSpectrumThreshold(int)

audioSpectrumListener

public ObjectProperty<AudioSpectrumListener> audioSpectrumListenerProperty
A listener for audio spectrum updates. When the listener is registered, audio spectrum computation is enabled; upon removing the listener, computation is disabled. Only a single listener may be registered, so if multiple observers are required, events must be forwarded.

An AudioSpectrumListener may be useful for example to plot the frequency spectrum of the audio being played or to generate waveforms for a music visualizer.

See Also:
getAudioSpectrumListener(), setAudioSpectrumListener(AudioSpectrumListener)

Field Details

INDEFINITE

public static final int INDEFINITE
A value representing an effectively infinite number of playback cycles. When cycleCount is set to this value, the player will replay the Media until stopped or paused.
See Also:
Constant Field Values

Constructor Details

MediaPlayer

public MediaPlayer(Media media)
Create a player for a specific media. This is the only way to associate a Media object with a MediaPlayer: once the player is created it cannot be changed. Errors which occur synchronously within the constructor will cause exceptions to be thrown. Errors which occur asynchronously will cause the error property to be set and consequently any onError callback to be invoked.

When created, the status of the player will be MediaPlayer.Status.UNKNOWN. Once the status has transitioned to MediaPlayer.Status.READY the player will be in a usable condition. The amount of time between player creation and its entering READY status may vary depending, for example, on whether the media is being read over a network connection or from a local file system.

Parameters:
media - The media to play.
Throws:
NullPointerException - if media is null.
MediaException - if any synchronous errors occur within the constructor.

Method Details

getAudioEqualizer

public final AudioEqualizer getAudioEqualizer()
Retrieve the AudioEqualizer associated with this player.
Returns:
the AudioEqualizer or null if player is disposed.

getError

public final MediaException getError()
Retrieve the value of the error property or null if there is no error.
Returns:
a MediaException or null.

errorProperty

public ReadOnlyObjectProperty<MediaException> errorProperty()
Observable property set to a MediaException if an error occurs.
See Also:
getError()

setOnError

public final void setOnError(Runnable value)
Sets the event handler to be called when an error occurs.
Parameters:
value - the event handler or null.

getOnError

public final Runnable getOnError()
Retrieves the event handler for errors.
Returns:
the event handler.

onErrorProperty

public ObjectProperty<Runnable> onErrorProperty()
Event handler invoked when an error occurs.
See Also:
getOnError(), setOnError(Runnable)

getMedia

public final Media getMedia()
Retrieves the Media instance being played.
Returns:
the Media object.

setAutoPlay

public final void setAutoPlay(boolean value)
Sets the autoPlay property value.
Parameters:
value - whether to enable auto-playback

isAutoPlay

public final boolean isAutoPlay()
Retrieves the autoPlay property value.
Returns:
the value.

autoPlayProperty

public BooleanProperty autoPlayProperty()
Whether playing should start as soon as possible. For a new player this will occur once the player has reached the READY state. The default value is false.
See Also:
isAutoPlay(), setAutoPlay(boolean)

play

public void play()
Starts playing the media. If previously paused, then playback resumes where it was paused. If playback was stopped, playback starts from the startTime. When playing actually starts the status will be set to MediaPlayer.Status.PLAYING.

pause

public void pause()
Pauses the player. Once the player is actually paused the status will be set to MediaPlayer.Status.PAUSED.

stop

public void stop()
Stops playing the media. This operation resets playback to startTime, and resets currentCount to zero. Once the player is actually stopped, the status will be set to MediaPlayer.Status.STOPPED. The only transitions out of STOPPED status are to MediaPlayer.Status.PAUSED and MediaPlayer.Status.PLAYING which occur after invoking pause() or play(), respectively. While stopped, the player will not respond to playback position changes requested by seek(javafx.util.Duration).

setRate

public final void setRate(double value)
Sets the playback rate to the supplied value. Its effect will be clamped to the range [0.0, 8.0]. Invoking this method will have no effect if media duration is Duration.INDEFINITE.
Parameters:
value - the playback rate

getRate

public final double getRate()
Retrieves the playback rate.
Returns:
the playback rate

rateProperty

public DoubleProperty rateProperty()
The rate at which the media should be played. For example, a rate of 1.0 plays the media at its normal (encoded) playback rate, 2.0 plays back at twice the normal rate, etc. The currently supported range of rates is [0.0, 8.0]. The default value is 1.0.
See Also:
getRate(), setRate(double)

getCurrentRate

public final double getCurrentRate()
Retrieves the current playback rate.
Returns:
the current rate

currentRateProperty

public ReadOnlyDoubleProperty currentRateProperty()
The current rate of playback regardless of settings. For example, if rate is set to 1.0 and the player is paused or stalled, then currentRate will be zero.
See Also:
getCurrentRate()

setVolume

public final void setVolume(double value)
Sets the audio playback volume. Its effect will be clamped to the range [0.0, 1.0].
Parameters:
value - the volume

getVolume

public final double getVolume()
Retrieves the audio playback volume. The default value is 1.0.
Returns:
the audio volume

volumeProperty

public DoubleProperty volumeProperty()
The volume at which the media should be played. The range of effective values is [0.0 1.0] where 0.0 is inaudible and 1.0 is full volume, which is the default.
See Also:
getVolume(), setVolume(double)

setBalance

public final void setBalance(double value)
Sets the audio balance. Its effect will be clamped to the range [-1.0, 1.0].
Parameters:
value - the balance

getBalance

public final double getBalance()
Retrieves the audio balance.
Returns:
the audio balance

balanceProperty

public DoubleProperty balanceProperty()
The balance, or left-right setting, of the audio output. The range of effective values is [-1.0, 1.0] with -1.0 being full left, 0.0 center, and 1.0 full right. The default value is 0.0.
See Also:
getBalance(), setBalance(double)

setStartTime

public final void setStartTime(Duration value)
Sets the start time. Its effect will be clamped to the range [Duration.ZERO, stopTime). Invoking this method will have no effect if media duration is Duration.INDEFINITE.
Parameters:
value - the start time

getStartTime

public final Duration getStartTime()
Retrieves the start time. The default value is Duration.ZERO.
Returns:
the start time

startTimeProperty

public ObjectProperty<Duration> startTimeProperty()
The time offset where media should start playing, or restart from when repeating. When playback is stopped, the current time is reset to this value. If this value is positive, then the first time the media is played there might be a delay before playing begins unless the play position can be set to an arbitrary time within the media. This could occur for example for a video which does not contain a lookup table of the offsets of intra-frames in the video stream. In such a case the video frames would need to be skipped over until the position of the first intra-frame before the start time was reached. The default value is Duration.ZERO.

Constraints: 0 ≤ startTime < stopTime

See Also:
getStartTime(), setStartTime(Duration)

setStopTime

public final void setStopTime(Duration value)
Sets the stop time. Its effect will be clamped to the range (startTime, Media.duration]. Invoking this method will have no effect if media duration is Duration.INDEFINITE.
Parameters:
value - the stop time

getStopTime

public final Duration getStopTime()
Retrieves the stop time. The default value is getMedia().getDuration(). Note that Media.duration may have the value Duration.UNKNOWN if media initialization is not complete.
Returns:
the stop time

stopTimeProperty

public ObjectProperty<Duration> stopTimeProperty()
The time offset where media should stop playing or restart when repeating. The default value is getMedia().getDuration().

Constraints: startTime < stopTime ≤ Media.duration

See Also:
getStopTime(), setStopTime(Duration)

getCycleDuration

public final Duration getCycleDuration()
Retrieves the cycle duration in seconds.
Returns:
the cycle duration

cycleDurationProperty

public ReadOnlyObjectProperty<Duration> cycleDurationProperty()
The amount of time between the startTime and stopTime of this player. For the total duration of the Media use the Media.duration property.
See Also:
getCycleDuration()

getTotalDuration

public final Duration getTotalDuration()
Retrieves the total playback duration including all cycles (repetitions).
Returns:
the total playback duration

totalDurationProperty

public ReadOnlyObjectProperty<Duration> totalDurationProperty()
The total amount of play time if allowed to play until finished. If cycleCount is set to INDEFINITE then this will also be INDEFINITE. If the Media duration is UNKNOWN, then this will likewise be UNKNOWN. Otherwise, total duration will be the product of cycleDuration and cycleCount.
See Also:
getTotalDuration()

getCurrentTime

public final Duration getCurrentTime()
Retrieves the current media time.
Returns:
the current media time

currentTimeProperty

public ReadOnlyObjectProperty<Duration> currentTimeProperty()
The current media playback time. This property is read-only: use seek(javafx.util.Duration) to change playback to a different stream position.
See Also:
getCurrentTime()

seek

public void seek(Duration seekTime)
Seeks the player to a new playback time. Invoking this method will have no effect while the player status is MediaPlayer.Status.STOPPED or media duration is Duration.INDEFINITE.

The behavior of seek() is constrained as follows where start time and stop time indicate the effective lower and upper bounds, respectively, of media playback:

MediaPlayer Seek Table
seekTime seek position
null no change
Duration.UNKNOWN no change
Duration.INDEFINITE stop time
seekTime < start time start time
seekTime > stop time stop time
start time ≤ seekTime ≤ stop time seekTime
Parameters:
seekTime - the requested playback time

getStatus

public final MediaPlayer.Status getStatus()
Retrieves the current player status.
Returns:
the playback status

statusProperty

public ReadOnlyObjectProperty<MediaPlayer.Status> statusProperty()
The current state of the MediaPlayer.
See Also:
getStatus()

getBufferProgressTime

public final Duration getBufferProgressTime()
Retrieves the bufferProgressTime value.
Returns:
the buffer progress time

bufferProgressTimeProperty

public ReadOnlyObjectProperty<Duration> bufferProgressTimeProperty()
The current buffer position indicating how much media can be played without stalling the MediaPlayer. This is applicable to buffered streams such as those reading from network connections as opposed for example to local files.

Seeking to a position beyond bufferProgressTime might cause a slight pause in playback until an amount of data sufficient to permit playback resumption has been buffered.

See Also:
getBufferProgressTime()

setCycleCount

public final void setCycleCount(int value)
Sets the cycle count. Its effect will be constrained to [1,Integer.MAX_VALUE]. Invoking this method will have no effect if media duration is Duration.INDEFINITE.
Parameters:
value - the cycle count

getCycleCount

public final int getCycleCount()
Retrieves the cycle count.
Returns:
the cycle count.

cycleCountProperty

public IntegerProperty cycleCountProperty()
The number of times the media will be played. By default, cycleCount is set to 1 meaning the media will only be played once. Setting cycleCount to a value greater than 1 will cause the media to play the given number of times or until stopped. If set to INDEFINITE, playback will repeat until stop() or pause() is called.

constraints: cycleCount ≥ 1

See Also:
getCycleCount(), setCycleCount(int)

getCurrentCount

public final int getCurrentCount()
Retrieves the index of the current cycle.
Returns:
the current cycle index

currentCountProperty

public ReadOnlyIntegerProperty currentCountProperty()
The number of completed playback cycles. On the first pass, the value should be 0. On the second pass, the value should be 1 and so on. It is incremented at the end of each cycle just prior to seeking back to startTime, i.e., when stopTime or the end of media has been reached.
See Also:
getCurrentCount()

setMute

public final void setMute(boolean value)
Sets the value of muteProperty().
Parameters:
value - the mute setting

isMute

public final boolean isMute()
Retrieves the muteProperty() value.
Returns:
the mute setting

muteProperty

public BooleanProperty muteProperty()
Whether the player audio is muted. A value of true indicates that audio is not being produced. The value of this property has no effect on volume, i.e., if the audio is muted and then un-muted, audio playback will resume at the same audible level provided of course that the volume property has not been modified meanwhile. The default value is false.
See Also:
isMute(), setMute(boolean)

setOnMarker

public final void setOnMarker(EventHandler<MediaMarkerEvent> onMarker)
Sets the marker event handler.
Parameters:
onMarker - the marker event handler.

getOnMarker

public final EventHandler<MediaMarkerEvent> getOnMarker()
Retrieves the marker event handler.
Returns:
the marker event handler.

onMarkerProperty

public ObjectProperty<EventHandler<MediaMarkerEvent>> onMarkerProperty()
Event handler invoked when the player currentTime reaches a media marker.
See Also:
getOnMarker(), setOnMarker(EventHandler)

setOnEndOfMedia

public final void setOnEndOfMedia(Runnable value)
Sets the end of media event handler.
Parameters:
value - the event handler or null.

getOnEndOfMedia

public final Runnable getOnEndOfMedia()
Retrieves the end of media event handler.
Returns:
the event handler or null.

onEndOfMediaProperty

public ObjectProperty<Runnable> onEndOfMediaProperty()
Event handler invoked when the player currentTime reaches stopTime.
See Also:
getOnEndOfMedia(), setOnEndOfMedia(Runnable)

setOnReady

public final void setOnReady(Runnable value)
Sets the MediaPlayer.Status.READY event handler.
Parameters:
value - the event handler or null.

getOnReady

public final Runnable getOnReady()
Retrieves the MediaPlayer.Status.READY event handler.
Returns:
the event handler or null.

onReadyProperty

public ObjectProperty<Runnable> onReadyProperty()
Event handler invoked when the status changes to READY.
See Also:
getOnReady(), setOnReady(Runnable)

setOnPlaying

public final void setOnPlaying(Runnable value)
Sets the MediaPlayer.Status.PLAYING event handler.
Parameters:
value - the event handler or null.

getOnPlaying

public final Runnable getOnPlaying()
Retrieves the MediaPlayer.Status.PLAYING event handler.
Returns:
the event handler or null.

onPlayingProperty

public ObjectProperty<Runnable> onPlayingProperty()
Event handler invoked when the status changes to PLAYING.
See Also:
getOnPlaying(), setOnPlaying(Runnable)

setOnPaused

public final void setOnPaused(Runnable value)
Sets the MediaPlayer.Status.PAUSED event handler.
Parameters:
value - the event handler or null.

getOnPaused

public final Runnable getOnPaused()
Retrieves the MediaPlayer.Status.PAUSED event handler.
Returns:
the event handler or null.

onPausedProperty

public ObjectProperty<Runnable> onPausedProperty()
Event handler invoked when the status changes to PAUSED.
See Also:
getOnPaused(), setOnPaused(Runnable)

setOnStopped

public final void setOnStopped(Runnable value)
Sets the MediaPlayer.Status.STOPPED event handler.
Parameters:
value - the event handler or null.

getOnStopped

public final Runnable getOnStopped()
Retrieves the MediaPlayer.Status.STOPPED event handler.
Returns:
the event handler or null.

onStoppedProperty

public ObjectProperty<Runnable> onStoppedProperty()
Event handler invoked when the status changes to STOPPED.
See Also:
getOnStopped(), setOnStopped(Runnable)

setOnHalted

public final void setOnHalted(Runnable value)
Sets the MediaPlayer.Status.HALTED event handler.
Parameters:
value - the event handler or null.

getOnHalted

public final Runnable getOnHalted()
Retrieves the MediaPlayer.Status.HALTED event handler.
Returns:
the event handler or null.

onHaltedProperty

public ObjectProperty<Runnable> onHaltedProperty()
Event handler invoked when the status changes to HALTED.
See Also:
getOnHalted(), setOnHalted(Runnable)

setOnRepeat

public final void setOnRepeat(Runnable value)
Sets the repeat event handler.
Parameters:
value - the event handler or null.

getOnRepeat

public final Runnable getOnRepeat()
Retrieves the repeat event handler.
Returns:
the event handler or null.

onRepeatProperty

public ObjectProperty<Runnable> onRepeatProperty()
Event handler invoked when the player currentTime reaches stopTime and will be repeating. This callback is made prior to seeking back to startTime.
See Also:
getOnRepeat(), setOnRepeat(Runnable)

setOnStalled

public final void setOnStalled(Runnable value)
Sets the MediaPlayer.Status.STALLED event handler.
Parameters:
value - the event handler or null.

getOnStalled

public final Runnable getOnStalled()
Retrieves the MediaPlayer.Status.STALLED event handler.
Returns:
the event handler or null.

onStalledProperty

public ObjectProperty<Runnable> onStalledProperty()
Event handler invoked when the status changes to STALLED.
See Also:
getOnStalled(), setOnStalled(Runnable)

setAudioSpectrumNumBands

public final void setAudioSpectrumNumBands(int value)
Sets the number of bands in the audio spectrum.
Parameters:
value - the number of spectral bands; valuemust be ≥ 2

getAudioSpectrumNumBands

public final int getAudioSpectrumNumBands()
Retrieves the number of bands in the audio spectrum.
Returns:
the number of spectral bands.

audioSpectrumNumBandsProperty

public IntegerProperty audioSpectrumNumBandsProperty()
The number of bands in the audio spectrum. The default value is 128; minimum is 2. The frequency range of the audio signal will be divided into the specified number of frequency bins. For example, a typical digital music signal has a frequency range of [0.0, 22050] Hz. If the number of spectral bands were in this case set to 10, the width of each frequency bin in the spectrum would be 2205 Hz with the lower bound of the lowest frequency bin equal to 0.0.
See Also:
getAudioSpectrumNumBands(), setAudioSpectrumNumBands(int)

setAudioSpectrumInterval

public final void setAudioSpectrumInterval(double value)
Sets the value of the audio spectrum notification interval in seconds.
Parameters:
value - a positive value specifying the spectral update interval

getAudioSpectrumInterval

public final double getAudioSpectrumInterval()
Retrieves the value of the audio spectrum notification interval in seconds.
Returns:
the spectral update interval

audioSpectrumIntervalProperty

public DoubleProperty audioSpectrumIntervalProperty()
The interval between spectrum updates in seconds. The default is 0.1 seconds.
See Also:
getAudioSpectrumInterval(), setAudioSpectrumInterval(double)

setAudioSpectrumThreshold

public final void setAudioSpectrumThreshold(int value)
Sets the audio spectrum threshold in decibels.
Parameters:
value - the spectral threshold in dB; must be ≤ 0.

getAudioSpectrumThreshold

public final int getAudioSpectrumThreshold()
Retrieves the audio spectrum threshold in decibels.
Returns:
the spectral threshold in dB

audioSpectrumThresholdProperty

public IntegerProperty audioSpectrumThresholdProperty()
The sensitivity threshold in decibels; must be non-positive. Values below this threshold with respect to the peak frequency in the given spectral band will be set to the value of the threshold. The default value is -60 dB.
See Also:
getAudioSpectrumThreshold(), setAudioSpectrumThreshold(int)

setAudioSpectrumListener

public final void setAudioSpectrumListener(AudioSpectrumListener listener)
Sets the listener of the audio spectrum.
Parameters:
listener - the spectral listener or null.

getAudioSpectrumListener

public final AudioSpectrumListener getAudioSpectrumListener()
Retrieves the listener of the audio spectrum.
Returns:
the spectral listener or null

audioSpectrumListenerProperty

public ObjectProperty<AudioSpectrumListener> audioSpectrumListenerProperty()
A listener for audio spectrum updates. When the listener is registered, audio spectrum computation is enabled; upon removing the listener, computation is disabled. Only a single listener may be registered, so if multiple observers are required, events must be forwarded.

An AudioSpectrumListener may be useful for example to plot the frequency spectrum of the audio being played or to generate waveforms for a music visualizer.

See Also:
getAudioSpectrumListener(), setAudioSpectrumListener(AudioSpectrumListener)

dispose

public void dispose()
Free all resources associated with player. Player SHOULD NOT be used after this function is called. Player will transition to MediaPlayer.Status.DISPOSED after this method is done. This method can be called anytime regardless of current player status.
Since:
JavaFX 8.0

© 2008, 2025, Oracle and/or its affiliates. All rights reserved.
Documentation extracted from JavaFX API Documentation.
Licensed under the GNU General Public License, version 2, with the Classpath Exception.
Java, JavaFX and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API