Spec-Zone.ru › OpenJDK 24

Класс AudioSystem

java.lang.Object
javax.sound.sampled.AudioSystem
public class AudioSystem extends Object
Класс AudioSystem служит точкой входа в ресурсы системы обработки аудиосигналов. Этот класс позволяет вам запросить и получить доступ к установленным на системе микшерам. AudioSystem включает ряд методов для преобразования аудиоданных между различными форматами и для преобразования между аудиофайлами и потоками. Он также предоставляет метод для получения Line напрямую из AudioSystem без явного взаимодействия с микшерами.

Свойства могут быть использованы для указания стандартного микшера для определённых типов линий. Рассматриваются как системные свойства, так и свойства из файла свойств. Файл свойств "sound.properties" читается из места, специфичного для реализации (обычно это каталог conf в каталоге установки Java). Дополнительное системное свойство "javax.sound.config.file" может быть использовано для указания файла свойств, который будет прочитан как начальная конфигурация. Если свойство существует как системное свойство, так и в файле свойств, приоритет отдаётся системному свойству. Если ничего не указано, выбирается подходящий по умолчанию среди доступных устройств. Синтаксис файла свойств описан в Properties.load. В следующей таблице перечислены доступные ключи свойств и методы, которые их учитывают:

Ключи свойств системы аудио
Ключ свойства Интерфейс Затронутые методы
javax.sound.sampled.Clip Clip getLine(javax.sound.sampled.Line.Info), getClip()
javax.sound.sampled.Port Port getLine(javax.sound.sampled.Line.Info)
javax.sound.sampled.SourceDataLine SourceDataLine getLine(javax.sound.sampled.Line.Info), getSourceDataLine(javax.sound.sampled.AudioFormat)
javax.sound.sampled.TargetDataLine TargetDataLine getLine(javax.sound.sampled.Line.Info), getTargetDataLine(javax.sound.sampled.AudioFormat)
Значение свойства состоит из имени класса провайдера и имени микшера, разделенных символом решётки ("#"). Имя класса провайдера — полностью квалифицированное имя конкретного класса mixer provider. Имя микшера сопоставляется с именем String, возвращаемым методом getName класса Mixer.Info. Может быть опущено либо имя класса, либо имя микшера. Если указано только имя класса, конечная решётка необязательна.

Если указан класс провайдера и его можно успешно получить из установленных провайдеров, список объектов Mixer.Info извлекается из провайдера. В противном случае, или когда эти микшеры не обеспечивают последующего соответствия, список извлекается из getMixerInfo() для включения всех доступных объектов Mixer.Info.

Если указано имя микшера, результат поиска среди объектов Mixer.Info: будет возвращён первый объект с соответствующим именем, чьё Mixer предоставляет соответствующий интерфейс линии. Если такой объект не найден или имя микшера не указано, будет возвращён первый микшер из результата поиска, который предоставляет соответствующий интерфейс линии.

Например, свойство javax.sound.sampled.Clip со значением "com.sun.media.sound.MixerProvider#SunClip" при вызове getLine с запросом экземпляра Clip будет иметь следующие последствия: если класс com.sun.media.sound.MixerProvider существует в списке установленных поставщиков микшеров, будет возвращен первый Clip из первого микшера с именем "SunClip". Если не найдено, будет возвращён первый Clip из первого микшера указанного поставщика, независимо от имени. Если ничего нет, будет возвращён первый Clip из первого Mixer с именем "SunClip" в списке всех микшеров (как возвращается getMixerInfo), или, если не найден, первый Clip из первого Mixer, найденного в списке всех микшеров. Если и это не сработает, будет брошено исключение IllegalArgumentException.

С тех пор:
1.3
См. также:
  • AudioFormat
  • AudioInputStream
  • Mixer
  • Line
  • Line.Info

Краткое описание полей

Модификатор и тип Поле Описание
static final int NOT_SPECIFIED
Целое число, представляющее неизвестное числовое значение.

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

Модификатор и тип Метод Описание
static AudioFileFormat getAudioFileFormat(File file)
Получает формат аудиофайла указанного File.
static AudioFileFormat getAudioFileFormat(InputStream stream)
Получает формат аудиофайла из предоставленного входного потока.
static AudioFileFormat getAudioFileFormat(URL url)
Получает формат аудиофайла указанного URL.
static AudioFileFormat.Type[] getAudioFileTypes()
Получает типы файлов, для которых система предоставляет поддержку записи.
static AudioFileFormat.Type[] getAudioFileTypes(AudioInputStream stream)
Получает типы файлов, которые система может записать из указанного аудио входного потока.
static AudioInputStream getAudioInputStream(File file)
Получает аудио входной поток из предоставленного File.
static AudioInputStream getAudioInputStream(InputStream stream)
Получает аудио входной поток из предоставленного входного потока.
static AudioInputStream getAudioInputStream(URL url)
Получает аудио входной поток из предоставленного URL.
static AudioInputStream getAudioInputStream(AudioFormat.Encoding targetEncoding, AudioInputStream sourceStream)
Получает аудио входной поток с указанным кодированием, преобразуя предоставленный аудио входной поток.
static AudioInputStream getAudioInputStream(AudioFormat targetFormat, AudioInputStream sourceStream)
Получает аудио входной поток с указанным форматом, преобразуя предоставленный аудио входной поток.
static Clip getClip()
Получает фрагмент, который можно использовать для воспроизведения аудиофайла или аудиопотока.
static Clip getClip(Mixer.Info mixerInfo)
Получает фрагмент из указанного микшера, который можно использовать для воспроизведения аудиофайла или аудиопотока.
static Line getLine(Line.Info info)
Получает линию, соответствующую описанию в указанном Line.Info объекте.
static Mixer getMixer(Mixer.Info info)
Получает запрашиваемый аудиомикшер.
static Mixer.Info[] getMixerInfo()
Получает массив объектов информации о микшерах, представляющих набор аудиомикшеров, которые в настоящее время установлены в системе.
static SourceDataLine getSourceDataLine(AudioFormat format)
Получает линию данных источника, которая может использоваться для воспроизведения аудиоданных в формате, указанном объектом AudioFormat.
static SourceDataLine getSourceDataLine(AudioFormat format, Mixer.Info mixerinfo)
Получает линию данных источника, которая может использоваться для воспроизведения аудиоданных в формате, указанном объектом AudioFormat, предоставленным микшером, указанным объектом Mixer.Info.
static Line.Info[] getSourceLineInfo(Line.Info info)
Получает информацию обо всех линиях источника определенного типа, поддерживаемых установленными микшерами.
static TargetDataLine getTargetDataLine(AudioFormat format)
Получает линию данных назначения, которая может использоваться для записи аудиоданных в формате, указанном объектом AudioFormat.
static TargetDataLine getTargetDataLine(AudioFormat format, Mixer.Info mixerinfo)
Получает линию данных назначения, которая может использоваться для записи аудиоданных в формате, указанном объектом AudioFormat, предоставленным микшером, указанным объектом Mixer.Info.
static AudioFormat.Encoding[] getTargetEncodings(AudioFormat sourceFormat)
Получает кодировки, которые система может получить из аудио входного потока с указанным форматом, используя набор установленных преобразователей форматов.
static AudioFormat.Encoding[] getTargetEncodings(AudioFormat.Encoding sourceEncoding)
Получает кодировки, которые система может получить из аудио входного потока с указанным кодированием, используя набор установленных преобразователей форматов.
static AudioFormat[] getTargetFormats(AudioFormat.Encoding targetEncoding, AudioFormat sourceFormat)
Получает форматы, которые имеют определенное кодирование и которые система может получить из потока с указанным форматом, используя набор установленных преобразователей форматов.
static Line.Info[] getTargetLineInfo(Line.Info info)
Получает информацию обо всех линиях назначения определенного типа, поддерживаемых установленными микшерами.
static boolean isConversionSupported(AudioFormat.Encoding targetEncoding, AudioFormat sourceFormat)
Указывает, можно ли получить аудио входной поток с указанным кодированием из аудио входного потока с указанным форматом.
static boolean isConversionSupported(AudioFormat targetFormat, AudioFormat sourceFormat)
Указывает, можно ли получить аудио входной поток с указанным форматом из аудио входного потока с другим указанным форматом.
static boolean isFileTypeSupported(AudioFileFormat.Type fileType)
Указывает, предоставляет ли система поддержку записи файлов для указанного типа файла.
static boolean isFileTypeSupported(AudioFileFormat.Type fileType, AudioInputStream stream)
Указывает, может ли система записать аудиофайл указанного типа файла из указанного аудио входного потока.
static boolean isLineSupported(Line.Info info)
Указывает, поддерживает ли система какие-либо линии, соответствующие указанному Line.Info объекту.
static int write(AudioInputStream stream, AudioFileFormat.Type fileType, File out)
Записывает поток байтов, представляющий аудиофайл указанного типа файла, во внешний файл, предоставленный.
static int write(AudioInputStream stream, AudioFileFormat.Type fileType, OutputStream out)
Записывает поток байтов, представляющий аудиофайл указанного типа файла, в предоставленный выходной поток.

Методы, объявленные в классе java.lang.Object

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

Подробное описание полей

NOT_SPECIFIED

public static final int NOT_SPECIFIED
Целое число, представляющее неизвестное числовое значение. Это значение подходит только для знаковых величин, которые обычно не принимают отрицательные значения. Примеры включают размеры файлов, размеры кадров, размеры буферов и частоты дискретизации. Ряд конструкторов Java Sound принимают значение NOT_SPECIFIED для таких параметров. Другие методы также могут принимать или возвращать это значение, как указано в документации.
См. также:
  • Значения константных полей

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

getMixerInfo

public static Mixer.Info[] getMixerInfo()
Получает массив объектов mixer info, представляющих набор аудиомиксеров, которые в настоящее время установлены в системе.
Возвращает:
массив объектов info для текущих установленных миксеров. Если в системе нет миксеров, возвращается массив длиной 0.
См. также:
  • getMixer(javax.sound.sampled.Mixer.Info)

getMixer

public static Mixer getMixer(Mixer.Info info)
Получает запрошенный аудиомикшер.
Параметры:
info - объект Mixer.Info, представляющий желаемый миксер, или null для системного миксера по умолчанию
Возвращает:
запрошенный миксер
Исключение:
IllegalArgumentException - если объект info не представляет микшер, установленный в системе
См. также:
  • getMixerInfo()

getSourceLineInfo

public static Line.Info[] getSourceLineInfo(Line.Info info)
Получает информацию обо всех линиях источника определенного типа, поддерживаемых установленными миксерами.
Параметры:
info - объект Line.Info, который указывает вид линий, о которых запрашивается информация
Возвращает:
массив объектов Line.Info, описывающих линии источника, соответствующие запрошенному типу. Если поддерживаются несоответствующие линии источника, возвращается массив длиной 0.
См. также:
  • Mixer.getSourceLineInfo(Line.Info)

getTargetLineInfo

public static Line.Info[] getTargetLineInfo(Line.Info info)
Получает информацию обо всех целевых линиях определенного типа, которые поддерживаются установленными миксерами.
Параметры:
info - объект Line.Info, который указывает вид линий, о которых запрашивается информация
Возвращает:
массив объектов Line.Info, описывающих целевые линии, соответствующие запрошенному типу. Если поддерживаются несоответствующие целевые линии, возвращается массив длиной 0.
См. также:
  • Mixer.getTargetLineInfo(Line.Info)

isLineSupported

public static boolean isLineSupported(Line.Info info)
Указывает, поддерживает ли система какие-либо линии, соответствующие указанному объекту Line.Info. Линия поддерживается, если любая установленная микшер поддерживает её.
Параметры:
info - объект Line.Info, описывающий линию, для которой запрашивается поддержка
Возвращает:
true, если хотя бы одна соответствующая линия поддерживается, в противном случае false
См. также:
  • Mixer.isLineSupported(Line.Info)

getLine

public static Line getLine(Line.Info info) throws LineUnavailableException
Получает линию, соответствующую описанию в указанном объекте Line.Info.

Если запрашивается DataLine, и info является экземпляром DataLine.Info, указывающим по крайней мере один полностью квалифицированный аудиоформат, последний будет использован в качестве формата по умолчанию для возвращаемой DataLine.

Если системные свойства javax.sound.sampled.Clip, javax.sound.sampled.Port, javax.sound.sampled.SourceDataLine и javax.sound.sampled.TargetDataLine определены или они определены в файле "sound.properties", они используются для получения линий по умолчанию. Подробнее см. class description. Если соответствующее свойство не установлено, или запрошенный в свойстве миксер не установлен или не предоставляет запрашиваемую линию, все установленные миксеры запрашиваются для запрошенного типа линии. Линия будет возвращена из первого миксера, предоставляющего запрошенный тип линии.

Параметры:
info - объект Line.Info, описывающий желаемый тип линии
Возвращает:
линия запрошенного типа
Исключение:
LineUnavailableException - если соответствующая линия недоступна из-за ограничений ресурсов
IllegalArgumentException - если система не поддерживает по крайней мере одну линию, соответствующую указанному объекту Line.Info через любой установленный миксер

getClip

public static Clip getClip() throws LineUnavailableException
Получает клип, который можно использовать для воспроизведения аудиофайла или аудиопотока. Возвращаемый клип будет предоставлен системным миксером по умолчанию или, если это невозможно, любым другим установленным миксером в системе, который поддерживает объект Clip.

Возвращаемый клип должен быть открыт с помощью метода open(AudioFormat) или open(AudioInputStream).

Это метод высокого уровня, который использует getMixer и getLine внутри.

Если системное свойство javax.sound.sampled.Clip определено или оно определено в файле "sound.properties", оно используется для получения клипа по умолчанию. Подробнее см. class description.

Возвращает:
желаемый объект клипа
Исключение:
LineUnavailableException - если объект клипа недоступен из-за ограничений ресурсов
IllegalArgumentException - если система не поддерживает по крайней мере один экземпляр клипа через любой установленный миксер
С:
1.5
См. также:
  • getClip(Mixer.Info)

getClip

public static Clip getClip(Mixer.Info mixerInfo) throws LineUnavailableException
Получает клип из указанного миксера, который можно использовать для воспроизведения аудиофайла или аудиопотока.

Возвращаемый клип должен быть открыт с помощью метода open(AudioFormat) или open(AudioInputStream).

Это метод высокого уровня, который использует getMixer и getLine внутри.

Параметры:
mixerInfo - объект Mixer.Info, представляющий желаемый миксер, или null для системного миксера по умолчанию
Возвращает:
объект клипа из указанного миксера
Исключение:
LineUnavailableException - если клип недоступен из этого миксера из-за ограничений ресурсов
IllegalArgumentException - если система не поддерживает по крайней мере один клип через указанный миксер
С:
1.5
См. также:
  • getClip()

getSourceDataLine

public static SourceDataLine getSourceDataLine(AudioFormat format) throws LineUnavailableException
Получает линию данных источника, которую можно использовать для воспроизведения аудиоданных в формате, заданном объектом AudioFormat. Возвращаемая линия будет предоставлена системным миксером по умолчанию или, если это невозможно, любым другим установленным миксером в системе, который поддерживает соответствующий объект SourceDataLine.

Возвращаемая линия должна быть открыта с помощью метода open(AudioFormat) или open(AudioFormat, int).

Это метод высокого уровня, который использует getMixer и getLine внутри.

Значение по умолчанию для аудиоформата возвращаемой SourceDataLine будет инициализировано значением format.

Если системное свойство javax.sound.sampled.SourceDataLine определено или оно определено в файле "sound.properties", оно используется для получения линии данных источника по умолчанию. Подробнее см. class description.

Параметры:
format - объект AudioFormat, определяющий поддерживаемый аудиоформат возвращаемой линии, или null для любого аудиоформата
Возвращает:
желаемый объект SourceDataLine
Исключение:
LineUnavailableException - если соответствующая линия данных источника недоступна из-за ограничений ресурсов
IllegalArgumentException - если система не поддерживает по крайней мере одну линию данных источника, поддерживающую указанный аудиоформат через любой установленный миксер
С:
1.5
См. также:
  • getSourceDataLine(AudioFormat, Mixer.Info)

Получение линии данных источника

public static SourceDataLine getSourceDataLine(AudioFormat format, Mixer.Info mixerinfo) throws LineUnavailableException
Получает линию данных источника, которая может использоваться для воспроизведения аудиоданных в формате, указанном объектом AudioFormat, предоставленным миксером, указанным объектом Mixer.Info.

Возвращаемая линия должна быть открыта методом open(AudioFormat) или open(AudioFormat, int).

Это метод высокого уровня, который использует getMixer и getLine внутри.

По умолчанию формат аудио возвращаемой SourceDataLine будет инициализирован с помощью format.

Параметры:
format - объект AudioFormat, определяющий поддерживаемый формат аудио для возвращаемой линии, или null для любого аудиоформата
mixerinfo - объект Mixer.Info, представляющий желаемый миксер, или null для системного миксера по умолчанию
Возвращает:
желаемый объект SourceDataLine
Исключения:
LineUnavailableException - если соответствующая линия данных источника недоступна в указанном миксер из-за ограничений ресурсов
IllegalArgumentException - если указанный миксер не поддерживает хотя бы одну линию данных источника, поддерживающую указанный формат аудио
С тех пор:
1.5
См. также:
  • getSourceDataLine(AudioFormat)

Получение линии данных назначения

public static TargetDataLine getTargetDataLine(AudioFormat format) throws LineUnavailableException
Получает линию данных назначения, которая может использоваться для записи аудиоданных в формате, указанном объектом AudioFormat. Возвращаемая линия будет предоставлена системным миксером по умолчанию или, если это невозможно, любым другим установленным миксером в системе, который поддерживает соответствующий объект TargetDataLine.

Возвращаемая линия должна быть открыта методом open(AudioFormat) или open(AudioFormat, int).

Это метод высокого уровня, который использует getMixer и getLine внутри.

По умолчанию формат аудио возвращаемой TargetDataLine будет инициализирован с помощью format.

Если системная переменная javax.sound.sampled.TargetDataLine определена или она определена в файле "sound.properties", она используется для получения линии данных назначения по умолчанию. Подробнее см. class description.

Параметры:
format - объект AudioFormat, определяющий поддерживаемый формат аудио для возвращаемой линии, или null для любого аудиоформата
Возвращает:
желаемый объект TargetDataLine
Исключения:
LineUnavailableException - если соответствующая линия данных назначения недоступна из-за ограничений ресурсов
IllegalArgumentException - если система не поддерживает хотя бы одну линию данных назначения, поддерживающую указанный формат аудио через любой установленный миксер
С тех пор:
1.5
См. также:
  • getTargetDataLine(AudioFormat, Mixer.Info)

Получение линии данных назначения

public static TargetDataLine getTargetDataLine(AudioFormat format, Mixer.Info mixerinfo) throws LineUnavailableException
Получает линию данных назначения, которая может использоваться для записи аудиоданных в формате, указанном объектом AudioFormat, предоставленным миксером, указанным объектом Mixer.Info.

Возвращаемая линия должна быть открыта методом open(AudioFormat) или open(AudioFormat, int).

Это метод высокого уровня, который использует getMixer и getLine внутри.

По умолчанию формат аудио возвращаемой TargetDataLine будет инициализирован с помощью format.

Параметры:
format - объект AudioFormat, определяющий поддерживаемый формат аудио для возвращаемой линии, или null для любого аудиоформата
mixerinfo - объект Mixer.Info, представляющий желаемый миксер, или null для системного миксера по умолчанию
Возвращает:
желаемый объект TargetDataLine
Исключения:
LineUnavailableException - если соответствующая линия данных назначения недоступна в указанном миксер из-за ограничений ресурсов
IllegalArgumentException - если указанный миксер не поддерживает хотя бы одну линию данных назначения, поддерживающую указанный формат аудио
С тех пор:
1.5
См. также:
  • getTargetDataLine(AudioFormat)

Получение кодировок назначения

public static AudioFormat.Encoding[] getTargetEncodings(AudioFormat.Encoding sourceEncoding)
Получает кодировки, которые система может получить из потока аудиоввода с указанной кодировкой, используя набор установленных преобразователей форматов.
Параметры:
sourceEncoding - кодировка, для которой запрашивается поддержка преобразования
Возвращает:
массив кодировок. Если sourceEncoding не поддерживается, возвращается массив длиной 0. В противном случае массив будет иметь длину не менее 1, представляющую sourceEncoding (без преобразования).
Исключения:
NullPointerException - если sourceEncoding является null

Получение кодировок назначения

public static AudioFormat.Encoding[] getTargetEncodings(AudioFormat sourceFormat)
Получает кодировки, которые система может получить из потока аудиоввода с указанным форматом, используя набор установленных преобразователей форматов.
Параметры:
sourceFormat - аудиоформат, для которого запрашивается преобразование
Возвращает:
массив кодировок. Если sourceFormat не поддерживается, возвращается массив длиной 0. В противном случае массив будет иметь длину не менее 1, представляющую кодировку sourceFormat (без преобразования).
Исключения:
NullPointerException - если sourceFormat является null

Поддерживается ли преобразование

public static boolean isConversionSupported(AudioFormat.Encoding targetEncoding, AudioFormat sourceFormat)
Указывает, может ли быть получен поток аудиоввода указанной кодировки из потока аудиоввода, имеющего указанный формат.
Параметры:
targetEncoding - желаемая кодировка после преобразования
sourceFormat - аудиоформат до преобразования
Возвращает:
true, если преобразование поддерживается, иначе false
Исключения:
NullPointerException - если targetEncoding или sourceFormat являются null

Получение аудиопотока

public static AudioInputStream getAudioInputStream(AudioFormat.Encoding targetEncoding, AudioInputStream sourceStream)
Получает поток аудиоввода указанной кодировки, преобразуя предоставленный поток аудиоввода.
Параметры:
targetEncoding - желаемая кодировка после преобразования
sourceStream - поток, подлежащий преобразованию
Возвращает:
поток аудиоввода указанной кодировки
Исключения:
IllegalArgumentException - если преобразование не поддерживается
NullPointerException - если targetEncoding или sourceStream являются null
См. также:
  • getTargetEncodings(AudioFormat.Encoding)
  • getTargetEncodings(AudioFormat)
  • isConversionSupported(AudioFormat.Encoding, AudioFormat)
  • getAudioInputStream(AudioFormat, AudioInputStream)

Получение целевых форматов

public static AudioFormat[] getTargetFormats(AudioFormat.Encoding targetEncoding, AudioFormat sourceFormat)
Получает форматы, имеющие определенную кодировку и которые система может получить из потока указанного формата, используя набор установленных преобразователей форматов.
Параметры:
targetEncoding - желаемая кодировка после преобразования
sourceFormat - аудиоформат до преобразования
Возвращает:
массив форматов. Если форматы с указанной кодировкой не поддерживаются, возвращается массив длиной 0.
Исключения:
NullPointerException - если targetEncoding или sourceFormat являются null

Поддерживается ли преобразование

public static boolean isConversionSupported(AudioFormat targetFormat, AudioFormat sourceFormat)
Указывает, может ли быть получен поток аудиоввода указанного формата из потока аудиоввода другого указанного формата.
Параметры:
targetFormat - желаемый аудиоформат после преобразования
sourceFormat - аудиоформат до преобразования
Возвращает:
true, если преобразование поддерживается, иначе false
Исключения:
NullPointerException - если targetFormat или sourceFormat являются null

getAudioInputStream

public static AudioInputStream getAudioInputStream(AudioFormat targetFormat, AudioInputStream sourceStream)
Получает аудиопоток указанного формата, преобразуя предоставленный аудиопоток.
Параметры:
targetFormat - желаемый аудиоформат после преобразования
sourceStream - поток, который необходимо преобразовать
Возвращает:
аудиопоток указанного формата
Исключения:
IllegalArgumentException - если преобразование не поддерживается
NullPointerException - если targetFormat или sourceStream недоступны
См. также:
  • getTargetEncodings(AudioFormat)
  • getTargetFormats(AudioFormat.Encoding, AudioFormat)
  • isConversionSupported(AudioFormat, AudioFormat)
  • getAudioInputStream(AudioFormat.Encoding, AudioInputStream)

getAudioFileFormat

public static AudioFileFormat getAudioFileFormat(InputStream stream) throws UnsupportedAudioFileException, IOException
Получает формат аудиофайла из предоставленного входного потока. Поток должен указывать на действительные данные аудиофайла. Реализация этого метода может потребовать нескольких парсеров для анализа потока и определения его поддержки. Эти парсеры должны уметь помечать поток, считывать достаточно данных для определения поддержки потока и сбрасывать указатель чтения потока в исходную позицию. Если входной поток не поддерживает эти операции, этот метод может завершиться ошибкой IOException.
Параметры:
stream - входной поток, из которого должна извлекаться информация о формате файла
Возвращает:
объект AudioFileFormat, описывающий формат аудиофайла потока
Исключения:
UnsupportedAudioFileException - если поток не указывает на действительные данные аудиофайла, распознанные системой
IOException - если произошла ошибка ввода/вывода
NullPointerException - если stream не null
См. также:
  • InputStream.markSupported()
  • InputStream.mark(int)

getAudioFileFormat

public static AudioFileFormat getAudioFileFormat(URL url) throws UnsupportedAudioFileException, IOException
Получает формат аудиофайла из указанного URL. URL должен указывать на действительные данные аудиофайла.
Параметры:
url - URL, из которого должна извлекаться информация о формате файла
Возвращает:
объект AudioFileFormat, описывающий формат аудиофайла
Исключения:
UnsupportedAudioFileException - если URL не указывает на действительные данные аудиофайла, распознанные системой
IOException - если произошла ошибка ввода/вывода
NullPointerException - если url не null

getAudioFileFormat

public static AudioFileFormat getAudioFileFormat(File file) throws UnsupportedAudioFileException, IOException
Получает формат аудиофайла из указанного File. File должен указывать на действительные данные аудиофайла.
Параметры:
file - File, из которого должна извлекаться информация о формате файла
Возвращает:
объект AudioFileFormat, описывающий формат аудиофайла
Исключения:
UnsupportedAudioFileException - если File не указывает на действительные данные аудиофайла, распознанные системой
IOException - если произошла ошибка ввода/вывода
NullPointerException - если file не null

getAudioInputStream

public static AudioInputStream getAudioInputStream(InputStream stream) throws UnsupportedAudioFileException, IOException
Получает аудиопоток из предоставленного входного потока. Поток должен указывать на действительные данные аудиофайла. Реализация этого метода может потребовать нескольких парсеров для анализа потока и определения его поддержки. Эти парсеры должны уметь помечать поток, считывать достаточно данных для определения поддержки потока и сбрасывать указатель чтения потока в исходную позицию. Если входной поток не поддерживает эти операции, этот метод может завершиться ошибкой IOException.
Параметры:
stream - входной поток, из которого должен быть построен AudioInputStream
Возвращает:
объект AudioInputStream, основанный на данных аудиофайла, содержащихся в входном потоке
Исключения:
UnsupportedAudioFileException - если поток не указывает на действительные данные аудиофайла, распознанные системой
IOException - если произошла ошибка ввода/вывода
NullPointerException - если stream не null
См. также:
  • InputStream.markSupported()
  • InputStream.mark(int)

getAudioInputStream

public static AudioInputStream getAudioInputStream(URL url) throws UnsupportedAudioFileException, IOException
Получает аудиопоток из предоставленного URL. URL должен указывать на действительные данные аудиофайла.
Параметры:
url - URL, для которого должен быть построен AudioInputStream
Возвращает:
объект AudioInputStream, основанный на данных аудиофайла, на которые указывает URL
Исключения:
UnsupportedAudioFileException - если URL не указывает на действительные данные аудиофайла, распознанные системой
IOException - если произошла ошибка ввода/вывода
NullPointerException - если url не null

getAudioInputStream

public static AudioInputStream getAudioInputStream(File file) throws UnsupportedAudioFileException, IOException
Получает аудиопоток из предоставленного File. File должен указывать на действительные данные аудиофайла.
Параметры:
file - File, для которого должен быть построен AudioInputStream
Возвращает:
объект AudioInputStream, основанный на данных аудиофайла, на которые указывает File
Исключения:
UnsupportedAudioFileException - если File не указывает на действительные данные аудиофайла, распознанные системой
IOException - если произошла ошибка ввода/вывода
NullPointerException - если file не null

getAudioFileTypes

public static AudioFileFormat.Type[] getAudioFileTypes()
Получает типы файлов, для которых система предоставляет поддержку записи файлов.
Возвращает:
массив уникальных типов файлов. Если типы файлов не поддерживаются, возвращается массив длиной 0.

isFileTypeSupported

public static boolean isFileTypeSupported(AudioFileFormat.Type fileType)
Указывает, предоставляется ли система поддержкой записи файлов для указанного типа файла.
Параметры:
fileType - тип файла, для которого запрашиваются возможности записи
Возвращает:
true, если тип файла поддерживается, в противном случае false
Исключения:
NullPointerException - если fileType не null

getAudioFileTypes

public static AudioFileFormat.Type[] getAudioFileTypes(AudioInputStream stream)
Получает типы файлов, которые система может записать из указанного аудиопотока.
Параметры:
stream - аудиопоток, для которого запрашивается поддержка типов аудиофайлов
Возвращает:
массив типов файлов. Если типы файлов не поддерживаются, возвращается массив длиной 0.
Исключения:
NullPointerException - если stream не null

isFileTypeSupported

public static boolean isFileTypeSupported(AudioFileFormat.Type fileType, AudioInputStream stream)
Указывает, можно ли записать аудиофайл указанного типа из указанного аудиопотока.
Параметры:
fileType - тип файла, для которого запрашиваются возможности записи
stream - поток, для которого запрашивается поддержка записи файла
Возвращает:
true, если тип файла поддерживается для этого аудиопотока, в противном случае false
Исключения:
NullPointerException - если fileType или stream не null

write

public static int write(AudioInputStream stream, AudioFileFormat.Type fileType, OutputStream out) throws IOException
Записывает поток байтов, представляющий аудиофайл указанного типа, в предоставленный выходной поток. Некоторые типы файлов требуют, чтобы длина была записана в заголовок файла; такие файлы нельзя записать с начала до конца, если длина не известна заранее. Попытка записи файла такого типа завершится ошибкой IOException, если длина в типе аудиофайла AudioSystem.NOT_SPECIFIED.
Parameters:
stream - поток аудиоввода, содержащий аудиоданные, которые будут записаны в файл
fileType - вид аудиофайла для записи
out - поток, в который должны быть записаны данные файла
Returns:
количество байтов, записанных в выходной поток
Throws:
IOException - если произошла ошибка ввода/вывода
IllegalArgumentException - если тип файла не поддерживается системой
NullPointerException - если stream или fileType или out null
See Also:
  • isFileTypeSupported(javax.sound.sampled.AudioFileFormat.Type)
  • getAudioFileTypes()

write

public static int write(AudioInputStream stream, AudioFileFormat.Type fileType, File out) throws IOException
Записывает поток байтов, представляющий аудиофайл указанного типа, в предоставленный внешний файл.
Parameters:
stream - поток аудиоввода, содержащий аудиоданные, которые будут записаны в файл
fileType - вид аудиофайла для записи
out - внешний файл, в который должны быть записаны данные файла
Returns:
количество байтов, записанных в файл
Throws:
IOException - если произошла ошибка ввода/вывода
IllegalArgumentException - если тип файла не поддерживается системой
NullPointerException - если stream или fileType или out null
See Also:
  • isFileTypeSupported(javax.sound.sampled.AudioFileFormat.Type)
  • getAudioFileTypes()

© 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.
https://download.java.net/java/early_access/jdk24/docs/api/java.desktop/javax/sound/sampled/AudioSystem.html

Spec-Zone.ru

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