关于微信浏览器video不自动播放并且获取第一帧和总时长的问题

关于微信浏览器video标签获取第一帧和总时长的问题

最近项目中需要上传视频并限制播放时长。还要展示第一帧画面

技术实现。通过Input file 获取上传的视频资源,读取之后转成blob,放到video标签上。然后获取第一帧和视频时长。

问题来了

在pc开发的时候。video标签可以自动获取到第一帧。然后video onloadeddata的方法。可以获取时间。
但是在微信端因为视频是不能自动播放的。也就是不能出发onloadeddata方法。获取不到第一帧。并且微信浏览器video标签,获取不到第一帧图像。

解决方案
项目是vue。这里只介绍方法。不介绍样式。样式大家自己根据ui稿。

   <video
        ref="video"
        src
        alt
        class="img_video"
        muted="true" //静音  某些文章说设置muted然后设置autoplay可以自动播放,然后并没有什么用。出于玄学。没有删除
        id="video"
        x5-playsinline="true" //微信自动播放会全屏播放,设置此属性 可以小窗口播放
        playsinline="true"
        webkit-playsinline
        autoplay
        controls
        preload="preload"
      ></video>
       <input
            class="file_video"
            type="file"
            accept="video/*"
            ref="file_video"
            id="file_video"
            @change="addVideo"
          />
methods:{
   
	getObjectURL....
	addVideo...
}
 getObjectURL(file) {
    //转换成blob对象 不要问。
      var url = null;
      if (window.createObjectURL != undefined) {
   
        
  • 0
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 3
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值