小程序(15兆字节)太大而无法加载?

时间:2011-10-19 21:57:16

标签: java swing audio applet

我想知道15兆是否是非常重的小程序加载?
我的主要问题是两个声音文件(.Au),其重量约为9兆字节 有人建议如何使用mp3或者其他减肥的想法? 感谢

相关代码:

   public class DJ 
    {

        private ArrayList<Clip> m_Records = new ArrayList<Clip>();
        private int m_CurrentRecored = 0;
        private Thread m_MusicThread = null;
        private AppletContext m_AppletContext;
        //java.net.URL m_CodeBase;
        //AppletContext ac;

        public DJ() 
        {
            try 
            {
                createClip(getClass().getResourceAsStream("/Music/train.mp3"));
                createClip(getClass().getResourceAsStream("/Music/machine.mp3"));
            }
            catch (Exception ex)
            {
                Logger.getLogger(DJ.class.getName()).log(Level.SEVERE, null, ex);
            }

        }

        private void createClip(java.io.InputStream i_SoundFileStream) throws Exception
        {

            InputStream i = new AudioStream(i_SoundFileStream);

            AudioInputStream sound = AudioSystem.getAudioInputStream(i);
            // load the sound into memory (a Clip)
            DataLine.Info info = new DataLine.Info(Clip.class, sound.getFormat());
            Clip clip = (Clip) AudioSystem.getLine(info);
            clip.open(sound);
            m_Records.add(clip);
        }

3 个答案:

答案 0 :(得分:5)

  

任何人都有建议如何使用mp3而不是..

将JMF的mp3plugin.jar添加到a​​pplet的运行时类路径(在archive元素中),Java Sound将能够打开MP3,就像它们是wav或au一样。< / p>

MP3插件将无法解析一些更现代的MP3,这些MP3会处理非标准的内容,例如MP3中的封面艺术,但是使用标准MP3格式对它们进行编码,它会处理它们。


  

..你是什么意思将mp3plugin.jar添加到applet的运行时类路径中(在archive元素中)?

<HTML> 
<BODY> 
<APPLET 
    archive="MyGame.jar,mp3plugin.jar" 
    code="GUI.JPanelGameApplet" 
    width=800 
    height=580>
</APPLET> 
</P> 
</BODY> 
</HTML>

请注意,我还将Archive更改为archive(只是为了保持一致)和

code="GUI/JPanelGameApplet.class"

(通常容忍,但不正确)

code="GUI.JPanelGameApplet" 

(假设applet位于GUI包中)。如果GUI包中的小程序,则该元素应以不同方式编写。


  

我已经以exe格式下载了MP3插件..

忽略EXE链接并下载Zip!

  

..我安装了它“

不要费心去运行/安装EXE(对于Mac或Unix / Linux上的最终用户,EXE是没用的)。只需展开Zip并将Jar添加到运行时类路径

  

我肯定会在HTML中进行代码更改..

这将是'问题解决'(对于嵌入式applet)。

答案 1 :(得分:4)

您可以使用JLayer来使用mp3。

降低小程序大小的一个选项是单独加载音频或将其流式传输,这样您就可以在获取音乐时至少有一个加载栏/图像。

答案 2 :(得分:1)

查看任何download time calculator - 在非常好的路线上超过一分钟。听起来非常沉重。