业务需求:前端提供URL,后端需要在不下载音频的情况下计算出音频的长度,并向上取整
解决方法:通过URL和AudioInputStream来获得音频流,分析头并计算

	URL audioURL = new URL(getSpeechRequest.getAudioUrl());
	audioInputStream = AudioSystem.getAudioInputStream(audioURL);
	
	AudioFormat format = audioInputStream.getFormat();
	long frames = audioInputStream.getFrameLength();
	long durationInSeconds = (long) Math.ceil((frames+0.0) / format.getFrameRate()); //向上取整,比如0.1算1

参考资料:https://stackoverflow.com/questions/51836347/getting-an-audio-duration-from-an-url-in-java

Logo

魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。

更多推荐