码迷,mamicode.com
首页 > 编程语言 > 详细

java获取网络音频时长--不是很准

时间:2020-06-18 13:01:39      阅读:117      评论:0      收藏:0      [点我收藏+]

标签:ngx   bsp   rtti   class   layer   ndt   获取   test   import   

1 <dependency>
2             <groupId>com.badlogicgames.jlayer</groupId>
3             <artifactId>jlayer</artifactId>
4             <version>1.0.2-gdx</version>
5         </dependency>

 

import javazoom.jl.decoder.Bitstream;
import javazoom.jl.decoder.Header;

public static void main(String[] args) { try { long startTime=System.currentTimeMillis(); //获取开始时间 URL urlfile = new URL("http://resource.puxinwangxiao.com/b4ef18fe62948ab2528127c8c1357ddd.mp3"); //File file = new File("C:\\music\\test2.mp3"); //URL urlfile = file.toURI().toURL(); URLConnection con = urlfile.openConnection(); int b = con.getContentLength();// 得到音乐文件的总长度 BufferedInputStream bis = new BufferedInputStream(con.getInputStream()); Bitstream bt = new Bitstream(bis); Header h = bt.readFrame(); int time = (int) h.total_ms(b); System.out.println(time / 1000); long endTime1=System.currentTimeMillis(); //获取结束时间 System.out.println("所需时间: "+(endTime1-startTime)+"ms"); }catch (Exception e ){ System.out.println(e.getMessage()); } }

  

经测试,此方法耗时少,但计算的时长有偏差:

1439s 。计算出来是 1479s

490s。计算出来是491s

 

java获取网络音频时长--不是很准

标签:ngx   bsp   rtti   class   layer   ndt   获取   test   import   

原文地址:https://www.cnblogs.com/yangyanbo/p/13141076.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!