2010-06-01 73 views
1

我有一首歌说大约5.1 MB,我想计算在播放媒体播放器之前歌曲的总持续时间文件格式是波形文件。我怎样才能找到它的大小歌曲的大致时间

+2

哪种格式? MP3? OGG? WAV?以及如果压缩是什么比特率? – oedo 2010-06-01 08:07:40

+0

对oedo的评论+1,我们需要知道更多。音乐文件的大小是许多因素(比如比特率)的最终结果,而不仅仅是音轨的长度。 – GlenCrawford 2010-06-01 08:09:16

+0

波形格式plz建议 – angelina 2010-06-01 08:09:54

回答

1

这是不可能根据大小。例如,平均每分钟MP3大概为1微克,但如果它已经以320比特的全码率进行编码,则可能会比这更大。你最好的选择是告诉你的脚本音乐文件的大小和持续时间。

+0

我的问题是,我只有一个特定的歌曲大小可用。我想要总持续时间可能是它可以大致位.please建议 – angelina 2010-06-01 08:12:57

+0

您可以(大致)将持续时间除以10为一个WAV,并使用文件大小为mp3的持续时间。即wavTime = fileSize/10; – Fenton 2010-06-02 06:45:52

1

你可以试试这个页面:http://www.sounddevices.com/calculator/

用于压缩的WAV - 16位,44.1kHz的,音响,你看172.2 KB /秒,所以各地的10.332 MB /秒。所以你的文件是大约0.5分钟

2

您需要的歌曲,以了解它的长度解码:

URL url = new URL("foo.wav"); 
    Clip clip = AudioSystem.getClip(); 
    AudioInputStream ais = AudioSystem.getAudioInputStream(url); 
    clip.open(ais); 
    System.out.println(clip.getMicrosecondLength()); 
+0

你好塞缪尔, 我用这个代码,并得到以下异常。 javax.sound.sampled.LineUnavailableException:格式为ULAW 8000.0 Hz,8位,单声道,1字节/帧,不支持的行。 请解析 – angelina 2010-06-01 10:05:01

+0

抛出异常在哪里? – 2010-06-01 10:28:29

相关问题