java

Java获取视频、音频文件播放时长

2020-04-10  本文已影响0人  超音速6

引入jar包

jave-1.0.2.jar

调用Js方法

getTime("视频文件服务器地址");
getTime("音频文件服务器地址");

Js代码

function getTime(url){
    $.ajax({
        url:'/admin/ajax/getVideoTime',
        type:'post',
        data:{"url": url},
        dataType:'json',
        success: function(result) {
            if(result.success) {
                $("#minutes").val(result.entity.minute);
                $("#seconds").val(result.entity.second);
            }else{
                $("#minutes").val(0);
                $("#seconds").val(0);
            }
        }
    })
}

Java代码

/**
 * 获取视频播放时长
 * @return
 */
@RequestMapping({"/ajax/getVideoTime","/ajax/getAudioTime"})
@ResponseBody
public Map<String,Object> getVideoTime(@RequestParam("url") String url){
    Map<String,Object> json = null;
    try{
        File file = new File(CommonConstants.filePath, url);
        Encoder encoder = new Encoder();
        MultimediaInfo info = encoder.getInfo(file);
        long ls = info.getDuration() / 1000;// ls是获取到的秒数
        logger.info("ls: {}", ls);
        Map<String, Object> data = new HashMap<>();
        data.put("minute", (ls / 60));
        data.put("second", (ls % 60));
        json = getJsonMap(true, null, data);
    }catch (Exception e){
        logger.error("getVideoTime",e);
        json = getJsonMap(false, null, null);
    }
    return json;
}
上一篇下一篇

猜你喜欢

热点阅读