Javascript Atom Electron:在另一个窗口中渲染画布

Javascript Atom Electron:在另一个窗口中渲染画布,javascript,html,canvas,angular,electron,Javascript,Html,Canvas,Angular,Electron,我有一个电子应用程序,有两个浏览器窗口。第一个管理呈现在画布上的多个媒体流。在浏览器中运行应用程序时,我可以使用window.open()提供的文档引用在弹出窗口中访问画布。在电子中有这样的可能吗 是否可以使用ipcrender将CanvasRenderingContext2D传递到另一个窗口?或者通过主进程上的全局进程?ipcdrenderer和ipcMain不支持像对象或函数这样的复杂事物传输。您需要将指令从第一个浏览器窗口发送到主进程,然后主进程应将指令(如字符串)发送到第二个应处理它的窗

我有一个电子应用程序,有两个
浏览器窗口
。第一个管理呈现在画布上的多个媒体流。在浏览器中运行应用程序时,我可以使用
window.open()
提供的文档引用在弹出窗口中访问画布。在电子中有这样的可能吗


是否可以使用
ipcrender
CanvasRenderingContext2D
传递到另一个窗口?或者通过主进程上的全局进程?

ipcdrenderer
ipcMain
不支持像对象或函数这样的复杂事物传输。您需要将指令从第一个
浏览器窗口
发送到主进程,然后主进程应将指令(如字符串)发送到第二个应处理它的窗口


如果要传输流,则必须创建本地主机服务器并使用套接字库(),再加上相应的npm包,例如,

ipcRenderer
ipcMain
不支持像对象或函数这样复杂的传输。您需要将指令从第一个
浏览器窗口
发送到主进程,然后主进程应将指令(如字符串)发送到第二个应处理它的窗口


如果要传输流,必须创建一个本地主机服务器并使用套接字库(),再加上相应的npm包,例如,

也许WebRTC可以为您工作,例如:

也许WebRTC可以为您工作,例如:

问题是不能仅使用字符串来渲染视频。我需要通过mediastream或
视频
元素。虽然这可以工作,但它本质上是对在正常浏览器范围内已经可以正常工作的内容的重写。嗯,恐怕没有其他好的解决方案。即使BrowserWindowProxy也只能发送字符串。问题是不能仅使用字符串来渲染视频。我需要通过mediastream或
视频
元素。虽然这可以工作,但它本质上是对在正常浏览器范围内已经可以正常工作的内容的重写。嗯,恐怕没有其他好的解决方案。即使BrowserWindowProxy也只能发送字符串