| |||||||||
摘要: 嵌套 | 字段 | 构造方法 | 方法 | 详细信息: 字段 | 构造方法 | 方法 |
javax.sound.sampled
类 AudioInputStream
java.lang.Object java.io.InputStream javax.sound.sampled.AudioInputStream
- 所有已实现的接口:
- Closeable
public class AudioInputStream
- extends InputStream
音频输入流是具有指定音频格式和长度的输入流。长度用示例帧表示,不用字节表示。提供几种方法,用于从流读取一定数量的字节,或未指定数量的字节。音频输入流跟踪所读取的最后一个字节。可以跳过任意数量的字节以到达稍后的读取位置。音频输入流可支持标记。设置标记时,会记住当前位置,以便可以稍后返回到该位置。
AudioSystem
类包括许多操作 AudioInputStream
对象的方法。例如,这些方法可以让您:
- 从外部音频文件、流或 URL 获得音频输入流
- 从音频输入流写入外部文件
- 将音频输入流转换为不同的音频格式
- 从以下版本开始:
- 1.3
- 另请参见:
AudioSystem
,Clip.open(AudioInputStream)
字段摘要 | |
---|---|
protected AudioFormat | format 流中包含的音频数据的格式。 |
protected long | frameLength 此流的长度,以示例帧为单位。 |
protected long | framePos 此流中的当前位置,以示例帧为单位(从零开始)。 |
protected int | frameSize 每帧的大小,以字节为单位。 |
构造方法摘要 | |
---|---|
AudioInputStream(InputStream stream, AudioFormat format, long length) 使用指定输入流中的音频数据构造具有请求的格式和长度(以示例帧为单位)的音频输入流。 | |
AudioInputStream(TargetDataLine line) 构造从指示的目标数据行读取数据的音频输入流。 |
方法摘要 | |
---|---|
int | available() 返回可不受阻塞地从此音频输入流中读取(或跳过)的最大字节数。 |
void | close() 关闭此音频输入流并释放与该流关联的所有系统资源。 |
AudioFormat | getFormat() 获得此音频输入流中声音数据的音频格式。 |
long | getFrameLength() 获得流的长度,以示例帧表示,而不是以字节表示。 |
void | mark(int readlimit) 标记此音频输入流中的当前位置。 |
boolean | markSupported() 测试此音频输入流是否支持 mark 和 reset 方法。 |
int | read() 从音频输入流读取数据下一个字节。 |
int | read(byte[] b) 从音频输入流读取一定数量的字节,并将其存储在缓冲区数组 b 中。 |
int | read(byte[] b, int off, int len) 从音频流读取指定的最大数量的数据字节,并将其放入给定的字节数组中。 |
void | reset() 将此音频输入流重新定位到上一次调用其 mark 方法时的位置。 |
long | skip(long n) 跳过并丢弃此音频输入流中指定数量的字节。 |
从类 java.lang.Object 继承的方法 |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
字段详细信息 |
---|
format
protected AudioFormat format
- 流中包含的音频数据的格式。
frameLength
protected long frameLength
- 此流的长度,以示例帧为单位。
frameSize
protected int frameSize
- 每帧的大小,以字节为单位。
framePos
protected long framePos
- 此流中的当前位置,以示例帧为单位(从零开始)。
构造方法详细信息 |
---|
AudioInputStream
public AudioInputStream(InputStream stream, AudioFormat format, long length)
- 使用指定输入流中的音频数据构造具有请求的格式和长度(以示例帧为单位)的音频输入流。
- 参数:
stream
- 流,AudioInputStream
对象以该为基础format
- 此流的音频数据格式length
- 在此流中的数据长度(以示例帧为单位)
AudioInputStream
public AudioInputStream(TargetDataLine line)
- 构造从指示的目标数据行读取数据的音频输入流。该流的格式与目标数据行的格式相同,长度为 AudioSystem#NOT_SPECIFIED。
- 参数:
line
- 此流从中获得数据的目标数据行。- 另请参见:
AudioSystem.NOT_SPECIFIED
方法详细信息 |
---|
getFormat
public AudioFormat getFormat()
- 获得此音频输入流中声音数据的音频格式。
- 返回:
- 描述此流的格式的音频格式对象
getFrameLength
public long getFrameLength()
- 获得流的长度,以示例帧表示,而不是以字节表示。
- 返回:
- 以示例帧为单位的长度
read
public int read() throws IOException
- 从音频输入流读取数据下一个字节。音频输入流的帧大小必须是一个字节,否则将抛出
IOException
。 - 指定者:
- 类
InputStream
中的read
- 返回:
- 数据的下一个字节;如果已到达流的末尾,则返回 -1
- 抛出:
IOException
- 如果发生输入或输出错误- 另请参见:
read(byte[], int, int)
,read(byte[])
,