Java聲音技術(shù)簡(jiǎn)析
現(xiàn)在我們就java中的聲音技術(shù)來(lái)分析其中的功能。
一 在Applet中播放聲音
播放聲音是java對(duì)多媒體的支持一個(gè)重要部分.現(xiàn)今流行的聲音格式有wav,mid,au為擴(kuò)展名的聲音文件。而java現(xiàn)主要支持以au為名的聲音。在Applet中專門提供了類AudioClip來(lái)對(duì)聲音的支持。
由于Applet的多媒體功能書上都有很清晰的介紹也很簡(jiǎn)單。我們就以一個(gè)例子來(lái)結(jié)束這部分的說(shuō)明。
public class sounda extends Applet
{
public static void main (String[] args)
{
AudioClip ac = getAudioClip(getCodeBase(), "sloop.au");
ac.play();
// ac.loop();
// ac.stop();
}
}
上面例子只是很簡(jiǎn)單的說(shuō)明,AudioClip是java中播放類。java中提供了兩個(gè)很有用的方法getCodeBase(),getDocumentBase()他們分別返回Applet本身和包含此Applet主頁(yè)的URL地址.上面的sloop.au即我機(jī)器上的聲音文件。我們?cè)诖酥苯邮褂昧薃udioClip的play方法來(lái)播放聲音。大家可測(cè)試用Applet的圖像功能加入按鈕。
二 java應(yīng)用程序中的聲音播放
由于在應(yīng)用程序并不支持AudioClip類。所以播放聲音文件成了一大難題。制做自己的java播放器或應(yīng)用媒體方面的java應(yīng)用程序我們就不能支持聲音了嗎?不是的,sun公司為應(yīng)用程序中的聲音支持另提供了一個(gè)java新包。sun.audio在這個(gè)包下面提供了大部分所需要的聲音處理類。注:sun包下面還有很多很有意思的技術(shù)支持,如java2D,Tools等,大家可自己嘗試去使用。
下面我們就來(lái)做個(gè)自己的聲音播放測(cè)試
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) {}
}
}
注:上面兩例都沒(méi)有提供相應(yīng)的stop方法,本文章指在方法的嘗試,并非全面文章,但上面的例子都是可用的。
三 javaX中Sound包的應(yīng)用
當(dāng)我在進(jìn)行上面的測(cè)試過(guò)程中,我發(fā)現(xiàn)javaX目錄下也提供了一個(gè)sound包對(duì)java聲音的強(qiáng)大支持,并且在sun網(wǎng)站的jjse上可下載到相關(guān)的大量例子程序.
【編輯推薦】