微信小程序实现上传视频功能
作者:小黑学IT 发布时间:2023-08-24 16:18:42
标签:微信小程序,上传视频
本文实例为大家分享了微信小程序上传视频,供大家参考,具体内容如下
微信开发者工具需要安装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、效果展示
来源:https://blog.csdn.net/qq_43804570/article/details/124747537
0
投稿
猜你喜欢
- php数组中元素的存在方式是以键值对的方式('key'=>'value'),有时候我们需要根据键删除数
- 在Go语言中,我们可以使用for、append()和copy()进行数组拷贝,对于某些对性能比较敏感且数组拷贝比较多的场景,我们可以会对拷贝
- 代码如下:<% Randomize Do While Len(pass)<12 
- WEB程序员的技能要求: Web程序员不光要对 后端程序(如 php,jsp,asp.net)语言知识,对程序设计架构知识,数据库
- 1.断点调试是啥?难不难?断点调试其实并不是多么复杂的一件事,简单的理解无外呼就是打开浏览器,打开sources找到js文件,在行号上点一下
- WebSocket 是什么?摘抄网上的一些解释:WebSocket 协议是基于 TCP 的一种新的网络协议。它实现了浏览器与服务器全双工(f
- 在网站开发的时候经常要用chr(),但本人比较懒没时间记那么多。于是到用到的时候就查,这样麻烦。现在将它写出来方便以后用到查,也方便大家!c
- SQL Server 的扩展存储过程,其实就是一个普通的 Windows DLL,只不过按照某种规则实现了某些函数而已。近日在写一个扩展存储
- 具体代码见下。在此程序中,由于使用了变量,我们需将全部聊友的昵称用“,”(逗号)来隔开,储存到application("visit
- 下面是IN条件运算符的SQL语句:SELECT column1, SUM(column2) FROM&nbs
- 见下表:序号列类型需要的存储量1TINYINT1 字节2SMALLINT2 个字节3MEDIUMINT3 个字节4INT4 个字节5INTE
- 发帖或者回帖的时候,系统会提示银两或经验增加的效果,慢慢出现又慢慢消失,用于取代对话框的那种是如何实现的?用google的jquery ap
- 仿豆瓣分页原型(Javascript版)写了个分页的样式。自我感觉,这样的分页前后兼顾,对于用户的体验是蛮好使的Javascript分页代码
- 接着上一篇《服务端XMLHTTP(ServerXMLHTTP in ASP)基本应用(上)》继续讲讲ServerXMLH
- 数据库复制就是由两台服务器,主服务器和备份服务器,主服务器修改后,备份服务器自动修改,在以前的文章中已经做了详细的说明,这里就不在重复.使用
- 在我们制作网页的时候会经常碰到一些需求,如果不知道方法,说不定会困扰我们半天。其实实现它们都很简单,下面我们就一起来看看这些常用的网页编辑方
- 从Web查询数据库:Web数据库架构的工作原理 一个用户的浏览器发出一个HTTP请求,请求特定的Web页面,在该页面中出发form表单提交到
- 这是解释器设置问题,在设置里找到interpreter 找到合适的目录就可以了。因为重装了python导致pycharm找不到路径了。另外,
- 随着互联网产业的飞速发展和电子产业的飞速发展,人们的社交似乎离不开网络,这就应运了SNS的飞速发展。从打开QQ空间关注朋友们的动态,最近心情
- 在使用 SQL Server 的过程中,用户遇到的最多的问题莫过于连接失败了。一般而言,有以下两种连接 SQL Server 的方式,一是利