Класс SoundClip
public final class SoundClip extends Object
SoundClip представляет собой простую абстракцию для воспроизведения звукового клипа. Он воспроизводит данные в любом формате, распознаваемом API javax.sound и поддерживаемом им. В том числе данные MIDI. Этот класс предназначен для простого воспроизведения коротких клипов или фрагментов звука. Его можно использовать, например, для воспроизведения звукового оповещения или эффекта в приложении с пользовательским интерфейсом, а также для короткого объявления или звуковой обратной связи, например, для сообщения о назначении кнопки или элемента управления. Обычно приложение позволяет таким клипам воспроизводиться один раз до конца.
Приложениям, которым требуется более точное управление или расширенные возможности, следует изучить другие части API javax.sound. Для воспроизведения звука среда должна предоставить доступ к аудиоустройствам. Обычно для этого приложение должно работать в среде рабочего стола.
Несколько элементов SoundClip могут воспроизводиться одновременно, а результирующий звук смешивается в единый сигнал.
- Начиная с:
- 25
Краткое описание методов
| Модификатор и тип | Метод | Описание |
|---|---|---|
boolean |
canPlay() |
Возвращает значение, указывающее, можно ли воспроизвести этот звуковой клип. |
static SoundClip |
createSoundClip |
Создает экземпляр SoundClip, который будет воспроизводить клип из указанного файла. |
boolean |
isPlaying() |
Возвращает значение, указывающее, воспроизводится ли звук в данный момент. |
void |
loop() |
Запускает циклическое воспроизведение этого звукового клипа. |
void |
play() |
Запускает воспроизведение этого звукового клипа. |
void |
stop() |
Останавливает воспроизведение этого звукового клипа. |
Методы, объявленные в классе Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait | Модификатор и тип | Метод | Описание |
|---|---|---|
protected Object |
clone() |
Создает и возвращает копию этого объекта. |
boolean |
equals |
Указывает, равен ли этот объект другому объекту. |
protected void |
finalize() |
Устарело, будет удалено: этот элемент API подлежит удалению в будущей версии. Финализация признана устаревшей и подлежит удалению в одном из следующих выпусков. |
final Class |
getClass() |
Возвращает класс времени выполнения этого объекта Object. |
int |
hashCode() |
Возвращает хеш-код этого объекта. |
final void |
notify() |
Пробуждает один поток, ожидающий на мониторе этого объекта. |
final void |
notifyAll() |
Пробуждает все потоки, ожидающие на мониторе этого объекта. |
String |
toString() |
Возвращает строковое представление объекта. |
final void |
wait() |
Переводит текущий поток в состояние ожидания до его пробуждения, обычно посредством уведомления или прерывания. |
final void |
wait |
Переводит текущий поток в состояние ожидания до его пробуждения, обычно посредством уведомления или прерывания, либо до истечения указанного времени. |
final void |
wait |
Переводит текущий поток в состояние ожидания до его пробуждения, обычно посредством уведомления или прерывания, либо до истечения указанного времени. |
Подробное описание методов
createSoundClip
public static SoundClip createSoundClip(File file) throws IOException
SoundClip, который будет воспроизводить клип из указанного файла. Содержимое файла будет полностью прочитано до возврата этого метода. Если файл не содержит распознаваемых данных в поддерживаемом звуковом формате или реализация не может найти подходящее устройство вывода для этих данных, воспроизведение клипа не будет выполнять никаких действий.
- Параметры:
-
file— файл, из которого следует получить звуковые данные - Возвращает:
- экземпляр
SoundClip - Вызывает исключение:
-
NullPointerException— еслиfileимеет значениеnull -
IOException— если при чтении изfileпроизошла ошибка
canPlay
public boolean canPlay()
Значение false означает, что вызов любого другого метода этого класса не будет выполнять никаких действий.
- Возвращает:
- значение, указывающее, можно ли воспроизвести этот звуковой клип
isPlaying
public boolean isPlaying()
- Возвращает:
- значение, указывающее, воспроизводится ли звук в данный момент
play
public void play()
Примечания о потоках: большинству приложений достаточно вызвать play(). Поэтому большинству приложений не нужно учитывать следующее. Воспроизведением управляет фоновый поток, обычно поток-демон. Работающие потоки-демоны не препятствуют завершению работы ВМ. Поэтому для предотвращения завершения работы ВМ должен оставаться активным хотя бы один поток. Приложение с пользовательским интерфейсом, в котором отображается хотя бы одно окно, автоматически удовлетворяет этому требованию. И наоборот, если приложению требуется гарантировать завершение работы ВМ до окончания выполнения play(), следует вызвать метод stop().
loop
public void loop()
Примечания о потоках: большинству приложений достаточно вызвать loop(). Поэтому большинству приложений не нужно учитывать следующее. Воспроизведением управляет фоновый поток, обычно поток-демон. Работающие потоки-демоны не препятствуют завершению работы ВМ. Поэтому для предотвращения завершения работы ВМ должен оставаться активным хотя бы один поток. Приложение с пользовательским интерфейсом, в котором отображается хотя бы одно окно, автоматически удовлетворяет этому требованию. И наоборот, если приложению требуется гарантировать завершение работы ВМ до окончания выполнения play(), следует вызвать метод stop().
stop
public void stop()
loop().
© 1993, 2025, Oracle and/or its affiliates. All rights reserved.
Documentation extracted from Debian's OpenJDK Development Kit package.
Licensed under the GNU General Public License, version 2, with the Classpath Exception.
Various third party code in OpenJDK is licensed under different licenses (see Debian package).
Java and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.