Java声音技术简析

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上可下载到相关的大量例子程序.有志于声音处理方向的朋友可下载试试

时间: 2024-08-31 02:33:23

Java声音技术简析的相关文章

Rails系统中的AJAX开发技术简析(2)

ajax|rails 五. 使用link_to_remote Rails有若干帮助者方法以在你的视图的模板中实现Ajax.一种最简单且很通用的方法就是link_to_remote().让我们考察一个简单的web页面-它实现询问时间并且有一个链接,用户可以点击这个链接来获得当前的时间.该应用程序经由link_to_remote()使用Ajax以检索时间并且显示它于web页面. 我的视图模板(index.rhtml)看起来象: <html><head><title>Ajax

Rails系统中的AJAX开发技术简析(3)

ajax|rails 六. 使用form_remote_tag 这个form_remote_tag()帮助函数与link_to_remote()很相似,除了它也发送一个HTML表单的内容之外.这意味着该行动处理器可以使用用户输入的数据来形成响应.这个实例显示了一个web页面-它有一个列表和一个支持Ajax的表单-该表单能够让用户添加一些选项到该列表中. 我的视图模板(index.rhtml)看上去象: <html><head><title>Ajax List Demo&

Oracle的数据字典技术简析_oracle

正在看的ORACLE教程是:Oracle的数据字典技术简析.数据字典是Oracle存放有关数据库信息的地方,其用途是用来描述数据的.比如一个表的创建者信息,创建时间信息,所属表空间信息,用户访问权限信息等.当用户在对数据库中的数据进行操作时遇到困难就可以访问数据字典来查看详细的信息. Oracle中的数据字典有静态和动态之分.静态数据字典主要是在用户访问数据字典时不会发生改变的,但动态数据字典是依赖数据库运行的性能的,反映数据库运行的一些内在信息,所以在访问这类数据字典时往往不是一成不变的.以下

Java声音技术详解

声音可以创造意境,触发遐想,当与虚拟图像相结合时,更加可以让整个世界充满幻觉.声音是多媒体技术的基础.这就是Sun公司的JAVA媒体技术开发小组忙于准备Java Sound 1.0 API并将其包含于下一版本的JAVA开发工具库中的原因. 在JAVA2平台出现之前,JAVA语言只能处理电话音质的声音,以单声道8KHZ的采样频率存储为μ-law AU文件.JAVA2平台增加了对AIFF,WAV以及三种MIDI文件类型的支持.所支持的三种MIDI文件格式为MIDI文件类型0.MIDI文件类型1.以及

Rails系统中的AJAX开发技术简析

ajax|rails 一. Ajax的简短历史 在短短几个月内,Ajax从一种十分模糊稀罕的技术一下变成最热门的东西.本文将介绍极其容易使用的Ajax支持-作为Ruby on Rails web应用程序框架的一部分实现. 本文不是一个详细的教程,所以我假定你已经了解一点关于如何组织和构建一个Rails web应用程序的知识. 最开始出现的是万维网.比较于桌面应用程序,web应用程序相当缓慢和沉闷.无论如何,人们都喜欢上了web应用程序,因为他们无论在什么地方都能上网,只要身边的计算机上安装一个浏

Rails系统中的AJAX开发技术简析(4)

ajax|rails 七. 使用观察器 Rails能够让你监视一个字段的值,并且在无论何时字段值发生变化时,都作一次到一个行动处理器的Ajax调用.当前被观察字段的值被发送到本次调用相关的寄送数据的行动处理器中. 最常用的一种情况是实现一个实况查找: <label for="searchtext">Live Search:</label><%= text_field_tag :searchtext %><%= observe_field(:se

Rails系统中的AJAX开发技术简析(1)

ajax|rails 一. Ajax的简短历史 在短短几个月内,Ajax从一种十分模糊稀罕的技术一下变成最热门的东西.本文将介绍极其容易使用的Ajax支持-作为Ruby on Rails web应用程序框架的一部分实现.本文不是一个详细的教程,所以我假定你已经了解一点关于如何组织和构建一个Rails web应用程序的知识. 最开始出现的是万维网.比较于桌面应用程序,web应用程序相当缓慢和沉闷.无论如何,人们都喜欢上了web应用程序,因为他们无论在什么地方都能上网,只要身边的计算机上安装一个浏览

RAID卡技术简析

 经过一段时间的折腾,工作的事终于解决了,新工作一上来的第一件事就要熟悉RAID卡存储机制,先简单了解下RAID卡吧.     提到RAID卡就不得不提什么是RAID,RAID是英文Redundant Array of Independent Disks的缩写,翻译成中文即为独立磁盘冗余阵列,或简称磁盘阵列.简单的说,RAID是一种把多块独立的硬盘(物理硬盘)按不同方式组合起来形成一个硬盘组(逻辑硬盘),从而提供比单个硬盘更高的存储性能和提供数据冗余的技术.组成磁盘阵列的不同方式成为RAID级别

java匿名内部类实例简析_java

匿名类是不能有名称的类,所以没办法引用它们.必须在创建时,作为new语句的一部分来声明它们.这就要采用另一种形式的new语句,如下所示: new <类或接口> <类的主体> 这种形式的new语句声明一个新的匿名类,它对一个给定的类进行扩展,或者实现一个给定的接口.它还创建那个类的一个新实例,并把它作为语句的结果而返回.要扩展的类和要实现的接口是new语句的操作数,后跟匿名类的主体.如果匿名类对另一个类进行扩展,它的主体可以访问类的成员.覆盖它的方法等等,这和其他任何标准的类都是一样