HarmonyOS 关于手动切换镜头
进入相机页面默认设置为后置摄像头,并且可以显示预览流和实现拍照
当我需要点击按钮进行前置与后置镜头切换时,出现黑屏。请问是哪个环节出现了问题,或者是否存在哪个API支持动态切换镜头
步骤:
1.暂停当前会话
2.移除当前会话的输入输出流(例:具有后置的)
3.新增输入输出流 (例:具有前置的)
4.配置会话
代码如下:
/*
* 切换摄像头
* */
async changeLens(isFrontLens: boolean, XComponentSurfaceId: string, sceneModel: camera.SceneMode){
if (this.photoSession === undefined) {
LoggerJoy.info(`CameraPage--> error message : captureSession is undefined`)
return
}
//暂停会话
await this.photoSession.stop()
//销毁之前的输入输出流
await this.cameraInput?.close()
await this.previewOutput?.release()
this.cameraInput = undefined
this.previewOutput = undefined
//开始配置会话
this.photoSession.beginConfig()
//移除会话中的输入输出流
this.photoSession.removeInput(this.cameraInput)
this.photoSession.removeOutput(this.previewOutput)
//新增
await this.createCameraInput(isFrontLens) //创建输入流
this.createPreviewOutput(isFrontLens, XComponentSurfaceId, sceneModel) //创建预览输出流输出流
//切换
this.photoSession.addInput(this.cameraInput) //向会话中添加相机输入流
this.photoSession.addOutput(this.previewOutput) //向会话中添加预览输出流
await this.photoSession.commitConfig() //提交会话配置
await this.photoSession.start() //启动会话
}
HarmonyOS
赞
收藏 0
回答 1
待解决
相关问题
HarmonyOS 关于手动签名的疑问
666浏览 • 1回复 待解决
HarmonyOS 打开系统相机如何默认前置镜头
97浏览 • 1回复 待解决
HarmonyOS 相机拍照镜头问题
81浏览 • 1回复 待解决
HarmonyOS 关于切换前后相机的问题
184浏览 • 1回复 待解决
Tabs禁止系统切换,在使用了自定义导航栏后,切换页签的逻辑需要手动实现。
934浏览 • 1回复 待解决
关于切换深色模式应用自动重启应用
6563浏览 • 2回复 待解决
Swiper组件的手动切换和下拉刷新手势期望互斥,当前可以并发
1076浏览 • 1回复 待解决
#鸿蒙通关秘籍#如何在鸿蒙应用中手动切换设备的横竖屏状态?
176浏览 • 1回复 待解决
HarmonyOS 长焦镜头拍照慢并且无法使用闪光灯
72浏览 • 1回复 待解决
#鸿蒙通关秘籍#如何在鸿蒙视频播放器中实现手动切换视频的功能?
223浏览 • 1回复 待解决
HarmonyOS 如何手动重启APP
105浏览 • 1回复 待解决
HarmonyOS Toggle组件onChange方法手动触发
174浏览 • 1回复 待解决
HarmonyOS TabContent内容如何手动刷新
65浏览 • 1回复 待解决
HarmonyOS 应用手动退到后台
105浏览 • 1回复 待解决
如何手动重启 OceanBase 集群?
5375浏览 • 1回复 待解决
HarmonyOS List手动拖动排序应该如何实现
144浏览 • 1回复 待解决
HarmonyOS 怎么手动给代码加上trace
119浏览 • 1回复 待解决
HarmonyOS如何实现相机手动对焦
465浏览 • 1回复 待解决
HarmonyOS 手机连接网络使用代理,无法手动保存
159浏览 • 1回复 待解决
HarmonyOS 如何手动配置代码格式化规则
159浏览 • 1回复 待解决
HarmonyOS scroller有没有手动停止的方法?
165浏览 • 1回复 待解决
HarmonyOS如何手动重置自定义组件?
436浏览 • 1回复 待解决
HarmonyOS服务卡片能否手动调方法刷新
498浏览 • 1回复 待解决
HarmonyOS中如何手动让应用进入后台?
177浏览 • 0回复 待解决
HarmonyOS 字符串怎么手动加换行?
807浏览 • 1回复 待解决
可以参考demo: