Spec-Zone.ru › OpenJDK 8

Интерфейс Mixer

Все суперинтерфейсы:
AutoCloseable, Line

public interface Mixer
extends Line

Микшер — это аудиоустройство с одной или несколькими линиями. Оно не обязательно предназначено для микширования аудиосигналов. Микшер, который фактически микширует звук, имеет несколько входных (источников) линий и, по крайней мере, одну выходную (целевую) линию. Первые часто являются экземплярами классов, реализующих SourceDataLine, а вторые — TargetDataLine. Port объекты также являются либо входными линиями, либо выходными. Микшер может принимать предварительно записанный, воспроизводимый по циклу звук в качестве входных данных, имея некоторые из своих входных линий, являющимися экземплярами объектов, реализующих интерфейс Clip.

Через методы интерфейса Line, который Mixer расширяет, микшер может предоставить набор параметров, которые являются глобальными для микшера. Например, микшер может иметь общий регулятор усиления. Эти глобальные настройки отличаются от настроек, принадлежащих каждой отдельной линии микшера.

Некоторые микшеры, особенно те, которые обладают внутренними цифровыми возможностями микширования, могут предоставлять дополнительные возможности, реализуя интерфейс DataLine.

Микшер может поддерживать синхронизацию своих линий. Когда одна линия в синхронизированной группе запускается или останавливается, другие линии в группе автоматически запускаются или останавливаются одновременно с явно затронутой.

С:
1.3

Вложенные классы

Модификатор и тип Интерфейс и описание
static class  Mixer.Info

Класс Mixer.Info представляет информацию об аудиомикшере, включая название продукта, версию и поставщика, а также текстовое описание.

Методы

Модификатор и тип Метод и описание
Line getLine(Line.Info info)

Получает линию, доступную для использования и соответствующую описанию в указанном объекте Line.Info.

int getMaxLines(Line.Info info)

Получает приблизительное максимальное количество линий запрошенного типа, которые могут быть открыты одновременно на микшере.

Mixer.Info getMixerInfo()

Получает информацию об этом микшере, включая название продукта, версию, поставщика и т. д.

Line.Info[] getSourceLineInfo()

Получает информацию о наборе входных линий, поддерживаемых этим микшером.

Line.Info[] getSourceLineInfo(Line.Info info)

Получает информацию об входных линиях определенного типа, поддерживаемых микшером.

Line[] getSourceLines()

Получает набор всех входных линий, которые в настоящее время открыты для этого микшера.

Line.Info[] getTargetLineInfo()

Получает информацию о наборе выходных линий, поддерживаемых этим микшером.

Line.Info[] getTargetLineInfo(Line.Info info)

Получает информацию о выходных линиях определенного типа, поддерживаемых микшером.

Line[] getTargetLines()

Получает набор всех выходных линий, которые в настоящее время открыты из этого микшера.

boolean isLineSupported(Line.Info info)

Указывает, поддерживает ли микшер линию (или линии), соответствующую указанному объекту Line.Info.

boolean isSynchronizationSupported(Line[] lines, boolean maintainSync)

Сообщает, поддерживает ли этот микшер синхронизацию указанного набора линий.

void synchronize(Line[] lines, boolean maintainSync)

Синхронизирует две или более линии.

void unsynchronize(Line[] lines)

Освобождает синхронизацию для указанных линий.

Методы, унаследованные от интерфейса javax.sound.sampled.Line

addLineListener, close, getControl, getControls, getLineInfo, isControlSupported, isOpen, open, removeLineListener

Методы

getMixerInfo

Mixer.Info getMixerInfo()

Получает информацию об этом микшере, включая название продукта, версию, производителя и т.д.

Возвращает:
объект mixer info, описывающий этот микшер
См. также:
Mixer.Info

getSourceLineInfo

Line.Info[] getSourceLineInfo()

Получает информацию о наборе поддерживаемых этим микшером входных линий. Некоторые входные линии могут быть доступны только при открытом микшере.

Возвращает:
массив объектов Line.Info , представляющих входные линии для этого микшера. Если входные линии не поддерживаются, возвращается массив длиной 0.

getTargetLineInfo

Line.Info[] getTargetLineInfo()

Получает информацию о наборе поддерживаемых этим микшером выходных линий. Некоторые выходные линии могут быть доступны только при открытом микшере.

Возвращает:
массив объектов Line.Info , представляющих выходные линии для этого микшера. Если выходные линии не поддерживаются, возвращается массив длиной 0.

getSourceLineInfo

Line.Info[] getSourceLineInfo(Line.Info info)

Получает информацию о входных линиях определенного типа, поддерживаемых микшером. Некоторые входные линии могут быть доступны только при открытом микшере.

Параметры:
info - объект Line.Info , описывающий линии, информация о которых запрашивается
Возвращает:
массив объектов Line.Info , описывающих входные линии, соответствующие запрошенному типу. Если не найдено соответствующих входных линий, возвращается массив длиной 0.

getTargetLineInfo

Line.Info[] getTargetLineInfo(Line.Info info)

Получает информацию о выходных линиях определенного типа, поддерживаемых микшером. Некоторые выходные линии могут быть доступны только при открытом микшере.

Параметры:
info - объект Line.Info , описывающий линии, информация о которых запрашивается
Возвращает:
массив объектов Line.Info , описывающих выходные линии, соответствующие запрошенному типу. Если не найдено соответствующих выходных линий, возвращается массив длиной 0.

isLineSupported

boolean isLineSupported(Line.Info info)

Указывает, поддерживает ли микшер линию (или линии), соответствующую указанному объекту Line.Info . Некоторые линии могут быть доступны только при открытом микшере.

Параметры:
info - описывает линию, для которой запрашивается поддержка
Возвращает:
true если поддерживается хотя бы одна соответствующая линия, false в противном случае

getLine

Line getLine(Line.Info info)
      throws LineUnavailableException

Получает линию, доступную для использования и соответствующую описанию в указанном объекте Line.Info .

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

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

getMaxLines

int getMaxLines(Line.Info info)

Получает приблизительное максимальное количество линий запрошенного типа, которые могут быть одновременно открыты в микшере. Некоторые типы миксеров не имеют жесткого ограничения и могут разрешать открытие большего количества линий. Поскольку некоторые линии являются общими ресурсами, микшер может не иметь возможности открыть максимальное количество линий, если другой процесс открыл линии этого микшера. Запрашиваемый тип - любая линия, соответствующая описанию в предоставленном объекте Line.Info . Например, если объект info представляет собой выходной порт, и микшер поддерживает ровно один выходной порт, этот метод должен вернуть 1. Если объект info представляет собой линию входных данных, и микшер поддерживает одновременное использование 32 линий входных данных, значение возврата должно быть 32. Если ограничений нет, эта функция возвращает AudioSystem.NOT_SPECIFIED.

Параметры:
info - объект Line.Info , описывающий линию, для которой запрашивается количество поддерживаемых экземпляров
Возвращает:
максимальное количество поддерживаемых соответствующих линий или AudioSystem.NOT_SPECIFIED

getSourceLines

Line[] getSourceLines()

Получает набор всех входных линий, текущих открытых для этого микшера.

Возвращает:
открытые входные линии для микшера. Если для этого микшера нет открытых входных линий, возвращается массив длиной 0.
Исключение:
SecurityException - если соответствующие линии недоступны из-за ограничений безопасности

getTargetLines

Line[] getTargetLines()

Получает набор всех выходных линий, текущих открытых от этого микшера.

Возвращает:
открытые выходные линии от микшера. Если для этого микшера нет открытых выходных линий, возвращается массив длиной 0.
Исключение:
SecurityException - если соответствующие линии недоступны из-за ограничений безопасности

synchronize

void synchronize(Line[] lines,
                 boolean maintainSync)

Синхронизирует две или более линии. Любая последующая команда, которая запускает или останавливает аудиовоспроизведение или захват для одной из этих линий, окажет такое же действие на другие линии в группе, так что они начнут или остановят воспроизведение или захват данных одновременно.

Параметры:
lines - линии, которые должны быть синхронизированы
maintainSync - true если синхронизация должна быть точно сохранена (т.е., синхронизация должна быть точной по сэмплам) во все время работы линий, или false если точная синхронизация требуется только во время операций запуска и остановки
Исключение:
IllegalArgumentException - если линии нельзя синхронизировать. Это может произойти, если линии имеют разные типы или разные форматы, для которых этот микшер не поддерживает синхронизацию, или если все указанные линии не относятся к этому микшеру.

unsynchronize

void unsynchronize(Line[] lines)

Освобождает синхронизацию для указанных линий. Массив должен быть идентичен тому, для которого уже установлена синхронизация; в противном случае может быть выброшено исключение. Однако, null может быть указано, в этом случае все текущие синхронизированные линии, принадлежащие этому микшеру, будут разсинхронизированы.

Параметры:
lines - синхронизированные линии, для которых должна быть освобождена синхронизация, или null для всех синхронизированных линий этого микшера
Исключение:
IllegalArgumentException - если линии нельзя разсинхронизировать. Это может произойти, если указанный аргумент не точно соответствует набору линий, для которых уже была установлена синхронизация.

isSynchronizationSupported

boolean isSynchronizationSupported(Line[] lines,
                                   boolean maintainSync)

Сообщает, поддерживает ли этот микшер синхронизацию указанного набора линий.

Параметры:
lines - набор линий, для которых запрашивается поддержка синхронизации
maintainSync - true если синхронизация должна быть точно сохранена (т.е., синхронизация должна быть точной по сэмплам) во все время работы линий, или false если точная синхронизация требуется только во время операций запуска и остановки
Возвращает:
true если линии могут быть синхронизированы, false в противном случае

© 1993, 2020, 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