HoloLens2实现拍照
需求要能在HoloLens2中,在使用unity发布的应用中,通过点击按钮来触发类似HoloLens系统的拍照效果。环境Visual Studio 2019Unity2020.3.20f1c1HoloLens2方法列表UWP应用中的MediaCapture类unity中的PhotoCapture类使用HoloLens2系统的原生拍照命令调用HoloLens设备门户的Rest API使用Window
需求
要能在HoloLens2中,在使用unity发布的应用中,通过点击按钮来触发类似HoloLens系统的拍照效果。
环境
Visual Studio 2019
Unity2020.3.20f1c1
HoloLens2
方法列表
- UWP应用中的MediaCapture类
- unity中的PhotoCapture类
- 使用HoloLens2系统的原生拍照命令
- 调用HoloLens设备门户的Rest API
- 使用WindowsDevicePortalWrapper,即包装好的rest api
方法的用处与弊端
1、MediaCapture和PhotoCapture类都是调用webcam,需要勾选HoloLens2功能中的webcam(网络摄像头)。不过经过尝试发现,他们的拍照效果只有现实环境,不包含全息图。
2、直接戴上HoloLens2,然后说“拍照”。HoloLens2会在短暂几秒后拍照,并且可以在设备门户中找到照片,这点虽然有全息图,但是不算集成在自定义应用中。
3、调用restapi:/api/holographic/mrc/photo (POST)
需要注意,要添加”device security“然后关闭ssl,使用http来访问,否则使用https访问,在使用了账号和密码验证的情况下,还会出现403错误。
可惜的是,这种方式虽然可以正常拍照,不过据尝试,在postman和UWP应用中正常,但是在unity应用条件编译后,发布到HoloLens2上发现报错,调用API总是出现超时,至今未明白原因,希望有大佬共同讨论一下。
在unity编辑器的运行情况
在HoloLens2的运行情况
在POSTMAN的运行情况
关闭SSL
4、WindowsDevicePortalWrapper还没有抽出时间去研究,这里就不多评价了,大家可以去看看
参考链接
unity的photocapture类
设备门户API列表
HoloLens2系统中使用拍照语音命令
MediaCapture类API
调用restapi有403错误的解决方式,科学上网
微软论坛关于HoloLens2的拍照截图的讨论
WindowsDevicePortalWrapper的github下载
本站一位大佬使用HoloLens的restapi进行操作
unity里面发起Post请求,加验证头要转码合并
更多推荐
所有评论(0)