uniapp如何录像
使用uniapp实现录像功能
在uniapp中实现录像功能可以通过调用系统相机或使用第三方插件完成。以下是几种常见方法:
使用uni.chooseVideo方法
调用uni.chooseVideo可以打开系统相机进行录像:
uni.chooseVideo({
sourceType: ['camera'],
maxDuration: 60,
camera: 'back',
success: function(res) {
console.log(res.tempFilePath);
}
});
参数说明:

- sourceType: 指定来源为相机
- maxDuration: 最大录制时长(秒)
- camera: 使用后置摄像头
使用plus.camera实现
需要调用HTML5+ API:
var cmr = plus.camera.getCamera();
cmr.startVideoCapture(function(path){
console.log(path);
}, function(error){
console.log(error);
}, {filename:'_doc/video/'});
使用原生插件
如需更高级功能可考虑以下插件:

- DCloud的native.js
- 第三方录像插件如cordova-plugin-media-capture
注意事项
Android平台需要添加权限:
<uses-permission android:name="android.permission.CAMERA"/>
<uses-permission android:name="android.permission.RECORD_AUDIO"/>
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
iOS平台需要在manifest.json配置:
"ios" : {
"UIBackgroundModes" : ["audio"]
}
视频压缩处理
录制完成后可使用uni.compressVideo压缩视频:
uni.compressVideo({
src: tempFilePath,
quality: 'low',
success: function(res){
console.log(res.tempFilePath);
}
});
以上方法可根据具体需求选择使用,uni.chooseVideo适合简单场景,plus.camera和原生插件适合需要更多控制的场景。






