美文网首页
js获取视频文件时长和文件大小

js获取视频文件时长和文件大小

作者: 前端蜗牛老师 | 来源:发表于2019-04-01 10:38 被阅读0次
<input class="layui-btn layui-btn-primary" type="file" accept="video/*" id="uploadVideo" onchange="changeFile(this)">
<video controls="controls" id="showVideo" style="display: none;" oncanplaythrough="myFunction(this)">

  function changeFile(ele){
        var video = ele.files[0];
        var url = URL.createObjectURL(video);
        $("#showVideo").css('display','block').attr('src', url); //获取文件本地路径 预览视频
        var a = video.size / Math.pow(1024,2)
        var size = Math.floor(a * 10) / 10 + "MB" // 字节转化为MB
        $('#mediaSize').val(size) // 显示文件大小
    }

 function myFunction(ele) { // 获取文件时长
        var timeArr = formatSeconds(ele.duration) // formatSeconds格式化时间
        $("#minuteTime").val(timeArr[0])  
        $("#secondTime").val(timeArr[1])
    }

  function formatSeconds(value) {
        var secondTime = parseInt(value);// 秒
        var minuteTime = 0;// 分
        var hourTime = 0;// 小时
        if(secondTime > 60) {//如果秒数大于60,将秒数转换成整数
            //获取分钟,除以60取整数,得到整数分钟
            minuteTime = parseInt(secondTime / 60);
            //获取秒数,秒数取佘,得到整数秒数
            secondTime = parseInt(secondTime % 60);
            //如果分钟大于60,将分钟转换成小时
            if(minuteTime > 60) {
                //获取小时,获取分钟除以60,得到整数小时
                hourTime = parseInt(minuteTime / 60);
                //获取小时后取佘的分,获取分钟除以60取佘的分
                minuteTime = parseInt(minuteTime % 60);
            }
        }
        if(minuteTime > 0) {
            return [parseInt(minuteTime), parseInt(secondTime)];
        }
        if(hourTime > 0) {
            return [parseInt(hourTime), parseInt(minuteTime), parseInt(secondTime)];
        }
        return [parseInt(secondTime)];
    }
</video>


相关文章

网友评论

      本文标题:js获取视频文件时长和文件大小

      本文链接:https://www.haomeiwen.com/subject/eoumbqtx.html