// 从输入流中创建一个AudioStream对象
AudioStream as = new AudioStream(in);
AudioPlayer.player.start(as);//用静态成员player.start播放音乐
//AudioPlayer.player.stop(as);//关闭音乐播放
//如果要实现循环播放,则用下面的三句取代上面的“AudioPlayer.player.start(as);”这句
/*AudioData data = https://www.04ip.com/post/as.getData();
ContinuousAudioDataStream gg= new ContinuousAudioDataStream (data);
AudioPlayer.player.start(gg);// Play audio.
*/
//如果要用一个 URL 做为声音流的源(source),则用下面的代码所示替换输入流来创建声音流:
/*AudioStream as = new AudioStream (url.openStream());
*/
} catch(FileNotFoundException e){
System.out.print("FileNotFoundException ");
} catch(IOException e){
System.out.print("有错误!");
}
}
Java中实现播放声音java不支持播放mp3格式的声间文件,你把它转成au格式的就能播放了
可以看看下面:
Java对多媒体的支持
4.2 图像与声音
其它语言相比较,如果说Java对图形和文本媒体的支持并不占明显优势的话 , 那么Java对图像与声音媒体的支持真可谓是技高一筹,显示图像与播放声音就如同显示一行文本一样方便 。同时 , 正由于在Java动画中灵活的运用图像和声音媒体,才使得Web页面更具魅力 。
4.2.1 图像文件的显示
正如上一节所介绍的,Graphics类中确实提供了不少绘制图形的方法,但如果用它们在applet运行过程中实时地绘制一幅较复杂的图形(例如一条活泼可爱的小狗),就好比是在用斧头和木块去制造航天飞机 。因此,对于复杂图形,大部分都事先用专用的绘图软件绘制好,或者是用其它截取图像的工具(如扫描仪、视效卡等)获取图像的数据信息,再将它们按一定的格式存入图像文件 。applet运行时,只要找到图像文件存贮的位置,将它装载到内存里,然后在适当的时机将它显示在屏幕上就可以了 。
1.图像文件的装载
Java目前所支持的图像文件格式只有两种,它们分别是GIF和JPEG格式(带有.GIF、.JPG、.JPEG后缀名的文件) 。因此若是其它格式的图像文件,就先要将它们转换为这两种格式 。能转换图像格式的软件有很多 , 如PhotoStyler等 。
Applet类中提供了getImage( )方法用来将准备好的图像文件装载到applet中 , 但我们必须首先指明图像文件所存贮的位置 。由于Java语言是面向网络应用的,因此文件的存贮位置并不局限于本地机器的磁盘目录,而大部分情况是直接存取网络中Web服务器上的图像文件,因而 , Java采用URL(Universal Resource Location,统一资源定位器)来定位图像文件的网络位置 。因此,Java专门提供了URL类来管理URL信息(关于该类的详细介绍见下一章) 。
表示一个URL信息可分为两种形式:
一种称为绝对URL形式 , 它指明了网络资源的全路径名 。如:
绝对URL:“”
另一种称为相对URL形式,分别由基准URL(即base URL)再加上相对于基准URL下的相对URL这两部分组成 , 例如上面的例子可表示为:
基准URL:“”
相对URL:“images/m1.gif”
现在,我们可以来看一下getImage( )方法的调用格式了:
Image getImage(URL url)
Image getImage(URL url, String name)
我们可以发现,这两种调用格式的返回值都是Image对象 。确实,Java特别提供了java.awt.Image类来管理与图像文件有关的信息,因此执行与图像文件有关的操作时不要忘了import这个类 。getImage( )方法的第一种调用格式只需一个URL对象作为参数,这便是绝对URL 。而后一种格式则带有两个参数,第一个参数给出的URL对象是基准URL,第二个参数是字符串类型,它描述了相对于基准URL下的路径和文件名信息 , 因此这两个参数的内容综合在一起就构成了一个绝对URL 。例如,下面两种写法所返回的结果是一样的:
推荐阅读
- 双人动作解谜游戏,双人动作解谜游戏大全
- html中a标签的样式,html中a标签属性设置
- jqueryajax.request的简单介绍
- 微信直播交税要交多少钱,微信直播避税
- vb.net窗体 vbnet窗体数据如何交互
- chatgpt反向套话,反向atrp
- flutter放大透明,flutter 图片缩放
- 直播软件下载电子书,课堂直播电子书
- 调php用数据库的方法吗 php数据库编程