- java.lang.Object
-
- javafx.scene.media.AudioClip
-
public final class AudioClip extends Object
AnAudioClipпредставляет собой фрагмент аудио, который можно воспроизвести с минимальной задержкой. Клипы загружаются аналогично объектамMedia, но имеют другое поведение, например,Mediaне может воспроизводиться самостоятельно.AudioClipтакже могут использоваться немедленно. Поведение воспроизведения — «выстрел и забудь»: как только один из методов воспроизведения вызван, единственный управляемый элемент —stop().AudioClipтакже можно воспроизводить несколько раз одновременно. Для достижения той же цели с использованиемMediaнеобходимо было бы создавать новый объектMediaPlayerдля каждого воспроизводимого звука параллельно. ОбъектыMedia, однако, лучше подходят для звуков длительного воспроизведения. Это в первую очередь потому, чтоAudioClipхранит в памяти исходные, не сжатые данные аудио для всего звука, что может быть довольно большим для длинных аудиоклипов.MediaPlayerбудет иметь в памяти только достаточные декомпрессированные данные аудио для воспроизведения в течение короткого периода времени, поэтому он гораздо более эффективен с точки зрения памяти для длинных клипов, особенно если они сжаты.
Пример использования:
AudioClip plonkSound = new AudioClip("http://somehost/path/plonk.aiff"); plonkSound.play();- Since:
- JavaFX 2.0
-
Краткое описание свойств
Свойства Тип Свойство Описание DoublePropertybalanceОтносительные уровни громкости слева и справа для клипа.IntegerPropertycycleCountКоличество раз, которое будет воспроизведен клип, когда вызванplay().DoublePropertypanОтносительное «центральное» положение клипа.IntegerPropertypriorityОтносительный приоритет клипа по отношению к другим клипам.DoublePropertyrateОтносительная скорость воспроизведения клипа.DoublePropertyvolumeОтносительный уровень громкости, с которым воспроизводится клип.
-
Краткое описание полей
Поля Модификатор и тип Поле Описание static intINDEFINITEКогдаcycleCountустанавливается в это значение,AudioClipбудет циклически воспроизводиться до остановки.
-
Краткое описание методов
Все методыМетоды экземпляровКонкретные методы Модификатор и тип Метод Описание DoublePropertybalanceProperty()Относительные уровни громкости слева и справа для клипа.IntegerPropertycycleCountProperty()Количество раз, которое будет воспроизведен клип, когда вызванplay().doublegetBalance()Получить значение баланса по умолчанию для этого клипа.intgetCycleCount()Получить значение цикла по умолчанию.doublegetPan()Получить значение сдвига по умолчанию.intgetPriority()Получить значение приоритета воспроизведения по умолчанию.doublegetRate()Получить значение скорости воспроизведения по умолчанию.StringgetSource()Получить URL-адрес источника, используемый для создания этогоAudioClip.doublegetVolume()Получить значение громкости по умолчанию.booleanisPlaying()Указывает, воспроизводится ли этотAudioClip.DoublePropertypanProperty()Относительное «центральное» положение клипа.voidplay()ВоспроизвестиAudioClip, используя все параметры по умолчанию.voidplay(double volume)ВоспроизвестиAudioClip, используя все параметры по умолчанию, кроме громкости.voidplay(double volume, double balance, double rate, double pan, int priority)ВоспроизвестиAudioClip, используя заданные параметры.IntegerPropertypriorityProperty()Относительный приоритет клипа по отношению к другим клипам.DoublePropertyrateProperty()Относительная скорость воспроизведения клипа.voidsetBalance(double balance)Установить значение баланса по умолчанию.voidsetCycleCount(int count)Установить значение цикла по умолчанию.voidsetPan(double pan)Установить значение сдвига по умолчанию.voidsetPriority(int priority)Установить значение приоритета воспроизведения по умолчанию.voidsetRate(double rate)Установить значение скорости воспроизведения по умолчанию.voidsetVolume(double value)Установить значение громкости по умолчанию.voidstop()Немедленно остановить все воспроизведения этогоAudioClip.DoublePropertyvolumeProperty()Относительный уровень громкости, с которым воспроизводится клип.
-
Подробности свойств
-
volume
public DoubleProperty volumeProperty
Уровень громкости аудиоклипа. Допустимый диапазон от 0.0 (выключено) до 1.0 (полная громкость). Значения вне этого диапазона будут ограничены интернально.- См. также:
-
getVolume(),setVolume(double)
-
balance
public DoubleProperty balanceProperty
Относительные уровни громкости левого и правого каналов аудиоклипа. Допустимый диапазон от -1.0 до 1.0. -1.0 — полная громкость левого канала, 0.0 — полная громкость обоих каналов, 1.0 — полная громкость правого канала. Значения вне этого диапазона будут ограничены интернально.- См. также:
-
getBalance(),setBalance(double)
-
rate
public DoubleProperty rateProperty
Относительная скорость воспроизведения аудиоклипа. Допустимый диапазон от 0.125 (в 8 раз медленнее) до 8.0 (в 8 раз быстрее). Значения вне этого диапазона будут ограничены интернально. Нормальная скорость воспроизведения — 1.0.- См. также:
-
getRate(),setRate(double)
-
pan
public DoubleProperty panProperty
Относительное "положение" аудиоклипа по стереоканалам. Значение 0.0 соответствует нормальному положению, -1.0 — смещение в левый канал, 1.0 — смещение в правый канал. В отличие от balance, это смещение не приводит к потере данных. Применение pan к моноклипу имеет тот же эффект, что и balance, но с гораздо большей нагрузкой на ЦП, поэтому для моноклипов это не рекомендуется.- См. также:
-
getPan(),setPan(double)
-
priority
public IntegerProperty priorityProperty
Относительный приоритет аудиоклипа по отношению к другим. Используется для определения клипов, которые нужно удалить, когда достигнуто максимальное количество воспроизводимых клипов. Чем меньше приоритет, тем больше вероятность, что клип будет остановлен и удалён из канала микшера. Диапазон значений — любые целые числа. По умолчанию приоритет равен нулю. Количество одновременно воспроизводимых звуков зависит от реализации и, возможно, системы.- См. также:
-
getPriority(),setPriority(int)
-
cycleCount
public IntegerProperty cycleCountProperty
Количество раз, которое аудиоклип будет воспроизведён при вызовеplay(). cycleCount = 1 — воспроизведение один раз, cycleCount = 2 — воспроизведение два раза и так далее. Допустимый диапазон — 1 и более, но установка значенияINDEFINITEзаставит клип циклически воспроизводиться до вызоваstop().- См. также:
-
getCycleCount(),setCycleCount(int)
-
-
Подробное описание полей
-
INDEFINITE
public static final int INDEFINITE
КогдаcycleCountустановлено в это значение,AudioClipбудет циклически воспроизводиться до остановки. Это значение эквивалентноMediaPlayer.INDEFINITEиAnimation.INDEFINITE.- См. также:
- Значения константных полей
-
-
Подробное описание конструкторов
-
AudioClip
public AudioClip(String source)
СоздаётAudioClip, загружая его из указанного URL.- Параметры:
-
source- Строка URL для загрузки аудиоклипа. Может быть HTTP, HTTPS, FILE или JAR. - Исключения:
-
NullPointerException- если параметрnull. -
IllegalArgumentException- если параметр нарушает RFC 2396. -
MediaException- если возникла проблема при загрузке медиафайла.
-
-
Методы
-
getSource
public String getSource()
Получить URL источника, используемого для создания этогоAudioClip.- Возвращает:
- URL источника, предоставленный конструктору
-
setVolume
public final void setVolume(double value)
Установить уровень громкости по умолчанию. Новое значение будет применено только к последующим воспроизведениям.- Параметры:
-
value- новое значение уровня громкости по умолчанию для этого клипа - См. также:
volumeProperty()
-
getVolume
public final double getVolume()
Получить уровень громкости по умолчанию.- Возвращает:
- уровень громкости по умолчанию для этого клипа
- См. также:
volumeProperty()
-
volumeProperty
public DoubleProperty volumeProperty()
Относительный уровень громкости, с которым воспроизводится клип. Допустимый диапазон от 0.0 (выключено) до 1.0 (полная громкость). Значения вне этого диапазона будут ограничены до этого диапазона. Громкость регулируется затуханием, поэтому значения ниже 1.0 уменьшают уровень звука соответственно.- См. также:
-
getVolume(),setVolume(double)
-
setBalance
public void setBalance(double balance)
Установить уровень баланса по умолчанию. Новое значение будет применено только к последующим воспроизведениям.- Параметры:
-
balance- новое значение баланса по умолчанию - См. также:
balanceProperty()
-
getBalance
public double getBalance()
Получить уровень баланса по умолчанию для этого клипа.- Возвращает:
- значение баланса по умолчанию для этого клипа
- См. также:
balanceProperty()
-
balanceProperty
public DoubleProperty balanceProperty()
Относительные уровни громкости левого и правого каналов клипа. Допустимый диапазон от -1.0 до 1.0, где -1.0 обеспечивает полную громкость левому каналу, а правый канал выключен, 0.0 обеспечивает полную громкость обоим каналам, а 1.0 обеспечивает полную громкость правому каналу, а левый канал выключен. Значения вне этого диапазона ограничены.- См. также:
-
getBalance(),setBalance(double)
-
setRate
public void setRate(double rate)
Установить скорость воспроизведения по умолчанию. Новое значение будет применено только к последующим воспроизведениям.- Параметры:
-
rate- новая скорость воспроизведения по умолчанию - См. также:
rateProperty()
-
getRate
public double getRate()
Получить скорость воспроизведения по умолчанию.- Возвращает:
- скорость воспроизведения по умолчанию для этого клипа
- См. также:
rateProperty()
-
rateProperty
public DoubleProperty rateProperty()
Относительная скорость воспроизведения клипа. Допустимый диапазон от 0,125 (1/8 скорости) до 8,0 (8x скорости); значения вне этого диапазона ограничены. Нормальное воспроизведение клипа — 1,0; любая другая скорость повлияет на высоту тона и длительность соответственно.- См. также:
-
getRate(),setRate(double)
-
setPan
public void setPan(double pan)
Установить значение панорамирования по умолчанию. Новое значение будет применено только к последующим воспроизведениям.- Параметры:
-
pan- новое значение панорамирования по умолчанию - См. также:
panProperty()
-
getPan
public double getPan()
Получить значение панорамирования по умолчанию.- Возвращает:
- значение панорамирования по умолчанию для этого клипа
- См. также:
panProperty()
-
panProperty
public DoubleProperty panProperty()
Относительное «центральное» положение клипа. Значение панорамирования 0,0 воспроизводит клип обычно, -1,0 смещает клип полностью влево, а 1,0 — полностью вправо. В отличие от баланса, эта настройка смешивает оба канала, поэтому ни один канал не теряет данных. Установка панорамирования для моно-клипа имеет тот же эффект, что и установка баланса, но с гораздо большей стоимостью в вычислительных ресурсах процессора, поэтому это не рекомендуется для моно-клипов.- См. также:
-
getPan(),setPan(double)
-
setPriority
public void setPriority(int priority)
Установить приоритет воспроизведения по умолчанию. Новое значение будет применено только к последующим воспроизведениям.- Параметры:
-
priority- новый приоритет воспроизведения по умолчанию - См. также:
priorityProperty()
-
getPriority
public int getPriority()
Получить приоритет воспроизведения по умолчанию.- Возвращает:
- приоритет воспроизведения по умолчанию для этого клипа
- См. также:
priorityProperty()
-
priorityProperty
public IntegerProperty priorityProperty()
Относительный приоритет клипа по отношению к другим клипам. Это значение используется для определения клипов, которые необходимо удалить, когда достигнуто максимальное количество разрешенных клипов. Чем ниже приоритет, тем выше вероятность того, что клип будет остановлен и удален из канала микшера, который он занимает. Допустимый диапазон — любое целое число; ограничений нет. Приоритет по умолчанию для всех клипов — ноль, пока не будет изменено. Количество одновременно воспроизводимых звуков зависит от реализации и, возможно, от системы.- См. также:
-
getPriority(),setPriority(int)
-
setCycleCount
public void setCycleCount(int count)
Установить счетчик циклов по умолчанию. Новое значение будет применено только к последующим воспроизведениям.- Параметры:
-
count- новое значение счетчика циклов для этого клипа - См. также:
cycleCountProperty()
-
getCycleCount
public int getCycleCount()
Получить счетчик циклов по умолчанию.- Возвращает:
- значение счетчика циклов по умолчанию для этого аудиоклипа
- См. также:
cycleCountProperty()
-
cycleCountProperty
public IntegerProperty cycleCountProperty()
Количество раз, которое клип будет воспроизведён при вызовеplay(). Значение cycleCount 1 воспроизводит клип ровно один раз, 2 — дважды и так далее. Установка значенияINDEFINITEзаставит клип продолжать циклическое воспроизведение до тех пор, пока не будет вызванstop().- См. также:
-
getCycleCount(),setCycleCount(int)
-
play
public void play()
ВоспроизвестиAudioClip, используя все параметры по умолчанию.
-
play
public void play(double volume)
ВоспроизвестиAudioClip, используя все параметры по умолчанию, кроме громкости. Этот метод не изменяет параметры по умолчанию клипа.- Параметры:
-
volume- уровень громкости, с которым нужно воспроизвести клип
-
play
public void play(double volume, double balance, double rate, double pan, int priority)ВоспроизвестиAudioClipс заданными параметрами. Значения вне диапазонов, указанных соответствующими свойствами, ограничены. Этот метод не изменяет параметры по умолчанию клипа.- Параметры:
-
volume- Уровень громкости, с которым воспроизвести этот клип. Допустимый диапазон громкости от 0,0 до 1,0, где 0,0 — фактически выключено, а 1,0 — полная громкость. -
balance- Баланс «лево/право» или относительные громкости каналов для стереоэффектов. -
rate- Множитель скорости воспроизведения. 1,0 будет воспроизводить со стандартной скоростью, а 2,0 — удвоит скорость. -
pan- Смещение «лево/право», которое будет применено к клипу. Значение панорамирования -1,0 означает полностью левый канал, 1,0 — полностью правый канал, 0,0 не оказывает влияния. -
priority- Приоритет аудиоэффекта. Эффекты с более низким приоритетом будут отброшены первыми, если слишком много эффектов пытаются воспроизводиться одновременно.
-
isPlaying
public boolean isPlaying()
Указывает, воспроизводится ли этотAudioClip. Если это возвращает true, тоplay()был вызван как минимум один раз и всё ещё воспроизводится.- Возвращает:
- true, если любой канал микшера имеет этот клип в очереди, false в противном случае
-
-
stop
public void stop()
Немедленно остановить весь воспроизведение этогоAudioClip.
-
© 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.