实现1V1音视频实时互动直播系统 十二、第十一节 共享远程桌面

上节我已经将一对一的直播的整个过程与实现给大家介绍完了,那么下面我们就来留个作业 :

看如何在我们直播系统中增加共享远桌面,其中共享远程桌面这个API我们此前已经做了介绍了,这里我们再来回顾一下,

基本格式

var promise = navigator.mediaDevices.getDisplayMedia(constraints);

与我们获取音视频基本的API基本上是一致的,这里获取桌面就是getDisplayMedia,后面的参数也是 constraints,有一个限制,

constraints可选

constraints中约束与getUserMedia函数中基本一致。大家可以去尝试一下,看看里面有什么不同

需要注意的点

getDisaplyMedia无法同时采集音视频

但是这里有一点要注意,就是 getDisaplyMedia是无法采集桌面的同时也采集声音的,这是与getUserMedia一个最大的不同,那就出现了一个问题,在我们直播的过程中我们共享桌面了,但是同时我们还要有声音 ,那如何实现既共享桌面又能听到对方的声音,那还有没有可能既看到对方的桌面又看到他的视频还能同时听到声音,大家可以尝试一下。

我们第一个目的就是先能共享桌面、听到声音

第二个就是既听到对方的声音又能共享桌面又能听到对方的视频,

桌面是否可以调整分辨率?

像我们采集视频一样可以按照我们的要求去调整分辨率大小,比如说640*480,获取7120P或者1080P,这个看看是否可以,

 

我们共享桌面的时候是否可以共享整个桌面或者是共享某个应用或者是共享某块区域,因为比较灵活,有的人就想共享整个桌面,让大家都看到,有的觉得不想给别人看到其他的应用,只想共享其中的某个应用,我们可以进行交流就好了,还有人就是说在这一块区域内可以看到,超过这块区域的你就不用看到了,看看这些在共享桌面上能不能做到

你可能感兴趣的:(WEBRTC相关)