GPU在浏览器上加速了视频解码。可能吗?


8

假设我有一个Rpi(B +),并希望它充当Kiosk,在此视频将以全屏循环播放。该视频将以编程方式更改,因此我需要一个API来控制它。之前,我已经在x86机器上基于Web的应用程序(Javascript和HTML5)中做到了这一点。

我遇到的问题是(显然)没有浏览器使用GPU来解码视频。事件其应支持“硬件加速视频解码”Web浏览器无法播放视频。我刚刚安装了Raspbian(NOOBS),并且浏览器至少应播放与视频相同的视频。

Omxplayer可以很好地运行它,但是当它循环并显示一些文本时会闪烁(“ Seek ...”)。

因为这将是一个在不同位置涉及约400个Raspberry PI(如果它能满足我的需要)的项目,所以我确实需要一个可靠的解决方案。

有没有办法在RPi的浏览器上播放gpu加速的循环播放视频?

编辑: 我尝试使用常规标签嵌入mp4 / h.264视频。每个浏览器均无法播放视频。主显节和铬仅显示黑色的“区域”和控件。没有视频。Midori得到一些帧,但CPU排名最高。Youtube / Vimeo也无法播放。

编辑2: 重新安装并将GPU内存设置为128MB(而不是默认的64MB)后,我设法在Epiphany上流畅地播放视频。CPU未达到100%(70%-95%)。虽然,当我尝试播放完整的高清视频时,性能严重下降(<1 FPS),但是CPU仅为50%,瓶颈可能是内存。我将选择一个RPI2并对其进行测试。


您需要更确切地说明此处的视频源是什么-它是如何编码的以及如何嵌入的。我确信“硬件加速视频解码”不适用于每种可能的编码方法,因为GPU本身无法做到这一点。
金发姑娘

我将采用任何可在网络浏览器上流畅运行的视频格式/编解码器。源只是一个文件,文件到达磁盘的方式是另一回事。
Mario Cesar 2015年

最让我困扰的是他们可以在浏览器上播放视频,并且理论上讲,相同的视频和相同的浏览器不能在我的机器上播放。问题可能是我正在使用RPI 1(B +)而他们可能正在使用RPI 2吗?
马里奥·塞萨尔

当时没有2。如果您真的相信自己已经重复了该测试用例,但是它没有达到预期的效果,那可能是您不走运。我认为epiphany只要有什么话,在Raspbian上通过HTML5播放的.h264 都会进行“硬件加速的视频解码”。
goldilocks

1
尝试并使用nginx托管视频文件,然后应该可以将src作为HTML5视频标签嵌入到浏览器中。我以为硬件渲染已经解决了很久了。我根本不使用X,因此没有进一步评论。我确定您可以在omxplayer上关闭OSD。闪烁的部分虽然很可惜,但不确定如何使用omx克服它。它与驱动程序重新加载和重新缓冲文件有关。
Piotr Kula 2015年

Answers:


5

是的,有可能,我前一段时间开始了这个项目,但是由于时间不够,我不得不停下来。

这是我可以获得的最佳效果(1080p):https : //youtu.be/fVM1GRDhXGw。它基于以下开放库:https : //github.com/carlonluca/pi。一些更多的信息在这里

该演示将该库与QtWebKit中的WebKit1一起使用,所有库都在没有X11的情况下运行。使用WebKit2似乎要困难得多。不幸的是质量并不完美,我不知道是否有可能改进它。但是,如果只想播放全屏视频,我看不出为什么要首先使用浏览器。

请注意,我是该项目的作者,所以我之所以报告它,只是因为我知道它。可能还有一百万种其他方法。


感谢你的分享!您是否想加入我们即将到来的社区博客:)
Ghanima
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.