iis服务器助手广告广告
返回顶部
首页 > 资讯 > 精选 >JAVA的声音处理方法是什么
  • 844
分享到

JAVA的声音处理方法是什么

2023-06-03 05:06:30 844人浏览 泡泡鱼
摘要

这篇文章主要介绍“JAVA的声音处理方法是什么”,在日常操作中,相信很多人在JAVA的声音处理方法是什么问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”JAVA的声音处理方法是什么”的疑惑有所帮助!接下来,请跟

这篇文章主要介绍“JAVA的声音处理方法是什么”,在日常操作中,相信很多人在JAVA的声音处理方法是什么问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”JAVA的声音处理方法是什么”的疑惑有所帮助!接下来,请跟着小编一起来学习吧!

数字音频格式有很多种,其质量与采样频率和采样精度两个参数有关。频率的表示单位为赫兹〔Hz〕,它表示每秒采样次数。采样频率越高,音质就越好。采样精度为每次采样所存储的数据数量,它决定每个数字信号所能够表示的离散振幅的数量。存储每个样本的数据越多,音质就越好。但是高品质的声音需要占用大量的内存和磁盘空间。考虑到网络带宽,在Internet连接上传输就需要花费很长的时间。对于Applet来说,保证声音文件的最小化是极为重要的。

Java能够支持以下四种声音格式:

◆AU
aiFF
◆WAVE
◆MIDI

  第一种声音格式AU为以前的Java 1.1版本支持的唯一的声音格式。采样频率为8000赫兹,采样精度为8位。AIFF和WAVE与AU格式一样,都用来表示数字化的声音。其中,WAVE格式提供了更宽范围的音质。MIDI格式专用于音乐,并且以音符与乐器而不是数字化的声音来描述声音的。

  关于声音的创建:声音关键工具windows9X中的标准应用程序?录音机。录制的格式为WAVE。另外还有很多专业水准的应用程序,采样和编辑数字化的声音,及格式的转换。


资源需求:

■ 硬件资源需求:
⑴声卡
⑵音箱
#如需要录制声音,这还需麦克风。

■ 软件资源需求:
⑴windows9X操作系统
⑵网络浏览器
⑶Java插件/运行时间环境


处理方案一

  JAVA2开始,爪哇语言能够支持上述四种声音格式。简单的方法为在java中通过Applet类的Audioclip()接口来装载声音。该接口风钻了有关声音片断的常用方法,具有对播放声音片断的最小支持。

该接口定义了如下方法:
■ play()
语法:void play()
功能:开始播放声音片断。
不论声音片断是否已经在播放,都从头播放。播放一遍但不重复。

■ loop()
语法:void loop()
功能:循环播放声音片断。
调用该方法是不论声音片断是否已在播放,都从头开始播放。

■ stop()
语法:void stop()
功能:停止播放声音片断。
AudioClip接口可以通过getAudioClip()及getCodeBase()方法来获取声音片断及
URL地址。可以利用此方法在WEB页中播放指定的声音片断。
#需求:基于jdk1.2以上版本的开发环境。如果只播放AU格式的声音文件,JDK1
.1就可。

附:soundtest.html源代码
《HTML》
《HEAD》
《TITLE》
HTML Test Page
《/TITLE》
《/HEAD》
《BODY》
《APPLET
CODEBASE = "" CODE = "test.class" NAME = "TestApplet" WID
TH = 400 HEIGHT = 200 HSPACE = 0 VSPACE = 0 ALIGN = mi
ddle》
《PARAM NAME = "clip" VALUE = "sound.AU"》
《/APPLET》
《/BODY》
《/HTML》
附:test,java源代码
package SoundTest;
import java.awt.*;
import java.awt.event.*;
import java.applet.*;
import javax.swing.*;
import java.net.*;
public class test extends JApplet {
boolean isStandalone = false;
String sound;
JButton jButtonPlay = new JButton();
JButton jButtonLoop = new JButton();
JButton jButtonStop = new JButton();
JLabel jLabel1 = new JLabel();
AudioClip clip;
//Get a parameter value
public String getParameter(String key, String def) {
return isStandalone ? System.getProperty(key, def) :
(getParameter(key) != null ? getParameter(key) : def);
}
//Construct the applet
public test() {
}
//Initialize the applet
public void init() {
try {
jbInit();
}
catch(Exception e) {
e.printStackTrace();
}
}
//Component initialization
private void jbInit() throws Exception {
jButtonPlay.setText("Play");
jButtonPlay.setBounds(new Rectangle(50, 85, 80, 40));
jButtonPlay.addMouseListener(new java.awt.event.MouseAdapter() {
public void mouseClicked(MouseEvent e) {
jButtonPlay_mouseClicked(e);
}
});
this.setSize(new Dimension(400,200));
this.getContentPane().setLayout(null);
jButtonLoop.setText("Loop");
jButtonLoop.setBounds(new Rectangle(150, 85, 80, 40));
jButtonLoop.addMouseListener(new java.awt.event.MouseAdapter() {
public void mouseClicked(MouseEvent e) {
jButtonLoop_mouseClicked(e);
}
});
jButtonStop.setText("Stop");
jButtonStop.setBounds(new Rectangle(250, 85, 80, 40));
jButtonStop.addMouseListener(new java.awt.event.MouseAdapter() {

public void mouseClicked(MouseEvent e) {
jButtonStop_mouseClicked(e);
}
});
jLabel1.setText("Sound Test Demo");
jLabel1.setBounds(new Rectangle(109, 28, 186, 28));
this.getContentPane().add(jButtonPlay, null);
this.getContentPane().add(jButtonStop, null);
this.getContentPane().add(jButtonLoop, null);
this.getContentPane().add(jLabel1, null);
try { sound = this.getParameter("clip", "sound.AU"); } catch (Exce
ption e) { e.printStackTrace(); }
if(sound!=null){
try{
clip=JApplet.newAudioClip (new URL(getCodeBase(),sound));

}
catch(MalfORMedURLException e){
System.out.println ("Bad URL");
}
}
}
//Get Applet information
public String getAppletInfo() {
return "Applet Information";
}
//Get parameter info
public String[][] getParameterInfo() {
String[][] pinfo =
{
{"clip", "String", "sound.AU"},
};
return pinfo;
}
void jButtonPlay_mouseClicked(MouseEvent e) {
clip.play();
}
void jButtonLoop_mouseClicked(MouseEvent e) {
clip.loop();
}
void jButtonStop_mouseClicked(MouseEvent e) {
clip.stop();
}
}


处理方案二

  利用JAVA媒体框架中的Sound api来处理声音片断。Sound API 被包含在SUN公司的JAVA媒体框架中,也包含在JDK1.3版本中。编译源代码需要支持JDK1.3的开发环境和运行时间环境。

  可以利用Sound API在网页中加入Applet的方式达到要求。但浏览器需要通过Java插件或运行时间环境的支持。

Sound API主要包括以下四部分:

Packages
javax.sound.midi 提供MIDI (Musical Instrument Digital Interface)的I/O、
序列、合成的接口和类。
javax.sound.midi.spi Supplies interfaces for service providers to impl
ement when offering new MIDI devices, MIDI file readers and writers, o
r sound bank readers.
javax.sound.sampled 为采样数字音频的捕获、处理、重放提供接口和类。
javax.sound.sampled.spi Supplies abstract classes for service provider
s to subclass when offering new audio devices, sound file readers and
writers, or audio format converters.



处理方案三

  利用JAVA 3D中的sound类。该类似声音资源的抽象定义。每一个具体的声音对象都可以应用sound的方法。

Sound类的类关系如下:
java.lang.Object
+-javax.media.j3d.SceneGraphObject
+-javax.media.j3d.node
+-javax.media.j3d.Leaf
+-javax.media.j3d.Sound

sound类的子类有:
⒈BackgroundSound
⒉PointSound
⒊ConeSound

使用上述三种声音的步骤如下:

⒈定义并生成一个MediaContainer对象,同时提供对象所需要的声音文件,通常
要单独设置一个存放AU/WAV声音文件的目录。

⒉定义一个BackgroundSound/ PointSound/ ConeSound对象,根据需要,设置声
音的是否循环、强度大小等参数,设置它的作用范围并setEnable用使其开始作用。

⒊根据具体的对象设置坐标系。
#JAVA 3D应用程序只能播放au/wav格式的声音文件。不能播放midi文件

到此,关于“JAVA的声音处理方法是什么”的学习就结束了,希望能够解决大家的疑惑。理论与实践的搭配能更好的帮助大家学习,快去试试吧!若想继续学习更多相关知识,请继续关注编程网网站,小编会继续努力为大家带来更多实用的文章!

--结束END--

本文标题: JAVA的声音处理方法是什么

本文链接: https://www.lsjlt.com/news/233152.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • JAVA的声音处理方法是什么
    这篇文章主要介绍“JAVA的声音处理方法是什么”,在日常操作中,相信很多人在JAVA的声音处理方法是什么问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”JAVA的声音处理方法是什么”的疑惑有所帮助!接下来,请跟...
    99+
    2023-06-03
  • java声明json的方法是什么
    在Java中声明JSON的方法有以下两种:1. 使用第三方库(如Gson、Jackson等):需要先引入对应的库文件,然后使用相应的...
    99+
    2023-05-13
    java声明json java json
  • 云服务器调出声音的方法是什么
    云服务器本身并不具备声音输出的能力,因为它们是远程计算资源,没有物理音频设备。然而,你可以通过以下方法在云服务器中实现声音输出:1....
    99+
    2023-09-16
    云服务器
  • java中collection声明的方法是什么
    在Java中,Collection是一个接口,声明了一些常用的方法,包括: 添加和删除元素的方法: boolean add(E...
    99+
    2023-10-26
    java collection
  • win10插耳机一边有声音的处理方法
    这篇文章给大家分享的是有关win10插耳机一边有声音的处理方法的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。处理办法如下:耳机本身的问题,建议更换耳机测试一下是不是耳机线路问题。如果耳机线路没问题的话那就是电脑声...
    99+
    2023-06-10
  • Java异常处理的的方法是什么
    本篇内容主要讲解“Java异常处理的的方法是什么”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“Java异常处理的的方法是什么”吧!1) 为可恢复的错误使用检查型异常,为编程错误使用非检查型错误。...
    99+
    2023-06-16
  • Java归一化处理的方法是什么
    在Java中,可以使用以下方法进行归一化处理:1. 最小-最大归一化(Min-Max Normalization):将数据缩放到指定...
    99+
    2023-10-20
    Java
  • java接口有效的声明方法是什么
    在Java中,接口的有效声明方法是使用`interface`关键字定义接口,并在接口中声明方法,方法没有具体的实现。以下是一个有效的...
    99+
    2023-10-10
    java
  • java项目异常处理的方法是什么
    在Java项目中,有多种方法可以处理异常,包括:1. try-catch块:使用try-catch块可以捕获并处理异常。在try块中...
    99+
    2023-09-16
    java
  • java并发处理数据的方法是什么
    Java中处理并发数据的方法有以下几种:1. 使用synchronized关键字:synchronized关键字可以用于方法或代码块...
    99+
    2023-10-11
    java
  • Java内存溢出的处理方法是什么
    这篇文章主要介绍“Java内存溢出的处理方法是什么”,在日常操作中,相信很多人在Java内存溢出的处理方法是什么问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”Java内存溢出的处理方法是什么”的疑惑有所帮助!...
    99+
    2023-07-04
  • java异步处理任务的方法是什么
    在Java中,有以下几种方法可以实现异步处理任务:1. 使用Thread类:可以通过创建一个新的Thread对象,并在其内部实现异步...
    99+
    2023-09-16
    java
  • 云服务器开启声音的办法是什么
    如果您想启用云服务器的默认响铃声,您可以按照以下步骤操作: 按照以下步骤,打开控制面板,点击声音和音频设备。 点击“音量”按钮,再点击“调整音量”按钮,选择您希望使用的设置。 如果您想更改云服务器的默认铃声,请在声音和音频设备上的菜单栏...
    99+
    2023-10-26
    声音 办法 服务器
  • java数组声明并赋值的方法是什么
    Java数组声明并赋值的方法有多种,以下是其中几种常见的方法: 使用数组初始化器(Array Initializer): int...
    99+
    2024-02-29
    java
  • windows7没声音一开机就没声音的解决方法
    问题:我不知道咋回事,一开机就没声音。大家看看怎么回事能都解决。 回答: 1、检查声卡、连接线,以及音箱等设备是否连接正常;运行杀毒软件进行杀毒; 2、右击“我的电脑”----“属性&...
    99+
    2023-06-10
    windows7 没声音 解决 声音 方法
  • win10后没有声音怎么处理
    重做系统非常方便。例如,应用u盘可以重新安装计算机系统。实际操作也非常方便。然而,许多人在重做系统后遇到了许多问题。最常见的是没有声音。如果笔记本重新安装系统软件win10后没有声音怎么办?接下来,小编将向您介绍10后笔记本重新安装系统软件...
    99+
    2023-07-16
  • openSUSE 无声音问题的解决办法是什么呢
    这篇文章给大家介绍openSUSE 无声音问题的解决办法是什么呢,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。音箱也是外插的话,和你系统没有关系了. 如果你的笔记本本身内置的喇叭没声音,你要在声音那个Mix里面调节,如...
    99+
    2023-06-16
  • win7怎么录制电脑内部声音? 电脑录制声卡声音的方法
    通过控制面板对声卡的控制实现录制声卡的功能。  1、点击--【开始】--【控制面板】--【硬件和声音】--【管理音频设备】。 2、选择【录制】,在窗口空白处,点击右键,选中【显示已禁用的设备】,此时多出一...
    99+
    2023-06-13
    win7 声音卡 电脑 声音? 声音 声卡 方法
  • win11调声音的快捷键是什么
    今天小编给大家分享一下win11调声音的快捷键是什么的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。一、笔记本笔记本只要同时按...
    99+
    2023-07-02
  • java多线程批量处理的方法是什么
    Java中实现多线程批量处理的方法有以下几种:1. 使用线程池:通过创建线程池来管理一组线程,可以提交多个任务给线程池,线程池会自动...
    99+
    2023-08-18
    java
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作