为什么观看完全相同的视频文件,Flash播放器消耗的CPU比VLC播放器多20倍?


8

当我在线(在Firefox或Chrome中)播放视频(H264 MPEG4 AVC 320x180)时,它占用的CPU占用率高达100%,但是如果我下载它(恰好是播放的文件)并使用VLC,则占用的时间仅为5%(6最多%)。为什么会发生这种情况,我该怎么做才能提高在线播放器的效率?

PS:视频卡是Intel GMA X4500HD。


浏览器中的文件是使用Flash还是使用HTML5播放?在Totem中玩游戏(使用GStreamer)的数字是多少?
8128年

我已经说过那是Flash。我没有图腾可以尝试,但是我相信它不会比VLC差很多。
伊万(Ivan)2012年

我假设Flash插件+浏览器(Firefox,Chrome等)是比VLC电影播放器​​复杂得多的系统。我并不是说电影播放器​​很简单,但是我想互动的组件要少于浏览器内部的组件。
数学

大量的CPU使用不仅限于VIDEO,而且还适用于Firefox或Chromium中的STREAMING AUDIO(例如RADIO电台);相比之下,VLC中的流媒体要轻得多!
关于natty的坚果,

Answers:


6

可能的原因是Flash插件无法利用显卡驱动程序支持的任何类型的硬件加速。然后使用CPU对所有内容进行解码。

系统中存在的Intel驱动程序允许VLC使用GPU而不是CPU来通过视频加速来渲染电影,这显然有明显的原因。

此外,Flash硬件加速API(阶段视频)要求开发人员将对其的支持实际添加到其视频播放器SWF中。

如果视频播放器没有内置支持,即使您使用的Flash版本确实启用了VA,并且您的驱动程序也支持它(似乎是因为VLC显然正在使用它),您的视频也会通过CPU解码。


但是,自10.2 beta版以来,Linux上的Flash是否不应该能够利用图形硬件加速?参见phoronix.com/…– nem75
2012年

@ nem75不是,如果您使用的视频播放器是在不支持的情况下编译的,或者Flash插件无法使用您的视频卡加速功能,请记住我们在这里谈论的是Intel,而不是Nvidia或ATI。
布鲁诺·佩雷拉
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.