我开发了一个小型的Electron Dekstop应用程序,它可以处理我的webapp上的登录,然后通过Electron loadUrl()“加载”webapp。
我们已经在那个web应用程序中实现了Jitsi meet(带有特定的UI等)。除了屏幕共享,一切都很好。(第一次开发是在几年前,由于Electron不允许自定义chrome扩展,我们只是懒得让屏幕共享工作)。
从那时起,发生了很多变化,似乎这个项目设法使它工作。
我知道有一个解决方案允许Electron通过@jitsi/electron-sdk使用jitsi屏幕共享,但我想知道在我的情况下是否存在解决方案(也就是Jitsi没有直接在Electron中实现,而是通过loadUrl())。
有没有一个chrome扩展可以添加到我的electron项目中,允许chrome获取JitsiMeetElectron.obtainDesktopStreams函数?
或者是在我们的Electron项目中从头开始实现jitsi的唯一解决方案?
先谢谢你。
1条答案
按热度按时间3ks5zfa01#
使用desktopCapturer共享加载URL中的屏幕在**app.whenReady()中添加此代码。**这将自动筛选第一个可用屏幕
字符串
但是如果你想选择一个特定的屏幕,你需要在Electron中实现你自己的桌面选择器对话框desktopCapturer。在回调函数中不是传递sources[0],而是发出一个电子事件,显示所有可用的屏幕,然后返回特定的源ID并将其传递给
callback({video: sources[id]});
它可能不工作的情况下,谷歌会议屏幕共享,因为谷歌不允许这样做,但它的作品在我的情况下,当我必须加载bigbluebutton video conferencing网络应用程序在电子通过加载网址