2011-11-19, 18:19
christian667 Wrote:Any fourther steps in aplying hardware acceleration with XBMC on the pandaboard yet? I'm running Ubuntu 11.10 now and there is still no way to get 1080p movies playing with more than 1/5 fps Even with the rep (https://launchpad.net/~tiomap-dev/+archi...er=oneiric)..
Hey, btw, I happen to know a bit about hw decode and gfx/display on omap4xxx.. I wrote libdce and gst-ducati, done some work on xorg driver, working on drm kernel driver for omap, etc. So maybe I could help in some way. It would be really cool to have xbmc running fully hw accelerated on panda, and could be an interesting side project..
Anyways, was just starting to poke around the xbmc src tree and try to get an understanding for how the video decode/rendering works, and what might be needed.
I see on topfs2's github tree there is some gstreamer decoder support. I guess that should be sufficient for decoding? Or is there any reason that adding a native decoder would be better? There are some things like cropping codec output buffer (removing codec-edges) that you might loose out on w/ appsink approach. Cropping comes as an downstream-event from decoder to video sink, normally. Also, ffmpegcolorspace isn't really the hot ticket for performance.
What about on the rendering end of things? Has anybody looked at the IMG texture streaming extensions? Or alternatively, I've been working on an extension to dri2 to support video. It might be interesting to have a dri2 renderer. The idea with dri2 video would be that your OSD is a separate drawable (itself potentially using dri2) which the xorg driver can blend with the video however it sees fit (ie. use GPU, or ARGB blending in display with hw overlay).
Anyways, I'm a complete newb to the xbmc code base, just started looking at it this morning. But I know the hardware, so maybe with a bit of point in the right direction I could be helpful..