博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Java加入背景音乐
阅读量:6243 次
发布时间:2019-06-22

本文共 981 字,大约阅读时间需要 3 分钟。

    近期有几个师妹找我给她们的Java期末作业加入背景音乐,非常久不琢磨Java的我花费整晚才搞定,羞愧。在博客中记录下来。警示自己。也帮助一下大家。

    Java中能够通过AudioClip类来实现音乐播放。循环等操作。AudioClip支持的音乐格式有.wav、.mid、AIFF、AU、RMF,可是格式要求相当严格。

我用AudioClip播放我自己录的一段wav文件就没有声音。让我纠结了非常久。最后才发现我的wav文件内容没有写文件尾,对于格式要求严格的AudioClip而言是无法识别的(这个问题困扰了我整晚)。

    AudioCLip基本的方法有:play()播放依次声音;loop()循环播放音乐。stop()停止播放。

    做法一:

InputStream   is =null;   AudioStream   as = null ;   is  =   getClass().getResourceAsStream("a.wav");  try {as =   new   AudioStream(is);} catch (IOException e) {}  AudioPlayer.player.start(as);
    此方法将音乐文件放入流中在播放,仅限于Java Application。easy报错,空指针异常。或者是流异常,不推荐。

    做法二:

  String   music  = "a.wav";  
  AudioClip   clip   =   Applet.newAudioClip(getClass().getResource(music)); 

    次方法在Applet中执行没有问题。可是Application中getclass()会返回空指针,导致失败。

    推荐做法:

private URL url;

private AudioClip ac;

File f1 = new File("C:/3.wav");

   try {
    url= f1.toURL();
} catch (MalformedURLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
   ac= Applet.newAudioClip(cb1);
   ac.play();

    此方法没有限制,Java程序都支持。

转载地址:http://hosia.baihongyu.com/

你可能感兴趣的文章
Python批量删除指定目录下的指定类型的文件
查看>>
Java程序猿的JavaScript学习笔记(3——this/call/apply)
查看>>
Mac OS设置rootpassword
查看>>
FreeLink开源呼叫中心设计思想
查看>>
//6小时更新一次首页
查看>>
Android开发者应该深入学习的10个开源应用项目
查看>>
对《LINQ能不能用系列(一)数组筛选效率对比》中测试的几个问题
查看>>
SGU 275 To xor or not to xor
查看>>
Sharepoint学习笔记—ECMAScript对象模型系列-- 6、使用ECMA操作列表项对象(list item)...
查看>>
【转载】常用统计软件下载地址大全
查看>>
新的思想来源
查看>>
对于超大型SQL SERVER数据库执行DBCC操作
查看>>
Binary Tree Level Order Traversal II
查看>>
Python 点滴 I
查看>>
Java泛型详解
查看>>
分治算法思想介绍
查看>>
1 张图秒懂 Nova 16 种操作 - 每天5分钟玩转 OpenStack(44)
查看>>
MVP模式在Android项目中的使用
查看>>
一起同过窗
查看>>
XMLHttpRequest详解
查看>>