随着实时通信技术的发展,在线教育、视频会议、在线金融等实时互动应用的使用量越来越多,通过线上共享文档和桌面进行教学、协作、产品演示也日益普遍。多样化的场景也催生了对实时互动技术更个性化的需求,其中就包括对屏幕共享内容进行实时标注。
前言
拍乐云Pano推出业内首个支持基于实时视频、屏幕共享、文档内容流的实时标注产品,解决多个行业在线上复杂交互场景下的实时互动和实时标注痛点,更好地提升线上互动的效率和效果。
目前 Pano SDK 已上线实时标注API,为开发者提供便捷的接入方式,可快速上线标注功能满足业务需求。本文以 Windows 端 C++ 接口为例,来看看如何快速接入 Pano SDK 的共享标注功能。拍乐云开发者账户(通过拍乐云官网注册)
- 接入拍乐云屏幕共享功能(https://developer.pano.video/features/rtc/screen/)
共享标注API用于实现在共享窗口上标注并实现各端的标注内容同步。标注功能需要确保收到 onWhiteboardAvailable 事件通知。在开启共享后,开发者可指定需要标注的共享流。标注功能的接入分为标注发起方和接收方。3) 开始标注 (startAnnotation)1) 收到共享标注开始事件(onShareAnnotationStart)4) 打开标注窗口(开始标注)(startAnnotation)6) 收到共享标注结束事件(onShareAnnotationStop)8) 关闭标注窗口(结束标注)(stopAnnotation)使用共享标注对象需要首先获取共享标注管理器对象AnnotationManager。管理器对象可以从 PanoRtcEngine 中获得。之后从 AnnotationManager 中获取共享标注对象,接口中需要指定共享流对应的 userId。在获得共享标注对象后,可以开始/结束标注,并通知各端共享标注开始/结束
a、开始标注调用 startAnnotation, 接口需要传入一个标注视图。结束标注调用 stopAnnotation,结束共享标注。Windows 传入的 window 对象为 HWND 类型,与 SubscribeScreen 中指定的 window 对象相同。如果是共享端,传入 NULL。Pano内部会自动创建一个与共享区域一致的透明窗口。
b、在标注管理器的回调中,有通知共享标注的开始和结束事件,app在收到事件后可以加入到共享标注或关闭标注视图。收到 onShareAnnotationStart 后,可以通过回调中的userId获取对应的标注对象。之后调用 startAnnotation 加入标注。收到 onShareAnnotationStop 后,可以调用 stopAnnotation 关闭标注。标注提供了多种工具和操作。通过相应接口设置或调用。目前提供的功能包括,画笔,直线,矩形,椭圆,文字等。颜色,线宽,文字粗斜体,撤消/重做,清除等。不支持填充类型对象。支持用户角色设置(Admin, Attendee, Viewer);
清除全部标注内容,清除非本人标注内容需要 Admin 角色权限。Viewer 角色仅可观看,不可标注;
通过设置 Viewer 角色可以关闭某个用户的标注绘制功能。设置为 Attendee 或 Admin 可以重新开启标注绘制功能;
快照功能可以快速获得包含当前标注与共享内容的截图。
通过 setCallback 注册标注对象的回调事件以上就是 Windows 端实时共享标注的详细教程,如需接入其他端,你也可以联系官网客服获取技术文档。关注拍乐云Pano的公众号,我们将为大家分享更多关于音视频技术的探索和实践,以及基于 Pano SDK 的详细开发教程。
拍乐云成立于2019年,是国内第一家视频会议背景的实时互动通信云服务提供商,汇聚了一大批专注于音频、视频、网络、AI等领域的资深技术专家。通过 Pano SDK,企业开发者即可在全球范围内快速实现互动小班、超级小班、双师大班、语音聊天室、视频社交、直播连麦、游戏语音、视频客服、远程医疗、办公协作等场景。