BiangBaing 2022-11-22 13:39 采纳率: 60%
浏览 29
已结题

vue获取ts、avi等视频格式时长

问题遇到的现象和发生背景

Vue获取视频文件的时长

用代码块功能插入代码,请勿粘贴截图

网上搜索出来的结果大多是这个使用 new Audio() 返回HTMLAudioElement ,再获取其时长。

我的解答思路和尝试过的方法
getVideoDuration(file) {  // 获取视频时长
      console.log(file,'获取视频时长');
      return new Promise((resolve) => {
        var url = URL.createObjectURL(file);
        var audioElement = new Audio(url);
        var self = this;
        var result;
        audioElement.addEventListener("loadedmetadata", function() {
          // 视频时长值的获取要等到这个匿名函数执行完毕才产生
          result = audioElement.duration; //得到时长为秒,小数,182.36
          self.videoDuration = Math.floor(result/60);
          console.log(self.videoDuration + " minutes " )
          resolve(self.videoDuration)
        });
      })
    },
我想要达到的结果

使用这个方法确实能实现,但是只能获取到mp4格式的视频长度。avi、ts等其他格式获取不到

  • 写回答

0条回答 默认 最新

    报告相同问题?

    问题事件

    • 系统已结题 11月30日
    • 创建了问题 11月22日

    悬赏问题

    • ¥15 zynq烧写程序到flash后不运行
    • ¥15 在ECharts中绘制饼图及环形图(图表)
    • ¥15 (标签-51单片机|关键词-#include)
    • ¥15 裸板ESD问题的思考与实验
    • ¥15 electron+python
    • ¥50 远程调试PLC的解决方案的问题
    • ¥15 微信收付通中,自动分账的情况下,某一接收方分账失败了系统会自动在发起重新分账吗
    • ¥15 宝塔ssl证书一直待待验证
    • ¥15 相近语义 不同表达 匹配
    • ¥15 [vasp+phonopy]表面模型的间隙扩散系数中尝试频率如何用声子频率计算