java 获取音频文件时长】的更多相关文章

需要导入jar包:jave 1.0.2 jar 如果是maven项目,在pom.xml文件中添加: <dependency> <groupId>it.sauronsoftware</groupId> <artifactId>jave</artifactId> <version>1.0.2</version> </dependency> 具体代买如下: /** * 音频文件获取文件时长 * @param sour…
前言: 上传音频文件,自动写入此音频文件的时长,这里用 COM组件Microsoft Shell Controls And Automation来实现. 首先 1.引用:Microsoft Shell Controls And Automation 注意:这里是1.0版本的,有的使用的是1.2版本的,如果1.0的有问题,请换成1.2的 2.代码如下 string strFileName = FileHelper.MapPath(linkUrl);//linkUrl是上传到服务器的路径 strin…
1.在项目中添加引入:COM组件的Microsoft Shell Controls And Automation 2.在引用中找到Shell32,点击右键,在属性中将“嵌入互操作类型”的值改为“false” 3.代码 public static string GetVoiceTime(string voicePath)//voicePath为语音文件路径 { string path = HttpContext.Current.Server.MapPath(voicePath);//将虚拟路径转换…
方法一: 在项目开发过程中,需要获取音视频文件时长.查询资料后发现 JAVE能够完美得到想要的结果,JAVE项目简介如下: The JAVE (Java Audio Video Encoder) library is Java wrapper on the ffmpeg project. Developers can take take advantage of JAVE to transcode audio and video files from a format to another. I…
最近有一个用java获取mp3播放时长的需求,有两种,一种本地文件,一种网络文件,其中获取网络mp3播放时间的方法找了挺久终于找到个能用的了. 第一种很简单,下载个jar包  jaudiotagger.jar File file = new File("C:\\music\\test2.mp3"); try { MP3File f = (MP3File)AudioFileIO.read(file); MP3AudioHeader audioHeader = (MP3AudioHeade…
最近的一个项目需要按照时间播放mp3文件,例如,播放10分钟的不同音乐. 这就意味着我得事先知道mp3文件的播放时长,以决定播放几遍这个文件. 方案一:Java的方式 找第三方的库,真的感谢这些提供jar包的高手,找到一个项目:jaudiotagger. try { MP3File file = new MP3File("E:\\music\\光辉岁月.mp3"); MP3AudioHeader audioHeader = (MP3AudioHeader)file.getAudioHe…
1.下载jar包:http://www.sauronsoftware.it/projects/jave/index.php 2.上代码 @RequestMapping(value = "amendFile.htm", produces = "application/json;charset=UTF-8") @ResponseBody public String amendFile(MultipartFile file, HttpServletRequest requ…
所需包为jaudiotagger-2.2.6-SNAPSHOT.jar和jl1.0.1.jar. import java.io.BufferedInputStream; import java.io.File; import java.io.FileInputStream; import org.jaudiotagger.audio.AudioFileIO; import org.jaudiotagger.audio.mp3.MP3AudioHeader; import org.jaudiota…
首先引用COM组件:Microsoft Shell Controls And Automation,需要引用1.2版本的,1.0的会出问题. 这里需要注意DLL的属性Embed Interop Type 即 嵌入互操作类型 设为False,否则会引起互操作类型异常. 代码: string strFileName = Server.MapPath("~/00125ca6293e6109161b6fa91d03473a.mp3"); string dirName = System.IO.P…
import subprocess import os import time def getTime(flvpath,fid): #file_str = '1.flv' file_str = flvpath wg = subprocess.Popen(['ffmpeg.exe', '-i', file_str], stdout=subprocess.PIPE, stderr=subprocess.STDOUT) (standardout, junk) = wg.communicate() an…