- java.lang.Object
-
- javafx.scene.media.MediaPlayer
-
public final class MediaPlayer extends Object
КлассMediaPlayerпредоставляет средства управления воспроизведением медиа. Он используется в сочетании с классамиMediaиMediaViewдля отображения и управления воспроизведением медиа.MediaPlayerне содержит визуальных элементов, поэтому его необходимо использовать с классомMediaViewдля просмотра возможных видеодорожек.MediaPlayerпредоставляет элементы управленияpause(),play(),stop()иseek(), а также свойстваrateиautoPlay, которые применяются ко всем типам медиа. Он также предоставляет свойстваbalance,muteиvolumeдля управления характеристиками воспроизведения аудио. Более точный контроль качества звука может быть достигнут с помощьюAudioEqualizer, связанного с плеером. Описание частоты воспроизведения аудио можно наблюдать, зарегистрировавAudioSpectrumListener. Информацию о позиции воспроизведения, скорости и буферизации можно получить из свойствcurrentTime,currentRateиbufferProgressTimeсоответственно. Уведомления о маркерах медиа принимаются обработчиком событий, зарегистрированным как свойствоonMarker.Для медиа с конечной длительностью воспроизведение можно позиционировать в любой момент времени между
0.0и длительностью медиа.MediaPlayerуточняет это определение, добавив свойстваstartTimeиstopTime, которые фактически определяют виртуальный источник медиа с позицией во времени, ограниченной[startTime,stopTime]. Воспроизведение медиа начинается вstartTimeи продолжается доstopTime. Интервал, определённый этими двумя точками, называется циклом, а его продолжительность — разность между временем окончания и начала. Этот цикл можно настроить на повторение определённое или неопределённое количество раз. Общая продолжительность воспроизведения медиа — это произведение продолжительности цикла и количества его повторений. Если время окончания цикла достигнуто, и цикл должен быть воспроизведён повторно, вызывается обработчик событий, зарегистрированный в свойствеonRepeat. Если время окончания достигнуто, и цикл не должен быть повторён, вызывается обработчик событий, зарегистрированный в свойствеonEndOfMedia. Нулевой индекс, показывающий, какой цикл сейчас воспроизводится, поддерживается свойствомcurrentCount.Работа
MediaPlayerпо своей природе асинхронна. Плеер не готов ответить на команды практически мгновенно до тех пор, пока его статус не перейдёт вMediaPlayer.Status.READY, что обычно происходит при завершении предварительного воспроизведения медиа. Некоторые запросы, отправленные плеером до перехода в состояниеREADY, будут выполнены при входе в это состояние. К ним относятся вызовplay()без последующего вызоваpause()илиstop()до перехода в состояниеREADY, а также установка любого из свойствautoPlay,balance,mute,rate,startTime,stopTimeиvolume.Свойство
statusможет отслеживаться, чтобы приложение знало об изменениях состояния плеера, и обратные функции могут быть зарегистрированы с помощью таких свойств, какonReady, если необходимо выполнить какое-либо действие при входе в определённое состояние. Также существуют свойстваerrorиonError, которые соответственно позволяют отслеживать возникновение ошибки и выполнять заданное действие в ответ на неё.Один и тот же объект
MediaPlayerможет быть использован несколькимиMediaView. Это не повлияет на сам плеер. В частности, настройки свойств представления не будут оказывать никакого влияния на воспроизведение медиа.
-
Краткое описание свойств
Свойства Тип Свойство Описание DoublePropertyaudioSpectrumIntervalИнтервал между обновлениями спектра в секундах.ObjectProperty<AudioSpectrumListener>audioSpectrumListenerПрослушиватель обновлений аудиоспектра.IntegerPropertyaudioSpectrumNumBandsКоличество полос в аудиоспектре.IntegerPropertyaudioSpectrumThresholdПороговое значение чувствительности в децибелах; должно быть не положительным.BooleanPropertyautoPlayНачинать воспроизведение как можно скорее.DoublePropertybalanceБаланс или настройка лево-право аудиовыхода.ReadOnlyObjectProperty<Duration>bufferProgressTimeТекущая позиция буфера, показывающая, сколько медиа можно воспроизвести без остановкиMediaPlayer.ReadOnlyIntegerPropertycurrentCountКоличество завершённых циклов воспроизведения.ReadOnlyDoublePropertycurrentRateТекущая скорость воспроизведения независимо от настроек.ReadOnlyObjectProperty<Duration>currentTimeТекущее время воспроизведения медиа.IntegerPropertycycleCountКоличество раз, когда медиа будет воспроизведено.ReadOnlyObjectProperty<Duration>cycleDurationReadOnlyObjectProperty<MediaException>errorНаблюдаемое свойство, устанавливаемое вMediaException, если произошла ошибка.BooleanPropertymuteВыключен ли звук плеера.ObjectProperty<Runnable>onEndOfMediaОбработчик событий, вызываемый, когда плеерcurrentTimeдостигаетstopTime.ObjectProperty<Runnable>onErrorОбработчик событий, вызываемый при возникновении ошибки.ObjectProperty<Runnable>onHaltedОбработчик событий, вызываемый при изменении статуса наHALTED.ObjectProperty<EventHandler<MediaMarkerEvent>>onMarkerОбработчик событий, вызываемый, когда плеерcurrentTimeдостигает метки медиа.ObjectProperty<Runnable>onPausedОбработчик событий, вызываемый при изменении статуса наPAUSED.ObjectProperty<Runnable>onPlayingОбработчик событий, вызываемый при изменении статуса наPLAYING.ObjectProperty<Runnable>onReadyОбработчик событий, вызываемый при изменении статуса наREADY.ObjectProperty<Runnable>onRepeatОбработчик событий, вызываемый, когда плеерcurrentTimeдостигаетstopTimeи будет повторяться.ObjectProperty<Runnable>onStalledОбработчик событий, вызываемый при изменении статуса наSTALLED.ObjectProperty<Runnable>onStoppedОбработчик событий, вызываемый при изменении статуса наSTOPPED.DoublePropertyrateСкорость воспроизведения медиа.ObjectProperty<Duration>startTimeСмещение времени, с которого следует начать воспроизведение медиа или перезапуск при повторении.ReadOnlyObjectProperty<MediaPlayer.Status>statusТекущее состояние MediaPlayer.ObjectProperty<Duration>stopTimeСмещение времени, где следует остановить воспроизведение медиа или перезапуск при повторении.ReadOnlyObjectProperty<Duration>totalDurationОбщее время воспроизведения, если разрешено воспроизведение до конца.DoublePropertyvolumeГромкость, с которой следует воспроизводить медиа.
-
Краткое описание вложенных классов
Вложенные классы Модификатор и тип Класс Описание static classMediaPlayer.StatusПеречисление, описывающее различные значения статусаMediaPlayer.
-
Краткое описание полей
Поля Модификатор и тип Поле Описание static intINDEFINITEЗначение, представляющее эффективно бесконечное количество циклов воспроизведения.
-
Краткое описание конструкторов
Конструкторы Конструктор Описание MediaPlayer(Media media)Создать плеер для определённого медиа.
-
Краткое описание методов
Все методыМетоды экземпляраКонкретные методы Модификатор и тип Метод Описание DoublePropertyaudioSpectrumIntervalProperty()Интервал между обновлениями спектра в секундах.ObjectProperty<AudioSpectrumListener>audioSpectrumListenerProperty()Прослушиватель обновлений аудиоспектра.IntegerPropertyaudioSpectrumNumBandsProperty()Количество полос в аудиоспектре.IntegerPropertyaudioSpectrumThresholdProperty()Пороговое значение чувствительности в децибелах; должно быть не положительным.BooleanPropertyautoPlayProperty()Указывает, нужно ли начать воспроизведение как можно быстрее.DoublePropertybalanceProperty()Баланс или стереофоническое положение аудиовыхода.ReadOnlyObjectProperty<Duration>bufferProgressTimeProperty()Текущая позиция буфера, показывающая, сколько медиа можно воспроизвести без остановкиMediaPlayer.ReadOnlyIntegerPropertycurrentCountProperty()Количество завершенных циклов воспроизведения.ReadOnlyDoublePropertycurrentRateProperty()Текущая скорость воспроизведения независимо от настроек.ReadOnlyObjectProperty<Duration>currentTimeProperty()Текущее время воспроизведения медиа.IntegerPropertycycleCountProperty()Количество раз, когда медиа будет воспроизведено.ReadOnlyObjectProperty<Duration>cycleDurationProperty()voiddispose()Освободить все ресурсы, связанные с плеером.ReadOnlyObjectProperty<MediaException>errorProperty()Свойство, наблюдаемое, установленное наMediaException, если произошла ошибка.AudioEqualizergetAudioEqualizer()Получить связанный с этим плееромAudioEqualizer.doublegetAudioSpectrumInterval()Получает значение интервала уведомления о спектре звука в секундах.AudioSpectrumListenergetAudioSpectrumListener()Получает прослушиватель аудиоспектра.intgetAudioSpectrumNumBands()Получает количество полос в аудиоспектре.intgetAudioSpectrumThreshold()Получает порог аудиоспектра в децибелах.doublegetBalance()Получает баланс аудио.DurationgetBufferProgressTime()Получает значениеbufferProgressTime.intgetCurrentCount()Получает номер текущего цикла.doublegetCurrentRate()Получает текущую скорость воспроизведения.DurationgetCurrentTime()Получает текущее время медиа.intgetCycleCount()Получает счетчик циклов.DurationgetCycleDuration()Получает продолжительность цикла в секундах.MediaExceptiongetError()Получить значение свойстваerrorилиnull, если ошибки нет.MediagetMedia()Получает экземплярMedia, который воспроизводится.RunnablegetOnEndOfMedia()Получает обработчик событий конца медиа.RunnablegetOnError()Получает обработчик событий ошибок.RunnablegetOnHalted()Получает обработчик событийMediaPlayer.Status.HALTED.EventHandler<MediaMarkerEvent>getOnMarker()Получает обработчик событий меток.RunnablegetOnPaused()Получает обработчик событийMediaPlayer.Status.PAUSED.RunnablegetOnPlaying()Получает обработчик событийMediaPlayer.Status.PLAYING.RunnablegetOnReady()Получает обработчик событийMediaPlayer.Status.READY.RunnablegetOnRepeat()Получает обработчик событий повтора.RunnablegetOnStalled()Получает обработчик событийMediaPlayer.Status.STALLED.RunnablegetOnStopped()Получает обработчик событийMediaPlayer.Status.STOPPED.doublegetRate()Получает скорость воспроизведения.DurationgetStartTime()Получает начальное время.MediaPlayer.StatusgetStatus()Получает текущий статус плеера.
DurationgetStopTime()Получает время остановки.DurationgetTotalDuration()Получает общее время воспроизведения, включая все циклы (повторения).doublegetVolume()Получает громкость аудиовоспроизведения.booleanisAutoPlay()Получает значение свойстваautoPlay.booleanisMute()Получает значениеmuteProperty().BooleanPropertymuteProperty()Установлен ли звук воспроизведения видео в беззвучном режиме.ObjectProperty<Runnable>onEndOfMediaProperty()Обработчик событий, вызываемый, когдаcurrentTimeвоспроизводитstopTime.ObjectProperty<Runnable>onErrorProperty()Обработчик событий, вызываемый при возникновении ошибки.ObjectProperty<Runnable>onHaltedProperty()Обработчик событий, вызываемый при изменении состояния наHALTED.ObjectProperty<EventHandler<MediaMarkerEvent>>onMarkerProperty()Обработчик событий, вызываемый, когдаcurrentTimeдостигает метки медиа.ObjectProperty<Runnable>onPausedProperty()Обработчик событий, вызываемый при изменении состояния наPAUSED.ObjectProperty<Runnable>onPlayingProperty()Обработчик событий, вызываемый при изменении состояния наPLAYING.ObjectProperty<Runnable>onReadyProperty()Обработчик событий, вызываемый при изменении состояния наREADY.ObjectProperty<Runnable>onRepeatProperty()Обработчик событий, вызываемый, когдаcurrentTimeдостигаетstopTimeи будет повторяться.ObjectProperty<Runnable>onStalledProperty()Обработчик событий, вызываемый при изменении состояния наSTALLED.ObjectProperty<Runnable>onStoppedProperty()Обработчик событий, вызываемый при изменении состояния наSTOPPED.voidpause()Приостанавливает воспроизведение.voidplay()Начинает воспроизведение медиа.DoublePropertyrateProperty()Скорость воспроизведения медиа.voidseek(Duration seekTime)Перемещает воспроизведение на новое время.voidsetAudioSpectrumInterval(double value)Устанавливает интервал уведомлений спектра аудио в секундах.voidsetAudioSpectrumListener(AudioSpectrumListener listener)Устанавливает слушателя спектра аудио.voidsetAudioSpectrumNumBands(int value)Устанавливает количество полос в спектре аудио.voidsetAudioSpectrumThreshold(int value)Устанавливает порог спектра аудио в децибелах.voidsetAutoPlay(boolean value)Устанавливает значение свойстваautoPlay.voidsetBalance(double value)Устанавливает баланс аудио.voidsetCycleCount(int value)Устанавливает счётчик циклов.voidsetMute(boolean value)Устанавливает значениеmuteProperty().voidsetOnEndOfMedia(Runnable value)Устанавливает обработчик событий конца медиа.voidsetOnError(Runnable value)Устанавливает обработчик событий, вызываемый при возникновении ошибки.voidsetOnHalted(Runnable value)Устанавливает обработчик событийMediaPlayer.Status.HALTED.voidsetOnMarker(EventHandler<MediaMarkerEvent> onMarker)Устанавливает обработчик событий метки.voidsetOnPaused(Runnable value)Устанавливает обработчик событийMediaPlayer.Status.PAUSED.voidsetOnPlaying(Runnable value)Устанавливает обработчик событийMediaPlayer.Status.PLAYING.voidsetOnReady(Runnable value)Устанавливает обработчик событийMediaPlayer.Status.READY.voidsetOnRepeat(Runnable value)Устанавливает обработчик событий повторения.voidsetOnStalled(Runnable value)Устанавливает обработчик событийMediaPlayer.Status.STALLED.voidsetOnStopped(Runnable value)Устанавливает обработчик событийMediaPlayer.Status.STOPPED.voidsetRate(double value)Устанавливает скорость воспроизведения на указанное значение.voidsetStartTime(Duration value)Устанавливает начальное время.voidsetStopTime(Duration value)Устанавливает время остановки.voidsetVolume(double value)Устанавливает громкость аудиовоспроизведения.ObjectProperty<Duration>startTimeProperty()Смещение времени, с которого должно начаться воспроизведение медиа, или с которого оно должно перезапуститься при повторении.
ReadOnlyObjectProperty<MediaPlayer.Status>statusProperty()Текущее состояние проигрывателя медиа.voidstop()Останавливает воспроизведение медиа.ObjectProperty<Duration>stopTimeProperty()Смещение во времени, где медиа должно остановиться или перезапуститься при повторе.ReadOnlyObjectProperty<Duration>totalDurationProperty()Общее время воспроизведения, если разрешено играть до конца.DoublePropertyvolumeProperty()Громкость, с которой должна воспроизводиться медиа.
-
Подробное описание свойств
-
error
public ReadOnlyObjectProperty<MediaException> errorProperty
Наблюдаемое свойство, устанавливаемое вMediaException, если произошла ошибка.- См. также:
getError()
-
onError
public ObjectProperty<Runnable> onErrorProperty
Обработчик событий, вызываемый при возникновении ошибки.- См. также:
-
getOnError(),setOnError(Runnable)
-
autoPlay
public BooleanProperty autoPlayProperty
Указывает, следует ли начать воспроизведение как можно скорее. Для нового плеера это произойдёт, как только плеер достигнет состояния READY. Значение по умолчанию —false.- См. также:
-
isAutoPlay(),setAutoPlay(boolean)
-
rate
public DoubleProperty rateProperty
Скорость воспроизведения медиа. Например, значение1.0соответствует нормальной (закодированной) скорости воспроизведения,2.0— удвоенной нормальной скорости и т. д. Текущий поддерживаемый диапазон скоростей —[0.0, 8.0]. Значение по умолчанию —1.0.- См. также:
-
getRate(),setRate(double)
-
currentRate
public ReadOnlyDoubleProperty currentRateProperty
Текущая скорость воспроизведения независимо от настроек. Например, еслиrateустановлено в 1.0, а плеер приостановлен или заблокирован, тоcurrentRateбудет равно нулю.- См. также:
getCurrentRate()
-
volume
public DoubleProperty volumeProperty
Уровень громкости воспроизведения медиа. Диапазон эффективных значений —[0.0 1.0], где0.0— не слышно, а1.0— полная громкость, которая является значением по умолчанию.- См. также:
-
getVolume(),setVolume(double)
-
balance
public DoubleProperty balanceProperty
Баланс (лево-право) аудиовыхода. Диапазон эффективных значений —[-1.0, 1.0], где-1.0— полностью слева,0.0— по центру и1.0— полностью справа. Значение по умолчанию —0.0.- См. также:
-
getBalance(),setBalance(double)
-
startTime
public ObjectProperty<Duration> startTimeProperty
Смещение времени, с которого должно начаться воспроизведение медиа или с которого следует перезапустить воспроизведение при повторе. При остановке воспроизведения текущее время сбрасывается до этого значения. Если это значение положительное, то при первом воспроизведении медиа может быть задержка перед началом воспроизведения, если позиция воспроизведения может быть установлена в произвольное время внутри медиа. Это может произойти, например, для видео, которое не содержит таблицы поиска смещений внутрикадровых кадров в потоке видео. В таком случае видеокадры должны пропускаться, пока не будет достигнута позиция первого внутрикадрового кадра до начального времени. Значение по умолчанию —Duration.ZERO.Ограничения:
0 ≤ startTime <stopTime- См. также:
-
getStartTime(),setStartTime(Duration)
-
stopTime
public ObjectProperty<Duration> stopTimeProperty
Смещение времени, до которого должно воспроизводиться медиа или с которого следует перезапустить воспроизведение при повторе. Значение по умолчанию —.getMedia().getDuration()Ограничения:
startTime< stopTime ≤Media.duration- См. также:
-
getStopTime(),setStopTime(Duration)
-
cycleDuration
public ReadOnlyObjectProperty<Duration> cycleDurationProperty
Промежуток времени междуstartTimeиstopTimeэтого плеера. Для общей длительности медиа используйте свойствоMedia.duration.- См. также:
getCycleDuration()
-
totalDuration
public ReadOnlyObjectProperty<Duration> totalDurationProperty
Общее время воспроизведения, если разрешено воспроизводить до завершения. ЕслиcycleCountустановлено вINDEFINITE, то это также будет BEZ_PREDELA. Если продолжительность медиа — NEIZVESTNO, то это также будет NEIZVESTNO. В противном случае, общая продолжительность будет произведением cycleDuration и cycleCount.- См. также:
getTotalDuration()
-
currentTime
public ReadOnlyObjectProperty<Duration> currentTimeProperty
Текущее время воспроизведения медиа. Это свойство только для чтения: используйтеseek(javafx.util.Duration), чтобы изменить позицию воспроизведения в потоке.- См. также:
getCurrentTime()
-
status
public ReadOnlyObjectProperty<MediaPlayer.Status> statusProperty
Текущее состояние MediaPlayer.- См. также:
getStatus()
-
bufferProgressTime
public ReadOnlyObjectProperty<Duration> bufferProgressTimeProperty
Текущая позиция буфера, указывающая, сколько медиа можно воспроизвести, не приостанавливаяMediaPlayer. Это применимо к буферизованным потокам, например, тем, которые считывают данные из сетевых подключений, в отличие, например, от локальных файлов.Переход к позиции, превышающей
bufferProgressTime, может привести к небольшой паузе в воспроизведении до тех пор, пока не будет буферизован объём данных, достаточный для возобновления воспроизведения.- См. также:
getBufferProgressTime()
-
cycleCount
public IntegerProperty cycleCountProperty
Количество раз, которое медиа будет воспроизведено. По умолчаниюcycleCountустановлено в1, что означает, что медиа будет воспроизведено только один раз. УстановкаcycleCountна значение больше 1 заставит медиа воспроизводиться заданное количество раз или до остановки. При установке вINDEFINITEвоспроизведение будет повторяться до вызова stop() или pause().ограничения:
cycleCount ≥ 1- См. также:
-
getCycleCount(),setCycleCount(int)
-
currentCount
public ReadOnlyIntegerProperty currentCountProperty
Количество завершенных циклов воспроизведения. В первом проходе значение должно быть 0. Во втором проходе — 1 и так далее. Оно увеличивается в конце каждого цикла непосредственно перед возвратом кstartTime, т. е. когдаstopTimeили конец медиа достигнут.- См. также:
getCurrentCount()
-
mute
public BooleanProperty muteProperty
Указывает, заглушен ли аудиоплеер. Значениеtrueозначает, что звук не воспроизводится. Это свойство не влияет наvolume, т. е. если звук заглушен, а затем разблокирован, аудиовоспроизведение возобновится на том же уровне громкости, при условии, что свойствоvolumeне было изменено тем временем. Значение по умолчанию —false.- См. также:
-
isMute(),setMute(boolean)
-
onMarker
public ObjectProperty<EventHandler<MediaMarkerEvent>> onMarkerProperty
Обработчик событий, вызываемый, когда плеерcurrentTimeдостигает метки медиа.- См. также:
-
getOnMarker(),setOnMarker(EventHandler)
-
onEndOfMedia
public ObjectProperty<Runnable> onEndOfMediaProperty
Обработчик событий, вызываемый, когда плеерcurrentTimeдостигаетstopTime.- См. также:
-
getOnEndOfMedia(),setOnEndOfMedia(Runnable)
-
onReady
public ObjectProperty<Runnable> onReadyProperty
Обработчик событий, вызываемый, когда статус изменяется наREADY.- См. также:
-
getOnReady(),setOnReady(Runnable)
-
onPlaying
public ObjectProperty<Runnable> onPlayingProperty
Обработчик событий, вызываемый, когда статус изменяется наPLAYING.- См. также:
-
getOnPlaying(),setOnPlaying(Runnable)
-
-
onPaused
public ObjectProperty<Runnable> onPausedProperty
Обработчик события, вызываемый, когда состояние изменяется наPAUSED.- См. также:
-
getOnPaused(),setOnPaused(Runnable)
-
onStopped
public ObjectProperty<Runnable> onStoppedProperty
Обработчик события, вызываемый, когда состояние изменяется наSTOPPED.- См. также:
-
getOnStopped(),setOnStopped(Runnable)
-
onHalted
public ObjectProperty<Runnable> onHaltedProperty
Обработчик события, вызываемый, когда состояние изменяется наHALTED.- См. также:
-
getOnHalted(),setOnHalted(Runnable)
-
onRepeat
public ObjectProperty<Runnable> onRepeatProperty
Обработчик события, вызываемый, когда проигрывательcurrentTimeдостигаетstopTimeи будет повторяться. Этот обратный вызов выполняется до поиска назад кstartTime.- См. также:
-
getOnRepeat(),setOnRepeat(Runnable)
-
onStalled
public ObjectProperty<Runnable> onStalledProperty
Обработчик события, вызываемый, когда состояние изменяется наSTALLED.- См. также:
-
getOnStalled(),setOnStalled(Runnable)
-
audioSpectrumNumBands
public IntegerProperty audioSpectrumNumBandsProperty
Количество полос в спектре аудио. Значение по умолчанию — 128; минимальное значение — 2. Диапазон частот аудиосигнала будет разделен на указанное количество частотных бинов. Например, типичный цифровой музыкальный сигнал имеет диапазон частот[0.0, 22050]Гц. Если число спектральных полос в этом случае установлено на 10, ширина каждого частотного бина в спектре составит2205Гц, а нижняя граница самого низкого частотного бина равна0.0.
-
audioSpectrumInterval
public DoubleProperty audioSpectrumIntervalProperty
Интервал между обновлениями спектра в секундах. Значение по умолчанию —0.1секунды.
-
audioSpectrumThreshold
public IntegerProperty audioSpectrumThresholdProperty
Пороговое значение чувствительности в децибелах; должно быть не положительным. Значения ниже этого порога по отношению к пиковой частоте в заданной спектральной полосе будут установлены равными значению порога. Значение по умолчанию — -60 дБ.
-
audioSpectrumListener
public ObjectProperty<AudioSpectrumListener> audioSpectrumListenerProperty
Слушатель обновлений спектра аудио. При регистрации слушателя вычисление спектра аудио включается; при удалении слушателя — выключается. Может быть зарегистрирован только один слушатель, поэтому если требуется несколько наблюдателей, события должны передаваться.Слушатель может быть полезным, например, для построения спектра частот воспроизводимого аудио или для генерации волновых форм для визуализатора музыки.
-
-
Field Detail
-
INDEFINITE
public static final int INDEFINITE
Значение, представляющее эффективно бесконечное число циклов воспроизведения. КогдаcycleCountустановлено в это значение, проигрыватель будет повторятьMediaдо остановки или паузы.- См. также:
- Значения константных полей
-
-
Constructor Detail
-
MediaPlayer
public MediaPlayer(Media media)
Создает проигрыватель для определенного медиа. Это единственный способ связать объектMediaсMediaPlayer: после создания проигрыватель изменить нельзя. Ошибки, возникающие синхронно в конструкторе, приведут к сбросу исключений. Асинхронные ошибки приведут к установке свойстваerrorи, как следствие, вызову любого обратного вызоваonError.При создании состояние
statusпроигрывателя будетMediaPlayer.Status.UNKNOWN. После того, какstatusперейдет в состояниеMediaPlayer.Status.READY, проигрыватель будет готов к использованию. Время между созданием проигрывателя и переходом в состояниеREADYможет варьироваться в зависимости, например, от того, загружается ли медиа из сетевого подключения или локального файловой системы.- Параметры:
-
media— медиа для воспроизведения. - Исключения:
-
NullPointerException— если медиаnull. -
MediaException— если возникают какие-либо синхронные ошибки в конструкторе.
-
-
Подробное описание методов
-
getAudioEqualizer
public final AudioEqualizer getAudioEqualizer()
ПолучениеAudioEqualizer, связанного с этим проигрывателем.- Возвращает:
AudioEqualizerилиnull, если проигрыватель утилизирован.
-
getError
public final MediaException getError()
Получение значения свойстваerrorилиnull, если ошибка отсутствует.- Возвращает:
MediaExceptionилиnull.
-
errorProperty
public ReadOnlyObjectProperty<MediaException> errorProperty()
Свойство, устанавливаемое вMediaException, если возникает ошибка.- См. также:
getError()
-
setOnError
public final void setOnError(Runnable value)
Устанавливает обработчик событий, вызываемый при возникновении ошибки.- Параметры:
-
value- обработчик событий илиnull.
-
getOnError
public final Runnable getOnError()
Получение обработчика событий ошибок.- Возвращает:
- обработчик событий.
-
onErrorProperty
public ObjectProperty<Runnable> onErrorProperty()
Обработчик событий, вызываемый при возникновении ошибки.- См. также:
-
getOnError(),setOnError(Runnable)
-
getMedia
public final Media getMedia()
Получение экземпляраMedia, воспроизводимого в данный момент.- Возвращает:
- объект
Media.
-
setAutoPlay
public final void setAutoPlay(boolean value)
Устанавливает значение свойстваautoPlay.- Параметры:
-
value- включить автоматическое воспроизведение
-
isAutoPlay
public final boolean isAutoPlay()
Получение значения свойстваautoPlay.- Возвращает:
- значение.
-
autoPlayProperty
public BooleanProperty autoPlayProperty()
Указывает, должно ли воспроизведение начаться как можно скорее. Для нового проигрывателя это произойдет после того, как он достигнет состояния READY. Значение по умолчанию -false.- См. также:
-
isAutoPlay(),setAutoPlay(boolean)
-
play
public void play()
Запускает воспроизведение медиа. Если ранее было приостановлено, воспроизведение возобновляется с того места, где было прервано. Если воспроизведение было остановлено, воспроизведение начинается сstartTime. При фактическом запуске воспроизведенияstatusбудет установлено вMediaPlayer.Status.PLAYING.
-
pause
public void pause()
Приостанавливает проигрыватель. После фактического приостановления проигрывателяstatusбудет установлено вMediaPlayer.Status.PAUSED.
-
stop
public void stop()
Останавливает воспроизведение медиа. Эта операция сбрасывает воспроизведение доstartTimeи сбрасываетcurrentCountдо нуля. После фактической остановки проигрывателяstatusбудет установлено вMediaPlayer.Status.STOPPED. Единственные переходы из состоянияSTOPPED- это вMediaPlayer.Status.PAUSEDиMediaPlayer.Status.PLAYING, которые происходят после вызоваpause()илиplay()соответственно. Во время остановки проигрыватель не будет реагировать на изменения позиции воспроизведения, запрошенныеseek(javafx.util.Duration).
-
setRate
public final void setRate(double value)
Устанавливает скорость воспроизведения в указанное значение. Его влияние будет ограничено диапазоном[0.0, 8.0]. Вызов этого метода не повлияет, если длительность медиаDuration.INDEFINITE.- Параметры:
-
value- скорость воспроизведения
-
getRate
public final double getRate()
Получение скорости воспроизведения.- Возвращает:
- скорость воспроизведения
-
rateProperty
public DoubleProperty rateProperty()
Скорость воспроизведения медиа. Например, скорость1.0воспроизводит медиа с обычной (кодированной) скоростью воспроизведения,2.0воспроизводит в два раза быстрее, и т. д. В настоящее время поддерживаемый диапазон скоростей[0.0, 8.0]. Значение по умолчанию -1.0.- См. также:
-
getRate(),setRate(double)
-
getCurrentRate
public final double getCurrentRate()
Получение текущей скорости воспроизведения.- Возвращает:
- текущую скорость
-
currentRateProperty
public ReadOnlyDoubleProperty currentRateProperty()
Текущая скорость воспроизведения независимо от настроек. Например, еслиrateустановлено в 1.0, а проигрыватель приостановлен или заблокирован, тогдаcurrentRateбудет равно нулю.- См. также:
getCurrentRate()
-
setVolume
public final void setVolume(double value)
Устанавливает громкость аудиовоспроизведения. Ее влияние будет ограничено диапазоном[0.0, 1.0].- Параметры:
-
value- громкость
-
getVolume
public final double getVolume()
Получение громкости аудиовоспроизведения. Значение по умолчанию -1.0.- Возвращает:
- громкость аудио
-
volumeProperty
public DoubleProperty volumeProperty()
Громкость, с которой должно воспроизводиться медиа. Диапазон эффективных значений[0.0 1.0], где0.0- неслышно, а1.0- полная громкость, которая является значением по умолчанию.- См. также:
-
getVolume(),setVolume(double)
-
setBalance
public final void setBalance(double value)
Устанавливает баланс аудио. Его влияние будет ограничено диапазоном[-1.0, 1.0].- Параметры:
-
value- баланс
-
getBalance
public final double getBalance()
Получение баланса аудио.- Возвращает:
- баланс аудио
-
balanceProperty
public DoubleProperty balanceProperty()
Баланс или настройка лево-право аудиовыхода. Диапазон эффективных значений[-1.0, 1.0], где-1.0- полное лево,0.0- центр, и1.0- полное право. Значение по умолчанию -0.0.- См. также:
-
getBalance(),setBalance(double)
-
setStartTime
public final void setStartTime(Duration value)
Устанавливает начальное время. Его влияние будет ограничено диапазоном[. Вызов этого метода не повлияет, если длительность медиаDuration.ZERO,stopTime)Duration.INDEFINITE.- Параметры:
-
value- начальное время
-
getStartTime
public final Duration getStartTime()
Получение начального времени. Значение по умолчанию -Duration.ZERO.- Возвращает:
- начальное время
-
-
startTimeProperty
public ObjectProperty<Duration> startTimeProperty()
Время смещения, с которого следует начать воспроизведение медиа или с которого следует перезапустить воспроизведение при повторе. При остановке воспроизведения текущее время сбрасывается до этого значения. Если это значение положительное, то при первом воспроизведении медиа может произойти задержка перед началом воспроизведения, если позиция воспроизведения не может быть установлена на произвольное время в пределах медиа. Это может произойти, например, для видео, которое не содержит таблицы поиска смещений внутрикадровых кадров в потоке видео. В таком случае видеокадры должны быть пропущены до тех пор, пока не будет достигнута позиция первого внутрикадрового кадра перед начальным временем. Значение по умолчанию равноDuration.ZERO.Ограничения:
0 ≤ startTime <stopTime- См. также:
-
getStartTime(),setStartTime(Duration)
-
setStopTime
public final void setStopTime(Duration value)
Устанавливает время остановки. Его эффект будет ограничен диапазоном(. Вызов этого метода не окажет никакого влияния, если продолжительность медиаstartTime,Media.duration]Duration.INDEFINITE.- Параметры:
-
value- время остановки
-
getStopTime
public final Duration getStopTime()
Возвращает время остановки. Значение по умолчанию равно. Обратите внимание, чтоgetMedia().getDuration()может иметь значениеMedia.durationDuration.UNKNOWN, если инициализация медиа не завершена.- Возвращает:
- время остановки
-
stopTimeProperty
public ObjectProperty<Duration> stopTimeProperty()
Смещение времени, по которому медиа должно остановиться или перезапуститься при повторе. Значение по умолчанию -.getMedia().getDuration()Ограничения:
startTime< stopTime ≤Media.duration- См. также:
-
getStopTime(),setStopTime(Duration)
-
getCycleDuration
public final Duration getCycleDuration()
Возвращает продолжительность цикла в секундах.- Возвращает:
- продолжительность цикла
-
cycleDurationProperty
public ReadOnlyObjectProperty<Duration> cycleDurationProperty()
Длительность времени междуstartTimeиstopTimeэтого плеера. Для общей продолжительности медиа используйте свойствоMedia.duration.- См. также:
getCycleDuration()
-
getTotalDuration
public final Duration getTotalDuration()
Возвращает общую продолжительность воспроизведения, включая все циклы (повторения).- Возвращает:
- общая продолжительность воспроизведения
-
totalDurationProperty
public ReadOnlyObjectProperty<Duration> totalDurationProperty()
Общее время воспроизведения, если разрешено воспроизводить до завершения. ЕслиcycleCountустановлено вINDEFINITE, то это также будет INDEFINITE. Если продолжительность медиа UNKNOWN, то это также будет UNKNOWN. В противном случае общая продолжительность будет произведением cycleDuration и cycleCount.- См. также:
getTotalDuration()
-
getCurrentTime
public final Duration getCurrentTime()
Возвращает текущее время медиа.- Возвращает:
- текущее время медиа
-
currentTimeProperty
public ReadOnlyObjectProperty<Duration> currentTimeProperty()
Текущее время воспроизведения медиа. Это свойство только для чтения: используйтеseek(javafx.util.Duration)для изменения позиции воспроизведения на другую позицию потока.- См. также:
getCurrentTime()
-
seek
public void seek(Duration seekTime)
Перемещает плеер к новому времени воспроизведения. Вызов этого метода не окажет никакого влияния, пока состояние плеераMediaPlayer.Status.STOPPEDили продолжительность медиаDuration.INDEFINITE.Поведение
seek()ограничено следующим образом, где начальное время и время остановки обозначают эффективные нижнюю и верхнюю границы воспроизведения медиа, соответственно:Таблица поиска MediaPlayer seekTime позиция поиска nullбез изменений Duration.UNKNOWNбез изменений Duration.INDEFINITEвремя остановки seekTime < начальное время начальное время seekTime > время остановки время остановки начальное время ≤ seekTime ≤ время остановки seekTime - Параметры:
-
seekTime- запрашиваемое время воспроизведения
-
getStatus
public final MediaPlayer.Status getStatus()
Возвращает текущее состояние плеера.- Возвращает:
- состояние воспроизведения
-
statusProperty
public ReadOnlyObjectProperty<MediaPlayer.Status> statusProperty()
Текущее состояние MediaPlayer.- См. также:
getStatus()
-
getBufferProgressTime
public final Duration getBufferProgressTime()
Возвращает значениеbufferProgressTime.- Возвращает:
- время прогресса буфера
-
bufferProgressTimeProperty
public ReadOnlyObjectProperty<Duration> bufferProgressTimeProperty()
Текущая позиция буфера, показывающая, сколько медиа можно воспроизвести без приостановкиMediaPlayer. Это применимо к буферизованным потокам, таким как чтение из сетевых подключений, в отличие, например, от локальных файлов.Поиск позиции, превышающей
bufferProgressTime, может вызвать небольшую паузу в воспроизведении до тех пор, пока не будет буферизовано достаточное количество данных, чтобы возобновить воспроизведение.- См. также:
getBufferProgressTime()
-
setCycleCount
public final void setCycleCount(int value)
Устанавливает счетчик циклов. Его эффект будет ограничен[1,. Вызов этого метода не окажет никакого влияния, если продолжительность медиаInteger.MAX_VALUE]Duration.INDEFINITE.- Параметры:
-
value- счетчик циклов
-
getCycleCount
public final int getCycleCount()
Возвращает счетчик циклов.- Возвращает:
- счетчик циклов.
-
cycleCountProperty
public IntegerProperty cycleCountProperty()
Количество раз, которое медиа будет воспроизводиться. По умолчанию,cycleCountустановлено в1, что означает, что медиа будет воспроизведено только один раз. УстановкаcycleCountна значение больше 1 приведет к воспроизведению медиа заданное количество раз или до остановки. Если установлено вINDEFINITE, воспроизведение будет повторяться до тех пор, пока не будет вызван stop() или pause().ограничения:
cycleCount ≥ 1- См. также:
-
getCycleCount(),setCycleCount(int)
-
getCurrentCount
public final int getCurrentCount()
Возвращает индекс текущего цикла.- Возвращает:
- индекс текущего цикла
-
currentCountProperty
public ReadOnlyIntegerProperty currentCountProperty()
Количество завершенных циклов воспроизведения. В первый проход значение должно быть 0. Во второй проход значение должно быть 1 и так далее. Оно увеличивается в конце каждого цикла сразу перед возвратом кstartTime, т. е., когдаstopTimeили конец медиа достигнут.- См. также:
getCurrentCount()
-
setMute
public final void setMute(boolean value)
Устанавливает значениеmuteProperty().- Параметры:
-
value- значение настройкиmute
-
isMute
public final boolean isMute()
Возвращает значениеmuteProperty().- Возвращает:
- настройка отключения звука
-
-
muteProperty
public BooleanProperty muteProperty()
Включена ли настройка звукового вывода для игрока. Значениеtrueуказывает на то, что звук не воспроизводится. Значение этого свойства не влияет наvolume, т.е., если звук был выключен, а затем включен, воспроизведение звука возобновится на том же уровне громкости при условии, что свойствоvolumeне было изменено тем временем. Значение по умолчанию —false.- См. также:
-
isMute(),setMute(boolean)
-
setOnMarker
public final void setOnMarker(EventHandler<MediaMarkerEvent> onMarker)
Устанавливает обработчик событий маркера.- Параметры:
-
onMarker— обработчик событий маркера.
-
getOnMarker
public final EventHandler<MediaMarkerEvent> getOnMarker()
Возвращает обработчик событий маркера.- Возвращает:
- обработчик событий маркера.
-
onMarkerProperty
public ObjectProperty<EventHandler<MediaMarkerEvent>> onMarkerProperty()
Обработчик событий, вызываемый, когда игрокcurrentTimeдостигает медиа-маркера.- См. также:
-
getOnMarker(),setOnMarker(EventHandler)
-
setOnEndOfMedia
public final void setOnEndOfMedia(Runnable value)
Устанавливает обработчик событий конца медиа.- Параметры:
-
value— обработчик событий илиnull.
-
getOnEndOfMedia
public final Runnable getOnEndOfMedia()
Возвращает обработчик событий конца медиа.- Возвращает:
- обработчик событий или
null.
-
onEndOfMediaProperty
public ObjectProperty<Runnable> onEndOfMediaProperty()
Обработчик событий, вызываемый, когда игрокcurrentTimeдостигаетstopTime.- См. также:
-
getOnEndOfMedia(),setOnEndOfMedia(Runnable)
-
setOnReady
public final void setOnReady(Runnable value)
Устанавливает обработчик событияMediaPlayer.Status.READY.- Параметры:
-
value— обработчик события илиnull.
-
getOnReady
public final Runnable getOnReady()
Возвращает обработчик событияMediaPlayer.Status.READY.- Возвращает:
- обработчик события или
null.
-
onReadyProperty
public ObjectProperty<Runnable> onReadyProperty()
Обработчик событий, вызываемый, когда состояние меняется наREADY.- См. также:
-
getOnReady(),setOnReady(Runnable)
-
setOnPlaying
public final void setOnPlaying(Runnable value)
Устанавливает обработчик событияMediaPlayer.Status.PLAYING.- Параметры:
-
value— обработчик события илиnull.
-
getOnPlaying
public final Runnable getOnPlaying()
Возвращает обработчик событияMediaPlayer.Status.PLAYING.- Возвращает:
- обработчик события или
null.
-
onPlayingProperty
public ObjectProperty<Runnable> onPlayingProperty()
Обработчик событий, вызываемый, когда состояние меняется наPLAYING.- См. также:
-
getOnPlaying(),setOnPlaying(Runnable)
-
setOnPaused
public final void setOnPaused(Runnable value)
Устанавливает обработчик событияMediaPlayer.Status.PAUSED.- Параметры:
-
value— обработчик события илиnull.
-
getOnPaused
public final Runnable getOnPaused()
Возвращает обработчик событияMediaPlayer.Status.PAUSED.- Возвращает:
- обработчик события или
null.
-
onPausedProperty
public ObjectProperty<Runnable> onPausedProperty()
Обработчик событий, вызываемый, когда состояние меняется наPAUSED.- См. также:
-
getOnPaused(),setOnPaused(Runnable)
-
setOnStopped
public final void setOnStopped(Runnable value)
Устанавливает обработчик событияMediaPlayer.Status.STOPPED.- Параметры:
-
value— обработчик события илиnull.
-
getOnStopped
public final Runnable getOnStopped()
Возвращает обработчик событияMediaPlayer.Status.STOPPED.- Возвращает:
- обработчик события или
null.
-
onStoppedProperty
public ObjectProperty<Runnable> onStoppedProperty()
Обработчик событий, вызываемый, когда состояние меняется наSTOPPED.- См. также:
-
getOnStopped(),setOnStopped(Runnable)
-
setOnHalted
public final void setOnHalted(Runnable value)
Устанавливает обработчик событияMediaPlayer.Status.HALTED.- Параметры:
-
value— обработчик события илиnull.
-
getOnHalted
public final Runnable getOnHalted()
Возвращает обработчик событияMediaPlayer.Status.HALTED.- Возвращает:
- обработчик события или
null.
-
onHaltedProperty
public ObjectProperty<Runnable> onHaltedProperty()
Обработчик событий, вызываемый, когда состояние меняется наHALTED.- См. также:
-
getOnHalted(),setOnHalted(Runnable)
-
setOnRepeat
public final void setOnRepeat(Runnable value)
Устанавливает обработчик событий повтора.- Параметры:
-
value— обработчик события илиnull.
-
getOnRepeat
public final Runnable getOnRepeat()
Возвращает обработчик событий повтора.- Возвращает:
- обработчик события или
null.
-
onRepeatProperty
public ObjectProperty<Runnable> onRepeatProperty()
Обработчик событий, вызываемый, когда игрокcurrentTimeдостигаетstopTimeи будет повторять. Этот обратный вызов выполняется до возврата кstartTime.- См. также:
-
getOnRepeat(),setOnRepeat(Runnable)
-
setOnStalled
public final void setOnStalled(Runnable value)
Устанавливает обработчик событияMediaPlayer.Status.STALLED.- Параметры:
-
value— обработчик события илиnull.
-
getOnStalled
public final Runnable getOnStalled()
Возвращает обработчик событияMediaPlayer.Status.STALLED.- Возвращает:
- обработчик события или
null.
-
onStalledProperty
public ObjectProperty<Runnable> onStalledProperty()
Обработчик событий, вызываемый, когда состояние меняется наSTALLED.- См. также:
-
getOnStalled(),setOnStalled(Runnable)
-
setAudioSpectrumNumBands
public final void setAudioSpectrumNumBands(int value)
Устанавливает количество полос в аудиоспектре.- Параметры:
-
value— количество спектральных полос;valueдолжно быть ≥ 2
-
getAudioSpectrumNumBands
public final int getAudioSpectrumNumBands()
Возвращает количество полос в аудиоспектре.- Возвращает:
- количество спектральных полос.
-
-
audioSpectrumNumBandsProperty
public IntegerProperty audioSpectrumNumBandsProperty()
Количество полос в аудиоспектре. Значение по умолчанию — 128; минимальное значение — 2. Диапазон частот аудиосигнала будет разделён на указанное количество частотных интервалов. Например, типичный цифровой музыкальный сигнал имеет диапазон частот[0.0, 22050]Гц. Если число спектральных полос в этом случае будет установлено в 10, ширина каждого частотного интервала в спектре составит2205Гц с нижней границей самого низкого частотного интервала, равной0.0.
-
setAudioSpectrumInterval
public final void setAudioSpectrumInterval(double value)
Устанавливает значение интервала уведомлений о спектре аудио в секундах.- Параметры:
-
value- положительное значение, определяющее интервал обновления спектра
-
getAudioSpectrumInterval
public final double getAudioSpectrumInterval()
Возвращает значение интервала уведомлений о спектре аудио в секундах.- Возвращает:
- интервал обновления спектра
-
audioSpectrumIntervalProperty
public DoubleProperty audioSpectrumIntervalProperty()
Интервал между обновлениями спектра в секундах. По умолчанию —0.1секунды.
-
setAudioSpectrumThreshold
public final void setAudioSpectrumThreshold(int value)
Устанавливает порог аудиоспектра в децибелах.- Параметры:
-
value- порог спектра в дБ; должен быть ≤0.
-
getAudioSpectrumThreshold
public final int getAudioSpectrumThreshold()
Возвращает порог аудиоспектра в децибелах.- Возвращает:
- порог спектра в дБ
-
audioSpectrumThresholdProperty
public IntegerProperty audioSpectrumThresholdProperty()
Пороговое значение чувствительности в децибелах; должно быть неположительным. Значения ниже этого порога относительно пиковой частоты в заданной спектральной полосе будут установлены в значение порога. Значение по умолчанию — -60 дБ.
-
setAudioSpectrumListener
public final void setAudioSpectrumListener(AudioSpectrumListener listener)
Устанавливает слушателя аудиоспектра.- Параметры:
-
listener- слушатель спектра илиnull.
-
getAudioSpectrumListener
public final AudioSpectrumListener getAudioSpectrumListener()
Возвращает слушателя аудиоспектра.- Возвращает:
- слушатель спектра или
null
-
audioSpectrumListenerProperty
public ObjectProperty<AudioSpectrumListener> audioSpectrumListenerProperty()
Слушатель для обновлений аудиоспектра. При регистрации слушателя вычисление аудиоспектра включается; при удалении слушателя — выключается. Может быть зарегистрирован только один слушатель, поэтому, если требуется несколько наблюдателей, события должны быть перенаправлены.Слушатель, например, может быть полезен для построения частотного спектра воспроизводимого аудио или генерации волновых форм для визуализации музыки.
-
dispose
public void dispose()
Освобождает все ресурсы, связанные с плеером. После вызова этой функции плеер БОЛЬШЕ НЕ ДОЛЖЕН использоваться. Плеер перейдет в состояниеMediaPlayer.Status.DISPOSEDпосле завершения этой функции. Этот метод можно вызывать в любое время независимо от текущего состояния плеера.- С момента:
- 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.