java.lang.Object
java.util.EventObject
javax.sound.sampled.LineEvent
- 所有已实现的接口:
-
Serializable
LineEvent
类封装了当线路打开、关闭、启动或停止时,线路向其监听器发送的信息。这四种状态变化分别由相应类型的事件表示。监听器将事件作为参数传递给其update
方法。通过查询事件,监听器可以了解事件的类型、负责事件的线路以及事件发生时线路已处理的数据量。
尽管这个类实现了Serializable接口,但尝试序列化LineEvent
对象将失败。
- 自从:
- 1.3
- 参见:
-
Nested Class Summary
-
Field Summary
Fields declared in class java.util.EventObject
source
-
Constructor Summary
ConstructorDescriptionLineEvent
(Line line, LineEvent.Type type, long position) 构造一个指定类型的新事件,源自指定的线路。 -
Method Summary
Modifier and TypeMethodDescriptionfinal long
获取事件发生时线路音频数据的位置,以采样帧表示。final Line
getLine()
获取此事件的音频线路源。final LineEvent.Type
getType()
获取事件的类型。toString()
返回事件的字符串表示形式。Methods declared in class java.util.EventObject
getSource
-
Constructor Details
-
LineEvent
构造一个指定类型的新事件,源自指定的线路。- 参数:
-
line
- 此事件的源 -
type
- 事件类型(OPEN
、CLOSE
、START
或STOP
) -
position
- 当事件发生时线路已处理的采样帧数,或AudioSystem.NOT_SPECIFIED
- 抛出:
-
IllegalArgumentException
- 如果line
为null
-
-
Method Details
-
getLine
获取此事件的音频线路源。- 返回:
- 负责此事件的线路
-
getType
获取事件的类型。 -
getFramePosition
public final long getFramePosition()获取事件发生时线路音频数据的位置,以采样帧表示。例如,如果源线路在暂停时已播放了14个采样帧,暂停事件将报告线路的位置为14。下一个要处理的帧将是基于零的编号的第14帧,或基于一的编号的第15帧。请注意,此字段仅与数据线生成的某些事件相关,例如
START
和STOP
。对于不计算采样帧的线路生成的事件,以及对于任何其他未知此值的事件,位置值应为AudioSystem.NOT_SPECIFIED
。- 返回:
- 作为采样帧编号的线路位置
-
toString
返回事件的字符串表示形式。- 覆盖:
-
toString
在类EventObject
- 返回:
- 事件的字符串表示形式
-