Spec-Zone.ru › OpenJDK 27

Класс SoundClip

java.lang.Object
javax.sound.SoundClip
public final class SoundClip extends Object
Класс SoundClip представляет собой простую абстракцию для воспроизведения звукового клипа. Он воспроизводит данные в любом формате, распознаваемом API javax.sound и поддерживаемом им. В том числе данные MIDI.

Этот класс предназначен для простого воспроизведения коротких клипов или фрагментов звука. Его можно использовать, например, для воспроизведения звукового оповещения или эффекта в приложении с пользовательским интерфейсом, а также для короткого объявления или звуковой обратной связи, например, для сообщения о назначении кнопки или элемента управления. Обычно приложение позволяет таким клипам воспроизводиться один раз до конца.

Приложениям, которым требуется более точное управление или расширенные возможности, следует изучить другие части API javax.sound. Для воспроизведения звука среда должна предоставить доступ к аудиоустройствам. Обычно для этого приложение должно работать в среде рабочего стола.

Несколько элементов SoundClip могут воспроизводиться одновременно, а результирующий звук смешивается в единый сигнал.

Начиная с:
25

Краткое описание методов

Модификатор и тип Метод Описание
boolean canPlay()
Возвращает значение, указывающее, можно ли воспроизвести этот звуковой клип.
static SoundClip createSoundClip(File file)
Создает экземпляр 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(Object obj)
Указывает, равен ли этот объект другому объекту.
protected void finalize()
Устарело, будет удалено: этот элемент API подлежит удалению в будущей версии.
Финализация признана устаревшей и подлежит удалению в одном из следующих выпусков.
final Class<?> getClass()
Возвращает класс времени выполнения этого объекта Object.
int hashCode()
Возвращает хеш-код этого объекта.
final void notify()
Пробуждает один поток, ожидающий на мониторе этого объекта.
final void notifyAll()
Пробуждает все потоки, ожидающие на мониторе этого объекта.
String toString()
Возвращает строковое представление объекта.
final void wait()
Переводит текущий поток в состояние ожидания до его пробуждения, обычно посредством уведомления или прерывания.
final void wait(long timeoutMillis)
Переводит текущий поток в состояние ожидания до его пробуждения, обычно посредством уведомления или прерывания, либо до истечения указанного времени.
final void wait(long timeoutMillis, int nanos)
Переводит текущий поток в состояние ожидания до его пробуждения, обычно посредством уведомления или прерывания, либо до истечения указанного времени.

Подробное описание методов

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().

Сообщить об ошибке или предложить улучшение
Дополнительную справочную информацию по API и документацию для разработчиков см. в разделе Документация Java SE, содержащем более подробные описания для разработчиков, концептуальные обзоры, определения терминов, обходные решения и примеры работающего кода. Другие версии.
Java является товарным знаком или зарегистрированным товарным знаком Oracle и/или ее аффилированных лиц в США и других странах.
Авторские права © 1993, 2026, Oracle и/или ее аффилированные лица, 500 Oracle Parkway, Redwood Shores, CA 94065 USA.
Все права защищены. Использование регулируется условиями лицензии и политикой распространения документации.

© 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.

Spec-Zone.ru

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