关于java播放wav格式音乐问题及代码解释
修改成wav格式的音乐:使用酷狗的转换格式;(java 可以使用的格式之一)
播放音乐的源代码:
第一个
package com.button.One;
import sun.audio.;
import java.io.;
import java.applet.;
import java.net.;
import java.io.File;
import java.io.FileInputStream;
import java.io.IOException;
import java.io.InputStream;
import sun.audio.AudioPlayer;
public class MusicTest {
private InputStream inputStream = null;
private String file = "F:\\Beyond.wav";public MusicTest() {
}public void play() throws IOException {inputStream = new FileInputStream(new File(file));AudioPlayer.player.start(inputStream);
}public static void main(String[] args) {try {new MusicTest().play();} catch (IOException e) {e.printStackTrace();}}
}
?
第二个
package?org.bling.music;?
import?java.io.File;?
import?java.io.IOException;?
import?javax.sound.sampled.AudioFormat;?
import?javax.sound.sampled.AudioInputStream;?
import?javax.sound.sampled.AudioSystem;?
import?javax.sound.sampled.DataLine;?
import?javax.sound.sampled.LineUnavailableException;?
import?javax.sound.sampled.SourceDataLine;?
import?javax.sound.sampled.UnsupportedAudioFileException;?
public?class?MusicTest?{?
private?AudioFormat?audioFormat?=?null;?
private?SourceDataLine?sourceDataLine?=?null;?
private?DataLine.Info?dataLine_info?=?null;?
private?String?file?=?"./intel.wav";?
private?AudioInputStream?audioInputStream?=?null;?
public?MusicTest()?throws?LineUnavailableException,?UnsupportedAudioFileException,?IOException{?
audioInputStream?=?AudioSystem.getAudioInputStream(new?File(file));?
audioFormat?=?audioInputStream.getFormat();?
dataLine_info?=?new?DataLine.Info(SourceDataLine.class,audioFormat);?
sourceDataLine?=?(SourceDataLine)AudioSystem.getLine(dataLine_info);?
}?
public?void?play()?throws?IOException,?LineUnavailableException{?
byte[]?b?=?new?byte[1024];?
int?len?=?0;?
sourceDataLine.open(audioFormat,?1024);?
sourceDataLine.start();?
while?((len?=?audioInputStream.read(b))?>?0){?
sourceDataLine.write(b,?0,?len);?
}?
audioInputStream.close();?
sourceDataLine.drain();?
sourceDataLine.close();?
}?
public?static?void?main(String[]?args)?{?
try?{?
new?MusicTest().play();?
}?catch?(IOException?e)?{?
e.printStackTrace();?
}?catch?(LineUnavailableException?e)?{?
e.printStackTrace();?
}?catch?(UnsupportedAudioFileException?e)?{?
e.printStackTrace();?
}?
}?
}?
第三个
?
package?org.bling.music;?
import?java.io.File;?
import?javax.sound.sampled.AudioFormat;?
import?javax.sound.sampled.AudioInputStream;?
import?javax.sound.sampled.AudioSystem;?
import?javax.sound.sampled.DataLine;?
import?javax.sound.sampled.SourceDataLine;?
public?class?PlayTest?{?
/**?
*?@param?args?
*/?
public?static?void?main(String[]?args)?{?
try?{?
AudioInputStream?ais?=?AudioSystem.getAudioInputStream(new?File(“intel.wav”));//?获得音频输入流?
AudioFormat?baseFormat?=?ais.getFormat();//?指定声音流中特定数据安排?
System.out.println(“baseFormat=”+baseFormat);?
DataLine.Info?info?=?new?DataLine.Info(SourceDataLine.class,baseFormat);?
System.out.println(“info=”+info);?
SourceDataLine?line?=?(SourceDataLine)?AudioSystem.getLine(info);?
//?从混频器获得源数据行?
System.out.println(“line=”+line);?
line.open(baseFormat);//?打开具有指定格式的行,这样可使行获得所有所需的系统资源并变得可操作。?
line.start();//?允许数据行执行数据?I/O?
int?BUFFER_SIZE?=?4000?*?4;?
int?intBytes?=?0;?
byte[]?audioData?=?new?byte[BUFFER_SIZE];?
while?(intBytes?!=?-1)?{?
intBytes?=?ais.read(audioData,?0,?BUFFER_SIZE);//?从音频流读取指定的最大数量的数据字节,并将其放入给定的字节数组中。?
if?(intBytes?>=?0)?{?
int?outBytes?=?line.write(audioData,?0,?intBytes);//?通过此源数据行将音频数据写入混频器。?
}?
}?
}?catch?(Exception?e)?{?
}?
}?
}?
此时 为完成 软件工程课设
实现第一个
其余两个没有去运行
关于java播放wav格式音乐问题及代码解释相关推荐
- Qt ——QSound播放wav格式音乐
在使用Qt Create制作软件的时候,经常需要软件报警,这时候使用wav格式音乐就是一个很好的方法. 1. 修改pro文件 在文件中添加 QT += multimedia 2. 添加头文件声明 #i ...
- stm32 pwm播放wav格式音乐移植遇到的问题
前言 初识pwm的时候就想做音乐播放器,奈何51单片机速度慢,现在入手stm32,可玩性一下提高了很多,重拾当年挖的坑.既然要造轮子,那肯定先看看大牛是怎么做的.传送门:https://github. ...
- stm32的timer-trgo + DMA + DAC 播放WAV格式音乐
1.考虑到stm32F103的flash大小有限,所以音频数据存在spi-flash中,WAV文件有6段语音.合成在一起大概有1.3M(客户给的文件).所以用Audition软件把WAV文件转换成8k ...
- 【MM32F5270开发板试用】播放TF卡WAV格式音乐,I2S驱动CS4344
[MM32F5270开发板试用]播放TF卡WAV格式音乐,I2S驱动CS4344 上四篇文章: [MM32F5270开发板试用]一.依靠SPI_SD,移植FatFs文件系统 [MM32F5270开发板 ...
- 基于Python/Tkinter的wav格式音乐播放器
好久没写文章了,最近因为工作繁忙的缘故,将博文发表的进度落下来了,今天周末便从之前的写的小项目中搜寻了个WAV格式的音乐播放器(本来想将德州扑克的代码贴出来,但德州扑克的算法有些问题,汗&^- ...
- html中怎么写播放音乐格式,HTML+CSS入门 如何实现多浏览器播放wav格式的音频文件...
本篇教程介绍了HTML+CSS入门 如何实现多浏览器播放wav格式的音频文件,希望阅读本篇文章以后大家有所收获,帮助大家HTML+CSS入门. < 使用audioplayer.js 基本上能支持 ...
- Android 录音机小米商业项目开源代码 AudioRecord录音暂停 播放 Wav格式(音频二)
Android MediaRecorder录音录像 暂停 继续录音 播放 ARM格式(音频一) https://blog.csdn.net/WHB20081815/article/details/88 ...
- UE4大数据可视化教程(10)——设置背景音乐和播放MP3格式音乐
目录 设置背景音乐 播放MP3格式音乐 设置背景音乐 将wav格式音乐拖入UE4,然后新建一个Sound_Cue,拖入场景 打开Sound_Cue,连接wav格式音乐,勾上循环
- windows播放wav声音文件--java播放wav完整demo
有个新的需求,要java的windows应用发声音,原本说的只是使用蜂鸣器发声音,直接上代码: public static void main(String[] args) {Toolkit tool ...
最新文章
- c语言class运行错误,win32 C RegisterClass失败,该如何处理
- android listview 横向滚动,Android支持水平滚动的ListView控件
- linux php版本升级_玩转Linux,介绍一个强大的Linux服务器管理面板,比宝塔更强...
- SAP Fiori Elements - how to set breakpoint to get converted xml view parsed by f
- 将Visual Studio Code设置为jshell中的默认编辑器
- centos yum安装_centos7上yum安装碰到的坑
- 统一操作系统 UOS 龙芯版上线
- 《WINDOWS黑客编程技术详解》勘误收集及软件下载
- 你绝没看如此详细的PDF去水印教程
- C语言|temp=a,a=b,b=temp;|同行语句可以用逗号隔开
- windows gitbub使用
- JavaScript中ubound函数
- 小米红米手机无电池24H开机完美解决方案
- Crash:reportSizeConfigurations ActivityRecord not found for Token xxx
- 简单入门排序算法(直接插入排序,折半插入排序,希尔排序,冒泡排序,堆排序,归并排序)
- 线上服务器突然崩了!?Jenkins 服务器中挖坑病毒解决方案
- 推荐几个无需注册免费的PPT模板下载网站
- win10的c语言程序闪退,win10 1909系统出现应用闪退如何解决
- PyQt5——显示图片
- 前端进阶之路——域名(domain)
热门文章
- 等一等!看一看!缓一缓!
- Arduino安装esp32 SDK(Windows)问题:AzureIoT: no headers files解决
- Python 爬取网易云音乐所有评论
- [游戏学习28] MFC 时钟
- 虚拟机网络连通性选择
- 2022年危险化学品生产单位安全生产管理人员考试内容及危险化学品生产单位安全生产管理人员证考试
- LintCode 653: Expression Add Operators
- 保健品不是药为什么能“治病”?
- 单片机电子时钟源代码
- java sql 日期_java.sql.Date