JAVA资格认证:Java声音技术简析Java认证考试
文章作者 100test 发表时间 2009:05:22 21:53:07
来源 100Test.Com百考试题网
java 的魅力之一就是对多媒体的支持,Appley使得原来沉闷的网页变得丰富起来,在java.applet中提供了很多功能强大的方法对多媒体的支持。现在我们就java中的声音技术来分析其中的功能。
一 在Applet中播放声音
播放声音是java对多媒体的支持一个重要部分.现今流行的声音格式有wav,mid,au为扩展名的声音文件。而java现主要支持以au为名的声音。在Applet中专门提供了类AudioClip来对声音的支持。
由于Applet的多媒体功能书上都有很清晰的介绍也很简单。我们就以一个例子来结束这部分的说明。
import java.applet.*.
public class sounda extends Applet
{
public static void main (String[] args)
{
AudioClip ac = getAudioClip(getCodeBase(), "sloop.au").
ac.play().
// ac.loop().
// ac.stop().
}
}
上面例子只是很简单的说明,AudioClip是java中播放类。java中提供了两个很有用的方法 getCodeBase(),getDocumentBase()他们分别返回Applet本身和包含此Applet主页的URL地址.上面的 sloop.au即我机器上的声音文件。我们在此直接使用了AudioClip的play方法来播放声音。大家可测试用Applet的图像功能加入按钮。
二 java应用程序中的声音播放
由于在应用程序并不支持AudioClip类。所以播放声音文件成了一大难题。制做自己的java播放器或应用媒体方面的java应用程序我们就不能支持声音了吗?不是的,sun公司为应用程序中的声音支持另提供了一个java新包。sun.audio在这个包下面提供了大部分所需要的声音处理类。注:sun包下面还有很多很有意思的技术支持,如java2D,Tools等,大家可自己尝试去使用。
下面我们就来做个自己的声音播放测试
import sun.audio.*.
import java.io.*.
public class Sound
{
public static voie main(String args[])
{
try {
FileInputStream fileau=new
FileInputStream("sloop.au").
AudioStream as=new AudioStream(fileau).
AudioPlayer.player.start(as).
}
catch (Exception e) {}
}
}
注:上面两例都没有提供相应的stop方法,本文章指在方法的尝试,并非全面文章,但上面的例子都是可用的。
三 javaX中Sound包的应用
当我在进行上面的测试过程中,我发现javaX目录下也提供了一个sound包对java声音的强大支持,并且在sun网站的jjse上可下载到相关的大量例子程序.有志于声音处理方向的朋友可下载试试。
更多优质资料尽在百考试题论坛 百考试题在线题库