是否可以将原始视频帧传递给浏览器?

时间:2019-09-10 21:38:25

标签: html video browser udp webrtc

是否可以将原始视频帧通过管道传输到浏览器/网站?例如,解码可以在Gstreamer中本地完成,然后可以以某种方式转发到浏览器。

编辑: 我意识到我的描述有点不稳定。我想用的用例是将编码的视频发送给某人,在他们的计算机上对其进行解码,执行一些在浏览器中无法完成的高级过滤,然后将帧通过管道传输到浏览器。显然,重新编码只会浪费时间和精力。

我能找到的只是ppl,它表示可以从浏览器中抓取视频帧,似乎没有人对发送到浏览器感兴趣。可怕的选择是使用webrtc并将帧重新编码为VP8,然后将其发送到浏览器。

所以我的最后一个问题是是否可以写入浏览器的渲染管道?我对Web编程几乎一无所知,通常只处理图像和视频。 谢谢您的支持:)

PS:请原谅我缺乏知识,是否有可能在某人的计算机上安装一个客户端,写到本地tcp端口,然后从浏览器中的网站访问该tcp端口? (可能要求用户允许连接吗?)

1 个答案:

答案 0 :(得分:0)

是的,这是可能的。由于您正在运行本地GStreamer管道,因此您可以查看以下项目:https://github.com/Samsung/ChromiumGStreamerBackend基本上,他们使用GStreamer作为本机渲染器浏览器。

除此之外,您还可以创建一个浏览器扩展程序,该扩展程序执行一个应用程序并从Gstreamer获取数据,以随机播放到您的应用程序。 https://developer.chrome.com/extensions/nativeMessaging

如果您不想进行扩展,则可以创建一个小型Web Socket服务器。

无论哪种方式,您都可以将原始像素数据写入Canvas中...无需重新编码/解码视频。 https://developer.mozilla.org/en-US/docs/Web/API/Canvas_API