小程序上传视频功能的实现是怎样
Admin 2022-09-13 群英技术资讯 1477 次浏览
关于“小程序上传视频功能的实现是怎样”的知识有一些人不是很理解,对此小编给大家总结了相关内容,具有一定的参考借鉴价值,而且易于学习与理解,希望能对大家有所帮助,有这个方面学习需要的朋友就继续往下看吧。微信开发者工具需要安装ffmpeg环境才能正常使用下面的官方方法。
1、调用官方提供的方法(wx.chooseMedia)
choosevideo(){
let that=this
console.log("上传视频的方法")
wx.chooseMedia({
count: 1, //上传视频的个数
mediaType:['video'], //限制上传的类型为video
sourceType:['album', 'camera'], //视频选择来源
maxDuration: 58, //拍摄限制时间
camera: 'back', //采用后置摄像头
success:function(res){
//获取临时存放的视频资源
let tempFilePath=res.tempFiles[0].tempFilePath
//获取该视频的播放时间
let duration=res.tempFiles[0].duration
console.log("视频播放时间为"+duration)
//获取视频的大小(MB单位)
let size=parseFloat(res.tempFiles[0].size/1024/1024).toFixed(1)
console.log("视频大小为"+size)
//获取视频的高度
let height=res.tempFiles[0].height
console.log("视频高度为"+height)
//获取视频的宽度
let width=res.tempFiles[0].width
console.log("视频宽度为"+width)
//校验大小后,符合进行上传
if(size>20){
let beyongSize=size-20 //获取视频超出限制大小的数量
Toast("上传的视频大小超限,超出"+beyongSize+"MB,请重新上传!")
return
}else{
//符合大小限制,进行上传
console.log("开始上传!!!")
that.uploadvideo({
url: api.uploadfiletofastdfs, //视频上传的接口
path: tempFilePath, //选取的视频资源临时地址
});
}
},
})
},
//视频上传
uploadvideo: function (data) {
wx.showLoading({
title: '上传中...',
mask: true,
})
var that = this
// 视频压缩
wx.compressVideo({
quality: 'high',
src: data.path,
success:function(res){
let size=parseFloat(res.size/1024/1024).toFixed(1)
console.log("压缩后视频大小为"+size)
that.setData({
sptemp:res.tempFilePath
})
//上传视频
wx.uploadFile({
url: data.url,
filePath: res.tempFilePath,
name: 'uploadFile',
header: {
"X-Access-Token":wx.getStorageSync('token')
},
success: (resp) => {
wx.hideLoading();
//获取fastDFS返回的存储路径
console.log(resp)
},
});
},
})
},
2、页面中用标签将上传的视频显示出来
<video src="{{sptemp}}" ></video>
3、效果展示

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:mmqy2019@163.com进行举报,并提供相关证据,查实之后,将立刻删除涉嫌侵权内容。
猜你喜欢
JavaScript中如何在一个循环中等待示例代码详解 下面是如何使用for..of 循环来迭代一个数组并在循环内等待: const fun = (prop) => { return new Promise(resolve => { setTimeout(() => resolve(`done ${prop}`), 1000); }) } const go = async () => { const list = [1, 2, 3] for (const prop of list) { console.log(prop) co ...
这篇文章主要介绍了JS浏览器事件模型,对时间模型感兴趣的同学,可以参考下
这篇文章主要为大家详细介绍了javascript实现图片轮播简单效果,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
最近学习过程中常碰到让用户登录注册这种,这篇文章主要给大家介绍了关于Vue实战记录之登陆页面实现的相关资料,需要的朋友可以参考下
本篇文章给大家带来了关于JavaScript中面向对象的相关知识,其中包括面向对象、构造函数以及继承的相关问题,希望对大家有帮助。
成为群英会员,开启智能安全云计算之旅
立即注册关注或联系群英网络
7x24小时售前:400-678-4567
7x24小时售后:0668-2555666
24小时QQ客服
群英微信公众号
CNNIC域名投诉举报处理平台
服务电话:010-58813000
服务邮箱:service@cnnic.cn
投诉与建议:0668-2555555
Copyright © QY Network Company Ltd. All Rights Reserved. 2003-2020 群英 版权所有
增值电信经营许可证 : B1.B2-20140078 ICP核准(ICP备案)粤ICP备09006778号 域名注册商资质 粤 D3.1-20240008