[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Gnash-dev] Flash HD (H.264) video decoding acceleration
From: |
Gwenole Beauchesne |
Subject: |
[Gnash-dev] Flash HD (H.264) video decoding acceleration |
Date: |
Tue, 22 Sep 2009 16:21:22 +0200 (CEST) |
User-agent: |
Alpine 1.10 (DEB 962 2008-03-14) |
Hi,
It is now possible accelerate Flash HD (H.264) video decoding with
dedicated HW on Linux with Gnash. My approach uses OpenGL and VA API:
<http://www.freedesktop.org/wiki/Software/vaapi>
I have verified this works with both AMD and NVIDIA chipsets, but I reckon
those rely on proprietary software. However, this should also work with
Intel chips when the H.264 codec for the Open Source G45 VA driver is
released (only MPEG-2 is available at this time).
Along the way, I also fixed a few generic OpenGL renderer bugs. I will
submit those hunks first.
Performance. This is really effective. Even non HW accelerated video
decoding and displaying is faster than Adobe's Flash Player. On one clip
("2012" 1080p teaser) with the container transformed to flv, you almost
have to count in seconds per frame with Adobe's Flash Player whereas it is
much smoother with Gnash, fullscreen at 1920x1080.
The agglomerated patch is available in attachment and at:
<http://www.splitted-desktop.com/~gbeauchesne/gnash-vaapi/>
This is based on bzr rev 11514. I have tried to be the less intrusive as
possible. The resulting patch, without new files, is under 1000 lines.
It's not really clean yet as some dead code and debug code remain.
NOTE: it's also possible to use the AGG renderer but reading pixels back
from GPU, doing color space conversion and other things, and then
transfering the things back to GPU is an ineffective approach. You have a
gain because the encoded bitstream is submitted to the HW decoder. Its job
is to decode and display the decoded frames so everything is kept on the
GPU/VPU side.
Comments welcome.
Regards,
Gwenole.
gnash-vaapi-20090922.patch
Description: Text Data
- [Gnash-dev] Flash HD (H.264) video decoding acceleration,
Gwenole Beauchesne <=