|
Spec-Zone .ru
спецификации, руководства, описания, API
|
public interface Line extends AutoCloseable
Line интерфейс представляет моно или многоканальный аудио канал. Строка является элементом цифрового аудио "конвейер", такой как микшер, порт ввода или вывода, или информационный канал к или из микшера. У строки могут быть средства управления, такие как усиление, панорамирование, и реверберация. Сами средства управления являются экземплярами классов, которые расширяют основу class. ControlLine интерфейс обеспечивает два метода средства доступа для того, чтобы они получили средства управления строки: возвращает весь набор, и getControls возвращает единственное управление указанного типа. getControl
Строки существуют в различных состояниях в разное время. Когда строка открывается, она резервирует системные ресурсы для себя, и когда она закрывается, эти ресурсы освобождаются для других объектов или приложений. метод позволяет Вам обнаруживать, открыта ли строка или закрыта. Открытая строка не должна обрабатывать данные, как бы то ни было. Такая обработка обычно инициируется методами подынтерфейса такой как isOpen() и SourceDataLine.write. TargetDataLine.read
Можно зарегистрировать объект получить уведомления всякий раз, когда изменения состояния строки. Объект должен реализовать интерфейс, который состоит из единственного метода LineListener. Этот метод будет вызван, когда строка откроется и завершения (и, если это - a updateDataLine, когда это запускается и остановки).
Объект может быть зарегистрирован, чтобы слушать многократные строки. Событие это получает в update метод определит, какая строка, создаваемая событие, каким событием это было (OPEN, CLOSE, START, или STOP), и то, сколько выборка структурирует строку, обработало в то время, когда событие имело место.
Определенные операции строки, такой как открытый и близкий, могут генерировать исключения безопасности если вызвано непривилегированным кодом, когда строка является совместно используемым аудио ресурсом.
LineEvent| Модификатор и Тип | Интерфейс и Описание |
|---|---|
static class |
Строка. Информация
A
Line.Info объект содержит информацию о строке. |
| Модификатор и Тип | Метод и Описание |
|---|---|
void |
addLineListener(LineListener listener)
Добавляет слушатель этой строки.
|
void |
close()
Закрывает строку, указывая, что любые системные ресурсы в использовании строкой могут быть выпущены.
|
Управление |
getControl(Control.Type control)
Получает управление указанного типа, если есть кто-либо.
|
Управление[] |
getControls()
Получает набор средств управления, связанных с этой строкой.
|
Строка. Информация |
getLineInfo()
Получает
Line.Info объект, описывающий эту строку. |
boolean |
isControlSupported(Control.Type control)
Указывает, поддерживает ли строка управление указанного типа.
|
boolean |
isOpen()
Указывает, открыта ли строка, означая, что она зарезервировала системные ресурсы и является операционной, хотя она не могла бы в настоящий момент играть или получать звук.
|
void |
open()
Открывает строку, указывая, что она должна получить любые необходимые системные ресурсы и стать операционной.
|
void |
removeLineListener(LineListener listener)
Удаляет указанного слушателя из списка этой строки слушателей.
|
Line.Info getLineInfo()
Line.Info объект, описывающий эту строку.void open() throws LineUnavailableException
OPEN событие диспетчеризируется слушателям строки. Отметьте, что некоторые строки, когда-то закрытые, не могут быть вновь открыты. Попытки вновь открыть такую строку будут всегда приводить к LineUnavailableException.
У некоторых типов строк есть конфигурируемые свойства, которые могут влиять на распределение ресурсов. Например, a DataLine должен быть открыт с определенным форматом и размером буфера. Такие строки должны обеспечить механизм для того, чтобы он сконфигурировал эти свойства, такой как дополнительное open метод или методы, которые позволяют приложению определять требуемые настройки.
Этот метод не берет параметров, и открывает строку с текущими настройками. Для и SourceDataLine объекты, это означает, что строка открывается с настройками по умолчанию. Для a TargetDataLine, однако, размер буфера определяется, когда данные загружаются. Так как этот метод не позволяет приложению определять любые данные, чтобы загрузиться, IllegalArgumentException бросается. Поэтому, следует вместо этого использовать один из Clipopen методы, обеспеченные в Clip взаимодействуйте через интерфейс, чтобы загрузить данные в Clip.
Для DataLine's, если DataLine.Info объект, который использовался, чтобы получить строку, определяет по крайней мере один полностью определенный аудиоформат, последний будет использоваться в качестве формата значения по умолчанию.
IllegalArgumentException - если этот метод вызывают на экземпляре Клипа.LineUnavailableException - если строка не может быть открыта из-за ограничений ресурса.SecurityException - если строка не может быть открыта из-за ограничений безопасности.close(), isOpen(), LineEvent, DataLine, Clip.open(AudioFormat, byte[], int, int), Clip.open(AudioInputStream)void close()
CLOSE событие диспетчеризируется слушателям строки.close в интерфейсе AutoCloseableSecurityException - если строка не может быть закрыта из-за ограничений безопасности.open(), isOpen(), LineEventboolean isOpen()
Control[] getControls()
getControl(javax.sound.sampled.Control.Type)boolean isControlSupported(Control.Type control)
control - тип управления, для которого запрашивается поддержкаtrue если по крайней мере одно управление указанного типа поддерживается, иначе false.Control getControl(Control.Type control)
control - тип требуемого управленияIllegalArgumentException - если управление указанного типа не поддерживаетсяgetControls(), isControlSupported(Control.Type control)void addLineListener(LineListener listener)
update() метод вызывают с a LineEvent объект, который описывает изменение.listener - объект добавить как слушатель этой строкиremoveLineListener(javax.sound.sampled.LineListener), LineListener.update(javax.sound.sampled.LineEvent), LineEventvoid removeLineListener(LineListener listener)
listener - слушатель, чтобы удалитьaddLineListener(javax.sound.sampled.LineListener)
Для дальнейшей ссылки API и документации разработчика, см. Java Документация SE. Та документация содержит более подробные, предназначенные разработчиком описания, с концептуальными краткими обзорами, определениями сроков, обходных решений, и рабочих примеров кода.
Авторское право © 1993, 2013, Oracle и/или его филиалы. Все права защищены.
Проект сборка-b92