好学IT学院:IT信息技术分享交流平台
标签:Java  来源:中文java网站  作者:NC_Editor  发布时间:2006-09-01  ★★★加入收藏〗〖手机版
用Java实现音频播放
摘要:桌面PC 的性能日益提高,Java虚拟机的优化技术也不断获得突破,这一切使得用Java处理实时信号成为可能。本文将通过设计和构造一个支持实时MP3、WAV 和Ogg音频格式解码/回放的Java音乐播放器,阐述用JavaSound API编写音频处理程序的思路和…

六、支持更多的音频格式

假设已经在test 目录下准备好了所有的.java文件,执行javac *.java即可顺利编译,执行java test.TestPlayer就可以启动图一的播放器。但现在播放器只能播放有限的文件,因为JDK实现的JavaSound只支持WAV、AIFF和 AU。但是,我们可以用JavaSound SPI为播放器增加对MP3和Ogg Vorbis的支持,只要下载和安装相应的插件Jar文件即可。

Java版的Vorbis解码器可以从JavaCraft(http://www.jcraft.com/jorbis/)下载,最新版本是0.0.12。另外还要有一个JOrbis解码器的SPI封装器,这是使解码器在JavaSound下透明地运行所必需的,可以从http://www.javazoom.net/vorbisspi/vorbisspi.html下载。VorbisSPI的最新版本是0.7。

对于MP3支持,JavaZoom也提供了一个兼容JavaSound的纯Java解码器,称为JavaLayer(http://www.javazoom.net/javalayer/javalayer.html),最新的版本是0.2.0。注意要下载的是JavaLayer的J2SE版,不要下载J2ME版。

解开下载得到的文件,把所有Jar文件放到播放器所在目录。用下面的命令启动播放器:

java -classpath .;.jogg-0.0.5.jar;.jorbis-0.0.12.jar;.jl020.jar;.mp3sp.jar;.vorbisspi0.6.jar test.TestPlayer。如果你下载的解码器版本不同,启动命令也要作相应地改动。把SPI扩展插件加入到了播放器的classpath之后, JavaSound就会在运行时自动使用它们。