首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Java如何在游戏中播放歌曲(应用程序,而不是Applet)

Java如何在游戏中播放歌曲(应用程序,而不是Applet)
EN

Stack Overflow用户
提问于 2010-09-24 09:12:04
回答 2查看 7.2K关注 0票数 1

最后编辑-两个简单的答案需要。

1)我能够让代码使用URL (这是下面一个响应中的代码)。但我的歌在wav文件里。当我尝试执行File url = new (“-”)时,它不起作用。

相反,在堆栈跟踪(谢谢您的提示!),它说

"Failed to allocate clip data: Requested buffer too large"

我想播放的歌曲是高科技的,大约3分钟长。

如何解决剪辑数据大小问题?

EN

回答 2

Stack Overflow用户

发布于 2010-09-24 09:23:29

看看用于采样声音的Java声音API的类。特别是剪辑接口和AudioSystem类。

Java使用SPI将对额外格式的支持添加到内置到J2SE的默认格式中。您可以添加基于JMF的mp3plugin.jar,以向JavaSound提供对MP3s的支持。

要在循环中播放WAV,请参见下面的小示例。

代码语言:javascript
复制
import java.net.URL;
import javax.sound.sampled.*;

public class LoopSound {

  public static void main(String[] args) throws Exception {
    URL url = new URL(
      "http://pscode.org/media/leftright.wav");
    Clip clip = AudioSystem.getClip();
    AudioInputStream ais = AudioSystem.
      getAudioInputStream( url );
    clip.open(ais);
    clip.loop(5);
    javax.swing.JOptionPane.showMessageDialog(null, "Close to exit!");
  }
} 
票数 2
EN

Stack Overflow用户

发布于 2012-03-16 21:48:10

查看本教程,它将展示如何实现您自己的读取提要播放循环,并避免内存错误:

http://codeidol.com/java/swing/Audio/Play-Non-Trivial-Audio/

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/3785652

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档