一般我们有两种方法:
车机与PC 同步渲染车机中的导航正常运行,当导航接收到系统模块业务请求时,先是车机导航进行处理,处理完毕后将信号转发到PC端处理,这种方案两端导航业务逻辑并行运行,复杂的业务场景下,两端会同时跟车机进行交互,此时可能会产生互斥,会有两端逻辑不同步的场景,达不到预期效果。
将车机中渲染的数据投射到车机端在这里我们可以将PC 上程序每渲染一帧地图则将结果传到车机端, 由车机端Sandwich 负责接收, 当Sandwich 接收到一帧地图像素数据后,负责将此帧数据渲染到车机屏幕上,此时车机中呈现的效果跟PC 端一致。在该项目中我们采用了这一方案,这种方案中,真正的导航业务逻辑是来自PC 端,车机中只是一个转发过程,所以不会存在第一种方案中的问题。
但在某些特定的环境下,导航描画会很频繁,发送给车机的数据也会很多,频繁的数据发送可能会带来一定的性能开销,表现上可能会出现延迟。这里可以使用降低图像质量来减少图像数据, 例如, 可以使用16 位或者8 位BMP来传输,还可以压缩传输,这样1920*720 分辨率图像传输大小能控制在30-50k 左右。
以上内容摘自《高德技术2020年刊合集》电子书,点击https://developer.aliyun.com/topic/download?id=1135可下载完成版
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。