无法让JApplet播放音乐mp3文件

时间:2013-05-14 05:45:16

标签: java applet japplet audio

我正在尝试在JApplet上播放音乐。

小程序本身工作正常,但我听不到任何音乐。

我想知道它是否必须以文件为mp3。

    //AnimationDemo1.java

import java.awt.*;
import javax.swing.*;
import java.net.*;
import java.applet.*;


public class Developers extends JApplet
{
    private AudioClip backgroundmusic;



    public void init()
    {   
        URL urlformusic = getClass().getResource("audio/song1.mp3");
        backgroundmusic = Applet.newAudioClip(urlformusic);
        backgroundmusic.loop();
        add(new DevelopersPanel());
    }
    public void start() {
        backgroundmusic.loop();
    }
    public void stop(){
        backgroundmusic.stop();
        }
    public void destroy() {
        backgroundmusic.stop();
        }
}// end of class of extended JApplet

class DevelopersPanel extends JPanel
{       


    private int numImages = 3;
    private ImageIcon[] loop = new ImageIcon[numImages];
    private String[] description = new String[3];
    private int currentImage = 0;


    public DevelopersPanel()
    {
        description[0] = "Charlie Brown works at Charleston Restraunt" +
            "as a Shift Leader, Server, and Classroom Trainer.";
        description[1] = "Snoopy, well he just does his own thing.";
        description[2] = "Lucy helped keep everyone working on the project sane.";
        for(int x = 0;x<loop.length;x++)
        {
            URL url = this.getClass().getResource("image/pic" + x + ".jpg");
            loop[x] = new ImageIcon(url);
        }

    } //end of constructor

    public void paintComponent(Graphics g)
    {
        super.paintComponent(g);
        Dimension d = getSize();

        g.drawImage(loop[currentImage].getImage(), 10, 10,d.width/2, d.height/2, this);
        g.drawString(description[currentImage],d.width-d.width+20, d.height-20);
        currentImage = (currentImage + 1) % numImages;

        try{
            Thread.sleep(3000);
        }
        catch(InterruptedException e){
        }
        repaint();

    }

} //end of extended JPanel class

非常感谢任何帮助。

我还是java新手,请保持简单。

2 个答案:

答案 0 :(得分:1)

  

我想知道它是否必须以文件为mp3。

是的,确实如此。 Java标准支持非常有限的格式。

要播放MP3,我通常会使用Java Sound并在运行时类路径中添加MP3服务提供程序接口。有关详细信息,请参阅Java Sound info. page

答案 1 :(得分:0)

有一个小而且非常容易使用的java库。 它提供了一个支持mp3,MIDI,wav的声音播放器...... 它支持播放单个文件,文件夹和m3u列表。 该播放器还具有循环和随机播放等功能,以及其他有用的功能。 您可以从以下位置获取所有源代码和api文档: http://imr-lib.blogspot.com

相关问题