所有类


javax.sound.sampled
类 LineEvent

java.lang.Object
  继承者 java.util.EventObject
      继承者 javax.sound.sampled.LineEvent
所有已实现的接口:
Serializable

public class LineEvent
   
   
   
   
   
extends EventObject

LineEvent 类封装某一行每次打开、关闭、启动或停止时向其侦听器发送的信息。这四种状态更改中的每一种更改都由相应的事件类型表示。侦听器将事件作为一个参数接收到其 update 方法中。通过查询事件,侦听器可以了解事件的类型、负责该事件的行,以及发生事件时行所处理的数据量。

尽管此类实现了 Serializable,但试图序列化 LineEvent 对象仍将失败。

从以下版本开始:
1.3
另请参见:
Line, LineListener.update(javax.sound.sampled.LineEvent)

嵌套类摘要
static class LineEvent.Type
          该 LineEvent.Type 内部类标识行上所发生事件的种类。
 
字段摘要
 
从类 java.util.EventObject 继承的字段
source
 
构造方法摘要
LineEvent(Line line, LineEvent.Type type, long position)
          构造源自指定行的指定类型的新事件。
 
方法摘要
 long getFramePosition()
          获得事件发生时行的音频数据的位置,用样本帧表示。
 Line getLine()
          获得作为此事件的源的音频行。
 LineEvent.Type getType()
          获得事件的类型。
 String toString()
          获得事件的字符串表示形式。
 
从类 java.util.EventObject 继承的方法
getSource
 
从类 java.lang.Object 继承的方法
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

构造方法详细信息

LineEvent

public LineEvent(Line line,
                 LineEvent.Type type,
                 long position)
构造源自指定行的指定类型的新事件。

参数:
line - 此事件的源
type - 事件类型(OPENCLOSESTARTSTOP
position - 事件发生时行已经处理的样本帧数,或 AudioSystem.NOT_SPECIFIED
抛出:
IllegalArgumentException - 如果 linenull
方法详细信息

getLine

public final Line getLine()
获得作为此事件的源的音频行。

返回:
负责此事件的行

getType

public final LineEvent.Type getType()
获得事件的类型。

返回:
此事件的类型(LineEvent.Type.OPENLineEvent.Type.CLOSELineEvent.Type.STARTLineEvent.Type.STOP

getFramePosition

public final long getFramePosition()
获得事件发生时行的音频数据的位置,用样本帧表示。例如,如果暂停时源行已经回放了 14 个样本帧,则暂停事件应将行的位置报告为 14。使用从 0 开始的计数时,要处理的下一帧应是帧号 14,使用从 1 开始计数时则应是 15。

注意,此字段只与数据行生成的某些事件相关,如 STARTSTOP。对于不依赖样本帧的那些行生成的事件,以及不知道此值的任何其他事件而言,位置值应该是 AudioSystem.NOT_SPECIFIED

返回:
以样本帧数表示的行的位置

toString

public String toString()
获得事件的字符串表示形式。字符串的内容在 Java Sound 的实现之间可能是各不相同的。

覆盖:
EventObject 中的 toString
返回:
描述该事件的字符串。

所有类

微信小程序

微信扫一扫体验

微信公众账号

微信扫一扫加关注

发表
评论
返回
顶部