我有一个使用UDP协议的视频流,可以通过rtp://ipadd:port
或udp://@:port
访问。我绝对没有对服务器的控制,所以我不能更改它以服务于WebSocket上的流,也不能动态地将它转换成兼容的格式。
我想在一个电子应用程序中显示流,但是我从谷歌搜索中找到的资源都告诉我,我想要实现的目标是,我需要使用类似于webchimera.js
这样的东西来构建一个令人不快的黑客解决方案。
我尝试过按照<video>
标记this answer,删除URL,但是电子表示udp
和rtp
URL方案是不被识别的。我也尝试过使用静态构建的require('child_process').exec
,它可以工作,但它在一个完整的单独窗口上显示流,这不是我想要的。ActiveX、NPAPI和其他插件解决方案不是一个选项,因为电子不支持它们。
我是运气不好,还是还没有找到解决办法呢?
发布于 2017-02-27 05:29:40
通过查看其他人代码的一页又一页就知道了。
显然,我最初对WebSockets的理解是错误的--在我的情况下,我不需要对服务器端进行更改就可以使用WebSockets。
我必须使用ffmpeg
Node.js包装器将流从电子内部转换为Node.js,该包装器将视频发送到一个Express服务器实例,然后在jsmpeg
呈现的静态网页中提供视频服务。然后,静态网页在主电子应用程序页面中显示为IFrame。
与使用ffplay
播放原始UDP流时相比,生成的流具有更多的可视工件,而且这种方法可能会引入大量的延迟,但它可以满足我的需要。
https://stackoverflow.com/questions/42468022
复制相似问题