HD with Xvideo on i915GM (i810 driver)
galenz at zinkconsulting.com
galenz at zinkconsulting.com
Sun Nov 5 10:42:05 PST 2006
On Nov 5, 2006, at 2:58 AM, Chad wrote:
> On 10/23/06, Alan Hourihane <alanh at fairlite.demon.co.uk> wrote:
>> On Mon, 2006-10-23 at 09:03 -0400, Ken Mandelberg wrote:
>> > Alan Hourihane wrote:
>> >
>> > > modesetting doesn't have the fixes, but in i830_video.c you
>> have to bump
>> > > the MAX_HEIGHT to at least 1088.
>> > >
>> >
>> > Yes, I figured that out, It also requires upping "Option
>> 'LinearAlloc"
>> > "integer' above 6144.
>> >
>> > I increased it a bit liberally, but would be interested in the
>> 1920x1080
>> > calculation of 6144 to see how to compute the correct value for
>> 1088.
>>
>> I can't remember how that was derived, but it should be
>> 1920*1088*2 for
>> the frame, and then *2 again because it's double buffered, making
>> 8160.
>>
>> I'll update the manpage.
>>
>> Alan.
>>
>> _______________________________________________
>
> Hello!
>
> Just doing a quick search before I throw down a couple hundred
> bucks :)
>
> To recap:
>
> The 915GM chipset is capable of displaying full resolution HDTV
> (1080i) using hardware acceleration (so a 1.5Ghz Pentium M should
> suffice) using the latest and greatest driver from git (running
> Gentoo)? The board I'm looking at:
> http://www.logicsupply.com/product_info.php/products_id/410
> Has Svideo, Composite and Component (as well as VGA) included with it,
> an added bonus I can pick up:
> http://www.logicsupply.com/product_info.php/products_id/457
> To add DVI as well. I'm hoping to be able to output HDTV over any of
> those interfaces (though I definitely understand that Composite/S-Vid
> isn't capable of displaying HDTV, but hoping that the hardware will
> simply down res without any user interaction) using MythTV as well as
> Xine and/or Mplayer.
>
> So, is this a pipe dream, or should this work?
>
> Any info is much appreciated!
>
> Thanks!
>
> -Chad
I have a board with the GMA 900 (the GPU with the 915 chipset) and
have learned a number of things:
1) For proper HD performance, you will have to compile and install
the drivers yourself. Most if not all distributions (even the new and
shiny FC6) do not ship versions that are up to date. Plan on hitting
their git repository to do this. You may also need to increase the
LinearAlloc value in your xorg.conf file for 1920x1080 (technically,
1920x1088) resolution HD video to properly play.
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.
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.
4) I have no experience with anything but VGA video output with this
chip.
I believe that if Intel implemented full XvMC, the situation would be
a lot better here for low end CPUs. For your application, it's a bit
borderline. I have no doubt straight 720p or 1080i would play on your
machine with XVideo out. I think you might run into trouble with the
de-interlacing, however. I just am not entirely sure how the Pentium
M compares to the Celeron D in terms of performance, nor have I
evaluated the benefits (if any) of running my system entirely with 64-
bit code. If you're going to be scaling down, you may be able to get
away without any complex de-interlacing, eliminating the de-
interlacing problem.
This is what I wish I had known before I went forward with getting
this hardware. I think if there is another chipset that supports full
XvMC, it would be worth looking at first, as that's obviously going
to be even lower CPU usage. There was a discussion some time back
with Keith Packard mentioning this. 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. It does not. Intel has not
released documentation nor drivers, which I found very disappointing
and almost misleading, because the reason for purchasing their
hardware was open source support.
The only really good news I have here is that playback with XVideo -
in every player - has been utterly flawless. None of the problems I
hear about from NVidia users trying to use this.
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
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.
And, if I am wrong on any of the facts I've brought up, somebody
please correct me!
-Galen
More information about the xorg
mailing list