在输入视频文件时获取视频时长

12 浏览
0 Comments

在输入视频文件时获取视频时长

我正在使用HTML和Javascript做一个本地文件运行的项目。

我需要通过输入选择一个文件,获取其信息,然后决定是否将其添加到我的列表并进行播放。如果决定使用它,我将把它放入队列以便以后使用。否则,我将舍弃并选择另一个文件。

我面临的问题是,我无法找到一种在输入选择文件时获取视频时长的方法。

我搜索了很多,没有找到任何获取时长的方法。在下面的代码中,我尝试使用了'file.duration',但它没有起作用,只返回'undefined'。

这是我的输入框,正常如你所见。

   上传!(ღ˘⌣˘ღ) 
   

这是我用来获取所有信息的函数。

function setFileInfo(){
  showInfo(); //改变div内容
  var file = document.getElementById("fileUp").files[0];
  var pid =  1;
  var Pname = file.name;
  Pname = Pname.slice(0, Pname.indexOf(".")); //获取没有扩展名的文件名
  var Ptype = file.type;
  var Psize = bytesToSize(file.size); //转化为KB,MB等...
  var Pprior = setPriority(Ptype); //返回1,2或3
  var Pdur = file.duration;
  var Pmem = getMemory(Psize); //返回size * (100 || 10 || 1)
  var Pown = 'user';
  /* 很多东西将这些信息传递给HTML */
  console.log(Pdur);
}

有办法做到这一点吗?如果没有,有什么替代方案可以帮助我?

0