小程序——视频
视频1、VideoContext wx.createVideoContext(string id, Object this)2、wx.chooseVideo(Object object)3、wx.saveVideoToPhotosAlbum(Object object)4、wx.openVideoEditor(Object object)5、wx.getVideoInfo(Object object)6、wx.compressVideo(Object object)7、wx.checkDeviceSupportHevc(Object object)8、wx.chooseMedia(Object object)1、VideoContext wx.createVideoContext(string id, Object this)创建 video 上下文 VideoContext 对象。建议使用 wx.createSelectorQuery 获取 context 对象。string idvideo组件的idObject this在自定义组件下当前组件实例的this以操作组件内 video 组件获取VideoContext对象之后就可以对视频做相关操作了。VideoContext对象常用函数如表所示。接口功能和用途VideoContext.play()播放视频VideoContext.pause()暂停视频VideoContext.stop()停止视频VideoContext.seek(number position)跳转到指定位置VideoContext.sendDanmu(Object data)发送弹幕VideoContext.playbackRate(number rate)设置倍速播放VideoContext.requestFullScreen(Object object)进入全屏VideoContext.exitFullScreen()退出全屏VideoContext.showStatusBar()显示状态栏仅在OS全屏下有效VideoContext.hideStatusBar()隐藏状态栏仅在OS全屏下有效仅支持网络url无法播放项目内本地路径视频。viewclasssection tcvideoidmyVideosrchttp://127.0.0.1:8080/download/2.mp4danmu-list{{danmulist}}enable-danmudanmu-btncontrolsstylewidth:100%;/videoviewclassbtn-areainputbindblurbindInputBlur/buttonbind:tapbindSendDanmu发送弹幕/button/view/viewbuttontypeprimarybind:tapaudioPlay播放/buttonbuttontypeprimarybind:tapaudioPause暂停/buttonbuttontypeprimarybind:tapaudio14跳到10s位置/buttonbuttontypeprimarybind:tapaudioStart回到开头/buttonfunctiongetRandomColor(){constrgb[]for(leti0;i3;i){letcolorMath.floor(Math.random()*256).toString(16)colorcolor.length1?0color:color rgb.push(color)}return#rgb.join()}Page({data:{src:,danmuList:[{text:第1s出现的弹幕,color:#ff0000,time:1},{text:第3s出现的弹幕,color:#ff00ff,time:3}]},inputValue:,onReady:function(res){this.videoContextwx.createVideoContext(myVideo)},bindInputBlur(e){this.inputValuee.detail.value},bindSendDanmu(){this.videoContext.sendDanmu({text:this.inputValue,color:getRandomColor()})},audioPlay(){this.videoContext.play()},audioPause(){this.videoContext.pause()},audio14(){this.videoContext.seek(10)},audioStart(){this.videoContext.seek(0)}})2、wx.chooseVideo(Object object)拍摄视频或从手机相册中选视频。参数Object object属性类型默认值必填说明sourceTypeArray.string[‘album’, ‘camera’]否视频选择的来源可选值如下album:从相册选择视频camera:使用相机拍摄视频compressedbooleantrue否是否压缩所选择的视频文件maxDurationnumber60否拍摄视频最长拍摄时间单位秒camerastring‘back’否默认拉起的是前置或者后置摄像头。部分 Android 手机下由于系统 ROM 不支持无法生效可选值如下back:后置摄像头front:前置摄像头successfunction否接口调用成功的回调函数failfunction否接口调用失败的回调函数completefunction否接口调用结束的回调函数调用成功、失败都会执行object.success回调函数参数Object res属性类型说明tempFilePathstring选定视频的临时文件路径 (本地路径)durationnumber选定视频的时间长度sizenumber选定视频的数据量大小heightnumber返回选定视频的高度widthnumber返回选定视频的宽度viewvideostylewidth:100%;idmyVideosrc{{src}}danmu-list{{danmuList}}enable-danmudanmu-btncontrolls/video/viewbuttontypeprimarybind:tapuploadvideo上传视频/buttonbuttontypeprimarybind:tapaudioPlay播放/buttonPage({data:{src:,},inputValue:,onReady(res){},uploadvideo:function(){wx.chooseVideo({sourceType:[album,camera],maxDuration:60,camera:back,success:(res){this.setData({src:res.tempFilePath})}})},audioPlay:function(){this.videoContextwx.createVideoContext(myVideo)this.videoContext.play()}})3、wx.saveVideoToPhotosAlbum(Object object)保存视频到系统相册。支持mp4视频格式。参数Object object属性类型默认值必填说明filePathstring是视频文件路径可以是临时文件路径也可以是永久文件路径 (本地路径)successfunction否接口调用成功的回调函数failfunction否接口调用失败的回调函数completefunction否接口调用结束的回调函数调用成功、失败都会执行viewvideostylewidth:100%;idmyVideosrc{{src}}danmu-list{{danmuList}}enable-danmudanmu-btncontrols/video/viewbuttontypeprimarybind:tapsave保存视频/buttonPage({inputValue:,data:{src:http://127.0.0.1:8080/download/2.mp4},save:function(){wx.downloadFile({url:this.data.src,success:(res){if(res.statusCode200){wx.saveVideoToPhotosAlbum({filePath:res.tempFilePath,success:(res){wx.showToast({title:保存视频成功})},fail:(res){wx.showToast({title:保存图片失败})}})}}})}})4、wx.openVideoEditor(Object object)打开视频编辑器参数Object object属性类型默认值必填说明filePathstring是视频源的路径只支持本地路径minDurationstring是视频裁剪的最小长度maxDurationstring是视频裁剪的最大长度successfunction否接口调用成功的回调函数failfunction否接口调用失败的回调函数completefunction否接口调用结束的回调函数调用成功、失败都会执行object.success回调函数参数Object res属性类型说明durationnumber剪辑后生成的视频文件的时长单位毫秒mssizenumber剪辑后生成的视频文件大小单位字节数bytetempFilePathstring编辑后生成的视频文件的临时路径tempThumbPathstring编辑后生成的缩略图文件的临时路径5、wx.getVideoInfo(Object object)获取视频详细信息。参数Object object属性类型默认值必填说明srcstring是视频文件路径可以是临时文件路径也可以是永久文件路径successfunction否接口调用成功的回调函数failfunction否接口调用失败的回调函数completefunction否接口调用结束的回调函数调用成功、失败都会执行object.success回调函数参数Object res属性类型说明orientationstring画面方向typestring视频格式durationnumber视频长度sizenumber视频大小单位 kBheightnumber视频的长单位 pxwidthnumber视频的宽单位 pxfpsnumber视频帧率bitratenumber视频码率单位 kbps6、wx.compressVideo(Object object)压缩视频接口。开发者可指定压缩质量 quality 进行压缩。当需要更精细的控制时可指定 bitrate、fps、和 resolution当 quality 传入时这三个参数将被忽略。原视频的相关信息可通过 getVideoInfo 获取。参数Object object属性类型默认值必填说明srcstring是视频文件路径可以是临时文件路径也可以是永久文件路径qualitystring否压缩质量可选值为low:低medium:中high:高bitratenumber是码率单位 kbpsfpsnumber是帧率resolutionnumber是相对于原视频的分辨率比例取值范围(0, 1]successfunction否接口调用成功的回调函数failfunction否接口调用失败的回调函数completefunction否接口调用结束的回调函数调用成功、失败都会执行object.success回调函数参数Object res属性类型说明tempFilePathstring压缩后的临时文件地址sizestring压缩后的大小单位 kB7、wx.checkDeviceSupportHevc(Object object)查询设备是否支持 H.265 编码。参数Object object属性类型默认值必填说明successfunction否接口调用成功的回调函数failfunction否接口调用失败的回调函数completefunction否接口调用结束的回调函数调用成功、失败都会执行object.success回调函数参数Object res属性类型说明supportHevcBoolean设备是否支持 H.265 编码wx.checkDeviceSupportHevc({success(res){constsupportHevcres.supportHevc}})8、wx.chooseMedia(Object object)拍摄或从手机相册中选择图片或视频。参数Object object属性类型默认值必填说明countnumber9否最多可以选择的文件个数基础库2.25.0前最多可支持9个文件2.25.0及以后最多可支持20个文件mediaTypeArray.string[‘image’, ‘video’]否文件类型可选值image:只能拍摄图片或从相册选择图片video:只能拍摄视频或从相册选择视频mix:可同时选择图片和视频sourceTypeArray.string[‘album’, ‘camera’]否图片和视频选择的来源可选值album:相册camera:相机maxDurationnumber10否拍摄视频最长拍摄时间单位秒。时间范围为 3s 至 60s 之间。不限制相册。sizeTypeArray.string[‘original’, ‘compressed’]否是否压缩所选文件基础库2.25.0前仅对 mediaType 为 image 时有效2.25.0及以后对全量 mediaType 有效camerastring‘back’否仅在 sourceType 为 camera 时生效使用前置或后置摄像头可选值如下back:后置front:前置successfunction否接口调用成功的回调函数failfunction否接口调用失败的回调函数completefunction否接口调用结束的回调函数调用成功、失败都会执行object.success回调函数参数Object res属性类型说明tempFilesArray.Object本地临时文件列表typestring文件类型有效值有 image 、video、mix其中tempFiels结构如下结构属性类型说明tempFilePathstring本地临时文件路径 (本地路径)sizenumber本地临时文件大小单位 Bdurationnumber视频的时间长度heightnumber视频的高度widthnumber视频的宽度thumbTempFilePathstring视频缩略图临时文件路径fileTypestring文件类型可选值如下image:图片video:视频wx.chooseMedia({count:9,mediaType:[image,video],sourceType:[album,camera],maxDuration:30,camera:back,success(res){console.log(res.tempFiles[0].tempFilePath)console.log(res.tempFiles[0].size)}})

相关新闻

Ansible 项目结构解析与剧本注释

Ansible 项目结构解析与剧本注释

/etc/ansible ├── ansible.cfg # 主配置文件 ├── inventory.yml # 主机清单 ├── playbooks │ ├── 01-ansible-env.yml # Python 环境初始化剧本 │ ├── 02-debian12-setup.yml # 系统基础配置剧本 │ ├…

2026/5/17 11:09:38 阅读更多 →
LangChain vs CrewAI:AI开发框架终极对决

LangChain vs CrewAI:AI开发框架终极对决

前言:随着大语言模型(LLM)的快速发展,AI 应用开发框架也在不断演进。从最早的 Prompt Engineering,到后来的链式调用(Chain),再到如今流行的 Agent 架构,AI 工程正在逐渐…

2026/7/5 8:22:36 阅读更多 →
告别“辐射焦虑”,把实验室带到您身边!

告别“辐射焦虑”,把实验室带到您身边!

——记深圳市宝安区沙井街道专业辐射现场测试服务在深圳宝安沙井街道的工业园里,每天都有无数的电子设备、精密仪器和工业探伤设备在高速运转。作为“智造重镇”,沙井及周边福永、松岗的企业在享受科技红利的同时,也面临着一个共同的课题&…

2026/5/17 11:09:38 阅读更多 →

最新新闻

AppScan 扫描结果分析:5步法高效验证与处理100+个潜在漏洞

AppScan 扫描结果分析:5步法高效验证与处理100+个潜在漏洞

AppScan扫描结果深度解析:从漏洞验证到修复落地的全流程指南当安全扫描工具弹出"发现100潜在漏洞"的警示时,开发团队的第一反应往往是头皮发麻。我曾见证过某金融项目团队面对AppScan生成的287页报告时的崩溃场景——安全工程师通宵标记出的&q…

2026/7/6 9:32:36 阅读更多 →
从OWASP指南到安全代码模板:Semgrep与Cookiecutter实战

从OWASP指南到安全代码模板:Semgrep与Cookiecutter实战

1. 项目概述:为什么我们需要“安全代码模板”?在应用安全领域,我们常常面临一个尴尬的境地:安全规范文档浩如烟海,但开发者在编码时,却很难快速、准确地找到并应用那些最关键的安全防护措施。OWASP Cheat S…

2026/7/6 9:32:36 阅读更多 →
半导体材料参数 3 大误区:禁带宽度仅决定耐温?迁移率只影响速度?

半导体材料参数 3 大误区:禁带宽度仅决定耐温?迁移率只影响速度?

半导体材料参数 3 大误区:禁带宽度仅决定耐温?迁移率只影响速度?在半导体器件设计与选型过程中,工程师们常常陷入对关键参数的片面理解。禁带宽度、载流子迁移率等基础参数的真实工程意义,远比教科书上的定义复杂得多。…

2026/7/6 9:30:31 阅读更多 →
MATLAB环境下可直接运行的人脸识别CNN工程:含完整训练测试代码、预训练模型与实操录像

MATLAB环境下可直接运行的人脸识别CNN工程:含完整训练测试代码、预训练模型与实操录像

本文还有配套的精品资源,点击获取 简介:一套开箱即用的MATLAB人脸识别CNN实现方案,适配MATLAB 2022a版本,无需额外配置即可运行。包含从数据预处理(图像缩放、归一化)、网络构建(卷积层、池化…

2026/7/6 9:28:30 阅读更多 →
JMeter CSV结果文件转HTML性能报告:命令行生成与深度解读指南

JMeter CSV结果文件转HTML性能报告:命令行生成与深度解读指南

1. 项目概述:从CSV结果到可视化洞察做性能测试,跑完脚本、拿到一堆数据只是第一步。真正考验人的,是能从这些冰冷的数据里看出门道,讲出故事。JMeter的“查看结果树”保存的CSV文件,就像一本记录了所有测试细节的原始账…

2026/7/6 9:28:30 阅读更多 →
EyouCMS 1.5.5 漏洞防御实战:3步加固模板管理功能防命令执行

EyouCMS 1.5.5 漏洞防御实战:3步加固模板管理功能防命令执行

EyouCMS 1.5.5 漏洞防御实战:3步加固模板管理功能防命令执行在网站安全领域,内容管理系统(CMS)的安全防护一直是运维人员和开发者的重点关注对象。EyouCMS作为国内广泛使用的企业建站系统,其1.5.5版本中发现的模板管理…

2026/7/6 9:26:29 阅读更多 →

日新闻

H2 与 MySQL 单元测试兼容性:5 个关键 SQL 语句差异与规避方案

H2 与 MySQL 单元测试兼容性:5 个关键 SQL 语句差异与规避方案

H2与MySQL单元测试兼容性:5个关键SQL语句差异与规避方案1. 单元测试中的数据库兼容性挑战在Java开发领域,单元测试是保证代码质量的重要环节。当应用涉及数据库操作时,测试环境的搭建往往成为开发者的痛点。H2数据库因其轻量级、内存模式和快…

2026/7/6 0:01:17 阅读更多 →
Windows任务栏终极清理指南:用RBTray一键隐藏窗口到系统托盘

Windows任务栏终极清理指南:用RBTray一键隐藏窗口到系统托盘

Windows任务栏终极清理指南:用RBTray一键隐藏窗口到系统托盘 【免费下载链接】rbtray A fork of RBTray from http://sourceforge.net/p/rbtray/code/. 项目地址: https://gitcode.com/gh_mirrors/rb/rbtray 你是否厌倦了Windows任务栏上密密麻麻的图标&…

2026/7/6 0:01:17 阅读更多 →
Visual C++ 运行时库一键安装终极指南:告别DLL缺失烦恼

Visual C++ 运行时库一键安装终极指南:告别DLL缺失烦恼

Visual C 运行时库一键安装终极指南:告别DLL缺失烦恼 【免费下载链接】vcredist AIO Repack for latest Microsoft Visual C Redistributable Runtimes 项目地址: https://gitcode.com/gh_mirrors/vc/vcredist 你是否曾经遇到过这样的情况:下载了…

2026/7/6 0:05:19 阅读更多 →

周新闻

B站视频下载神器BiliTools:5分钟学会轻松保存任何B站内容

B站视频下载神器BiliTools:5分钟学会轻松保存任何B站内容

B站视频下载神器BiliTools:5分钟学会轻松保存任何B站内容 【免费下载链接】BiliTools A cross-platform bilibili toolbox. 跨平台哔哩哔哩工具箱,支持下载视频、番剧等等各类资源 项目地址: https://gitcode.com/GitHub_Trending/bilit/BiliTools …

2026/7/6 8:11:50 阅读更多 →
威胁模型全解析:从新手入门到实战应用,助你构建安全产品!

威胁模型全解析:从新手入门到实战应用,助你构建安全产品!

威胁模型的陌生现状在忙碌疲惫的一天里,参与了关于混合后量子密码学的讨论,应付端点攻击找茬的人,还参与留言板讨论后,发现“威胁模型”对多数人仍是陌生概念,且多被当作时髦用语。有趣的相关画作有一幅由 Embyr 创作的…

2026/7/6 8:11:52 阅读更多 →
渗透测试入门指南:从零基础到实战环境搭建

渗透测试入门指南:从零基础到实战环境搭建

1. 从“看热闹”到“入门”:我理解的渗透测试到底是什么?每次看到新闻里说某个大公司的数据被“黑”了,或者某个网站被攻击导致服务瘫痪,你是不是和我一样,心里会冒出两个念头:一是“这黑客真厉害”&#x…

2026/7/6 6:52:56 阅读更多 →

月新闻