更新记录
1.0.2(2020-11-09)
1、增加部分控制及增加返回参数 2、优化录制完成视频保存部分,更加流程
1.0.1(2020-10-21)
1、返回结果中增加视频封面 2、解决已知问题
1.0.0(2020-07-14)
初始化发布
查看更多平台兼容性
Android | Android CPU类型 | iOS |
---|---|---|
适用版本区间:4.4 - 11.0 | armeabi-v7a:未测试,arm64-v8a:未测试,x86:未测试 | × |
原生插件通用使用流程:
- 购买插件,选择该插件绑定的项目。
- 在HBuilderX里找到项目,在manifest的app原生插件配置中勾选模块,如需要填写参数则参考插件作者的文档添加。
- 根据插件作者的提供的文档开发代码,在代码中引用插件,调用插件功能。
- 打包自定义基座,选择插件,得到自定义基座,然后运行时选择自定义基座,进行log输出测试。
- 开发完毕后正式云打包
付费原生插件目前不支持离线打包。
Android 离线打包原生插件另见文档 https://nativesupport.dcloud.net.cn/NativePlugin/offline_package/android
iOS 离线打包原生插件另见文档 https://nativesupport.dcloud.net.cn/NativePlugin/offline_package/ios
注意事项:使用HBuilderX2.7.14以下版本,如果同一插件且同一appid下购买并绑定了多个包名,提交云打包界面提示包名绑定不一致时,需要在HBuilderX项目中manifest.json->“App原生插件配置”->”云端插件“列表中删除该插件重新选择
1、插件简介
提供短视频录制,支持自定义时长、倒计时、摄像头切换、多种分辨率及质量选择,支持视频录制及编码方式,同时支持录制过程背景音频播放(可用于语音播报指引)。
2、插件使用说明
2.1、插件实例化
const dlvideo = uni.requireNativePlugin('DLHC-AliVideo');
2.2、调用组件进行视频录制
dlvideo.record({
minDuration: 2000,
maxDuration: 10000,
resolutionMode: 3,
ratioMode: 2,
videoQuality: "HD",
cameraType: 0,
recordMode: 0,
videoCodec: 0,
sortMode: 0,
useAudio: true,
audioPath: "https://img.tukuppt.com/newpreview_music/08/99/45/5c8971b3df47794783.mp3",
}, result => {
//_self.tmpData = result;
//此处获取到视频路径后进行逻辑处理
plus.nativeUI.toast(JSON.stringify(result))
});
2.3、参数详细说明
参数名称 | 参数说明 | 默认值 |
---|---|---|
resolutionMode | 视频分辨率: 0=360P 1=480P 2=540P 3=720P | 3 |
ratioMode | 宽高比例: 0=3:4 1=1:1 2=9:16 | 2 |
videoQuality | 视频质量:SSD、HD、SD、LD、PD、EPD | HD |
cameraType | 默认摄像头: 0=back,1=front | 0 |
minDuration | 视频录制最小时长;2s | 2000 |
maxDuration | 视频录制最大时长:60s | 60000 |
recordMode | 视频录制模式:0=点击录制 1=按住录制 2=自动 | 0 |
videoCodec | 视频编码方式:0=H264_HARDWARE(硬件编码) 1=H264_SOFT_OPENH264(软件编码) 2=H264_SOFT_FFMPEG(ffmpeg编码) | 0 |
useAudio | 是否使用录制时播放背景音频,true=是 false=否 | |
audioPath | 音频播放远程地址或本地绝对路径 | |
videoSavePath | 录制视频存储路径 | |
needClip | 是否需要多段录制 false true | true |
rotationMode | 屏幕方向 1=竖屏 2=横屏 | 1 |
timeTextMode | 显示计时信息 0=正计时 1=倒计时 | 1 |
useZdyTxt | 居中文字提示,false=不使用 true=使用 | false |
zdyTxt | 文字内容 | |
zdyTxtColor | 文字颜色 | #ffffff |
2.4、录制成功返回参数
录制成功返回数据:
{
"code": 200,
"data": {
"videoPath": "/storage/emulated/0/DCIM/Camera/2020071435431669.mp4",
"thumbnail": "/storage/emulated/0/DCIM/Camera/2020071435431669_img.jpg",
"duration": "50000",//时长,单位毫秒
"width": "480",
"height": "850",
"length": "1352000"//文件大小,单位Bytes
}
}
针对时长和文件大小单位转换可以通过js处理,以下为举例:
renderSize: function(value){
if(null==value||value==''){
return "0 Bytes";
}
var unitArr = new Array("Bytes","KB","MB","GB","TB","PB","EB","ZB","YB");
var index=0;
var srcsize = parseFloat(value);
index=Math.floor(Math.log(srcsize)/Math.log(1024));
var size =srcsize/Math.pow(1024,index);
size=size.toFixed(2);//保留的小数位数
return size+unitArr[index];
},
formatTime: function(time){
if (typeof time !== 'number' || time < 0) {
return time
}
var hour = parseInt(time / 3600)
time = time % 3600
var minute = parseInt(time / 60)
time = parseInt(time % 60)
var second = time
return ([hour, minute, second]).map(function (n) {
n = n.toString()
return n[1] ? n : '0' + n
}).join(':')
}
3、运行步骤
3.1、manifest.json 文件,选中“App 原生插件配置”,选择云端插件,在弹出的插件中勾选“视频录制插件”对应的插件。
3.2、打自定义基座
运行测试需要先打自定义基座,在HBuilderX中找到 运行》运行到手机或模拟器》制作自定义调式基座,点击在弹层中按要求填写打包内容,打包即可,具体操作说明请参见:https://ask.dcloud.net.cn/article/35115
3.3、选择自定义基座运行
在HBuilderX中找到 运行》运行到手机或模拟器》运行基座选择》自定义调试基座,选择后运行项目即可。