background image

 

课题需求分析

在 Java2 平台出现前,Java 语言只能处理电话音质的声音,以单声道 8KHz 的采

样频率存储为 u-lawAU 文件。

Java2 平台增加了 AIFF、WAV 以及三种 MIDI 文件类型的支持。

所支持的三种 MIDI 文件格式为 MIDI 文件类型 0、MIDI 文件类型 1 以及 RMF。

2

 

课程解决方案

本程序有三个文件:SoundApplet.Java 是主文件,AppletSoundLoader.Java 中的

AppletSoundLoader 类继承 Thrwad 负责为声音文件获得 AudioClip 对象并把它加到

AppletSoundList 中 去 ; AppletSoundList.java 中 定 义 的 AppletSoundList 继 承 自

Hashtable,提供 getClip(String)和 putClip(AudioClip,String)方法,分别从哈希表中取

得 AudioClip 对象和放置 AudioClip 对象。

其结构是 AppletSoundList 中用 AppletSoundLoader 来装载制定 URL 的声音文件,

AppletSoundLoader 负责为声音文件产生 AudioClip 对象并添加到 AppletSoundList 中。

在 SoundApplet 中则只是利用 AppletSoundList 类。

3   课题实现

主要的声音文件类型如下:

AU (扩展名为 AU 或 SND):适用于短的声音文件,为 Solaris 和下一代机器的通

用文件格式,也是 Java 平台的标准音频格式。AU 类型文件使用的三种音频格式为:8

位 u-law 类型(通常采用频率为 8KHz),8 位线性类型以及 16 位线性类型。

1