HD with Xvideo on i915GM (i810 driver)

Chad masterclc at gmail.com
Sun Nov 5 14:28:47 PST 2006


Thank you all for your replies so far.

> > 2) This card supports XVideo acceleration, not XvMC. Please correct
> > me if I'm wrong, but this means we're offloading scaling, color
> > conversion, etc. but nothing else. This is not the maximum amount of
> > acceleration possible, but as far as I know, Intel has not released
> > documentation on the GMA 900/950 for better acceleration. The chip is
> > capable of it and the previous generation Intel chips even supported it.
>
> Yes, the only chip with an XvMC driver is the i810, a rather old piece
> of hardware. Given our inability to ship docs, we've had to prioritize
> work on hardware support, and until HDTV came along, the CPU was more
> than capable of doing the rest of the decode pipeline. With HDTV
> becoming commonplace, we've put XvMC support onto our schedule. Of
> course, I'd love to just release the docs and let other people do this
> work for us. No luck so far on that front.
>
> > 3) My tests with a 3 GHz Intel CPU are pretty good. Basic playback
> > only eats at most, 30% of my CPU. I'm using VLC set to XVideo out,
> > but I've seen similar results with other players. This seems very
> > promising, until you start to apply de-interlacing, possibly color
> > correction. At that point, my 3 GHz Celeron is barely adequate for
> > smooth playback, and some types of de-interlacing put it over the top
> > and drop frames. 720p is absolutely no problem at all - it's lower
> > resolution and needs no de-interlacing. In all cases, scaling to full
> > screen has no impact on performance. These are tests from FC6 x86-64.
>
> Yeah, that's what we've learned -- HDTV is right at the edge of what a
> modern processor can manage. Of course, your celeron is a lot slower
> than current Intel CPUs, I would expect a new Core 2 Duo machine to be
> able to manage a complete video pipeline without too much difficulty. My
> real reason for wanting XvMC support is just power consumption; the GPU
> is a lot more efficient at this work than the CPU is. You can get micro
> ATX boards for Core 2 Duo processors that include either the 945 or 965
> chipset.

This is good (but unfortunate) info.  I was more hoping to use
something really really underpowered (like a 1.5Ghz Celeron M) and
have hardware do all the 'dirty' work.  That way, the possibility of
nearly complete passive cooling could be achieved (a single system fan
to move all the heat from the various components heatsinks).  But if
CPU will be doing the bulk of the HDTV processing, this sounds more
like a pipe dream, or, from your later points, a distant possibility.

> >  At the time I bought the machine,
> > I read the man page, it was a bit unclear and I got the impression
> > that XvMC would work with the GMA 900.
>
> Yes, the manual page doesn't make it as clear as it should that XvMC
> isn't supported on anything but 810 and 815 chipsets. You will see that
> XvMCSurfaces option is listed as only relating to the 810/815 chipsets
> though.
>
> > There is an interesting page here, although I'm not sure if their
> > Intel GMA 900/950 XvMC support bit is 100% accurate:
> > http://www.mythtv.org/wiki/index.php/XvMC
>
> No, as you can see it says that the driver supports XvMC on all Intel
> hardware, which is not the case.

I'll try to update the wiki a bit later with the info gleaned from
this discussion and other related discussions.  I didn't write it, but
I've got access to change it.

> > If I were to do this again, I would look into Unichrome-based GPUs as
> > they have potentially better acceleration support. I've not looked
> > into them fully, but I would suggest you do before you make your
> > purchase. And let's hope Intel gets with it and releases
> > documentation or code to enable XvMC (or even better, XvMC VLD!) soon
> > and lives up to their attempts to position themselves as open and
> > appealing to open source users.

I've got 2, and was looking for a 3rd when I came across this.  The
"problem" I'm having with my Unichrome options is that the newer
(cn700) based systems aren't capable of displaying HDTV through
hardware either (according to one of the openchrome developers); and
with the dominant HDTV (cn400) chipset there is a bug in MythTV that
doesn't (smoothly) display HDTV either (though Xine can with very
little problem).  So, something like the SP8000 (or the Commell LV-667
series) would be ideal if it actually worked in MythTV.  I was hoping
that the board I came across with the 915 would be able to fill in
this gap until the bug is fixed in MythTV.  The other part of the
"problem" is that with a board like the Commell LV-667T the VT1625 TV
Encoder isn't supported (well) in OpenChrome, requiring me to either
use Via's drivers (which don't integrate well with X and don't work at
all with MythTV) or wait.  So either way, it's the waiting game, as an
end user I can't complain, but I'd sure like to be able to help out
with *something*...

> We're trying. Releasing docs would be my preference as that would be
> someone else's responsibility, but failing that, we're hoping to write
> XvMC support for at least the 965 sometime soon. No, I don't have a
> schedule here, but it is on our list.
>
> Btw, we've started getting TV out working in the modesetting branch of
> the driver; the source code may work, but failing that, the header file
> has some useful comments about how the TV encoder works which should
> help anyone interested in finishing this work up.

That would be great to be able to have a collaberative effort in
getting XvMC into the later (especially the 915) chipsets.  It would
seem that the work would move along a lot faster and I could actually
have my 'dream' setup.
As a typical end user, I don't have much coding ability, so I just
have to sit in the sidelines watching things happen.  At best I can
provide feedback and debugging, but really not a whole lot else
without taking a few courses in hardware programming ;)

So, as an end user, I really appreciate the work everyone does.  But
I'm also frustrated when things don't work because I just have to say
"Uh, doesn't work here with this setup" and wait for someone to either
tell me I'm an idiot and what I did wrong, or fix the problem I
pointed out.

Thanks for the work so far, I'm looking forward to seeing some good
hardware acceleration (specifically for HDTV output) in the future.

-Chad

> --
> keith.packard at intel.com



More information about the xorg mailing list