小程序上传视频功能的实现是怎样
Admin 2022-09-13 群英技术资讯 799 次浏览
关于“小程序上传视频功能的实现是怎样”的知识有一些人不是很理解,对此小编给大家总结了相关内容,具有一定的参考借鉴价值,而且易于学习与理解,希望能对大家有所帮助,有这个方面学习需要的朋友就继续往下看吧。微信开发者工具需要安装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进行举报,并提供相关证据,查实之后,将立刻删除涉嫌侵权内容。
猜你喜欢
Vue如何实现兄弟组件间的联动效果,一些朋友可能会遇到这方面的问题,对此在下文小编向大家来讲解一下,内容详细,易于理解,希望大家阅读完这篇能有收获哦,有需要的朋友就往下看吧!
在jquery中,可以利用“$("元素:not(:last-child)")”语句选择除了最后一列的其它元素;“:last-child”选择器可以选取最后一列元素,“:not()”选择器用于选取除指定元素以外的其它元素。
数组扁平化是指将一个多维数组变为一维数组,下面这篇文章主要给大家介绍了关于JavaScript面试之如何实现数组拍平(扁平化)方法的相关资料,文中通过示例代码介绍的非常详细,需要的朋友可以参考下
这篇文章主要为大家介绍了ahooks解决React闭包问题方法示例详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
本篇文章给大家分享20 个提高代码效率的 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备09006778号 域名注册商资质 粤 D3.1-20240008