Author Topic: Adding alpha blending to the Openchrome drivers?  (Read 14561 times)

Hipper

  • Regular Poster
  • **
  • Posts: 23
    • View Profile
Adding alpha blending to the Openchrome drivers?
« on: January 10, 2008, 06:36:23 am »
Does anyone know what it would take to add alpha blending to the Openchrome drivers to support UI2 overlays? I am an enterprise application software engineer and I have done some graphics programming but haven’t done any real driver work to speak of. I would be more then wiling to try to get UI2 overlays to work on the VIA systems if someone would be willing to point me in the right direction.

totallymaxed

  • LinuxMCE God
  • ****
  • Posts: 4660
  • Smart Home Consulting
    • View Profile
    • Dianemo - at home with technology
Re: Adding alpha blending to the Openchrome drivers?
« Reply #1 on: January 10, 2008, 11:35:11 am »
Does anyone know what it would take to add alpha blending to the Openchrome drivers to support UI2 overlays? I am an enterprise application software engineer and I have done some graphics programming but haven’t done any real driver work to speak of. I would be more then wiling to try to get UI2 overlays to work on the VIA systems if someone would be willing to point me in the right direction.

Well I can't say for sure... but it would be a fantastic development if you could achieve it. The Via hardware is more than upto the job... its purely the drivers that are holding things back.

Our experience is with the Unichrome Pro drivers... and i know that adding support for alpha blending or overlay has proved to challenging.
Andy Herron,
CHT Ltd

For Dianemo/LinuxMCE consulting advice;
@herron on Twitter, totallymaxed+inquiries@gmail.com via email or PM me here.

Get Dianemo-Rpi2 ARM Licenses http://forum.linuxmce.org/index.php?topic=14026.0

Get RaspSqueeze-CEC or Raspbmc-CEC for Dianemo/LinuxMCE: http://wp.me/P4KgIc-5P

Facebook: https://www.facebook.com/pages/Dianemo-Home-Automation/226019387454465

http://www.dianemo.co.uk

rafelbev

  • Newbie
  • *
  • Posts: 6
    • View Profile
Re: Adding alpha blending to the Openchrome drivers?
« Reply #2 on: January 10, 2008, 04:42:00 pm »
I have experience with working on these drivers for real thinclients as my day job at work. Even managed to get dual head working out of them.

What do you require to get UI2 working ?
3d? DRI? xv?

--
Raphael

Hipper

  • Regular Poster
  • **
  • Posts: 23
    • View Profile
Re: Adding alpha blending to the Openchrome drivers?
« Reply #3 on: January 10, 2008, 11:44:51 pm »
Raphael,

I wish I knew, that's exactly the question I need an answer to  ;)

I'm new to LMCE and Openchrome; I have just started looking through their source today. It looks like there is support for overlays in Openchrome but I can't tell if the latest via chipsets are supported. It also looks like 3d DRI and vx are all supported but again not sure if the latest chipsets are stable.

If someone can help us understand what LMCE needs in the Openchrome drivers to at least support UI2 overlays I bet the two of us could make it work?

I'll keep digging around in the code and try to understand it better and let you know if I figure out what support is missing.

darrenmason

  • Addicted
  • *
  • Posts: 529
    • View Profile
Re: Adding alpha blending to the Openchrome drivers?
« Reply #4 on: January 11, 2008, 12:27:04 am »
I have experience with working on these drivers for real thinclients as my day job at work. Even managed to get dual head working out of them.

What do you require to get UI2 working ?
3d? DRI? xv?

--
Raphael

Raphael,
The Pluto developers are best to answer this. Perhaps Andrew (TotallyMaxed) or Danielk could forward the question to them and get you guys talking.

regards
Darren

totallymaxed

  • LinuxMCE God
  • ****
  • Posts: 4660
  • Smart Home Consulting
    • View Profile
    • Dianemo - at home with technology
Re: Adding alpha blending to the Openchrome drivers?
« Reply #5 on: January 11, 2008, 02:00:35 pm »
I have experience with working on these drivers for real thinclients as my day job at work. Even managed to get dual head working out of them.

What do you require to get UI2 working ?
3d? DRI? xv?

--
Raphael

Raphael,
The Pluto developers are best to answer this. Perhaps Andrew (TotallyMaxed) or Danielk could forward the question to them and get you guys talking.

regards
Darren

The main thing that stops UI2 working on Via graphics chips is that none of the drivers at present support Composite mode using the acceleration available in the Via graphics chip. My understanding from talking to some of the Pluto devs close to this is that if that was fixed then UI2 would possible.
Andy Herron,
CHT Ltd

For Dianemo/LinuxMCE consulting advice;
@herron on Twitter, totallymaxed+inquiries@gmail.com via email or PM me here.

Get Dianemo-Rpi2 ARM Licenses http://forum.linuxmce.org/index.php?topic=14026.0

Get RaspSqueeze-CEC or Raspbmc-CEC for Dianemo/LinuxMCE: http://wp.me/P4KgIc-5P

Facebook: https://www.facebook.com/pages/Dianemo-Home-Automation/226019387454465

http://www.dianemo.co.uk

rafelbev

  • Newbie
  • *
  • Posts: 6
    • View Profile
Re: Adding alpha blending to the Openchrome drivers?
« Reply #6 on: January 11, 2008, 02:23:10 pm »
It should surely be possible since the Fiire machines have some support. Now if this is a case of using drivers which can't be redistributed by lmce but can be downloaded separately by the user, then its still doable.

rafelbev

  • Newbie
  • *
  • Posts: 6
    • View Profile
Re: Adding alpha blending to the Openchrome drivers?
« Reply #7 on: January 11, 2008, 02:58:00 pm »
I just gave it a try on a VIA P4M800Pro. There are quite a lot of variants for Unichrome chipsets, but the driver is basically the same. I only needed to add the option to enable the Composite extension in my xorg.conf to get it working.

The output of xdpyinfo shows that the composite extension was indeed loaded. Can someone provide me with a static binary of a utility that uses composite ? Just for a quick test...

I will not be in a position to test LMCE while at work...

But at least, this is promising well

« Last Edit: January 11, 2008, 03:06:48 pm by rafelbev »

totallymaxed

  • LinuxMCE God
  • ****
  • Posts: 4660
  • Smart Home Consulting
    • View Profile
    • Dianemo - at home with technology
Re: Adding alpha blending to the Openchrome drivers?
« Reply #8 on: January 11, 2008, 03:07:27 pm »
It should surely be possible since the Fiire machines have some support. Now if this is a case of using drivers which can't be redistributed by lmce but can be downloaded separately by the user, then its still doable.

The Fiire drivers are based on Via's Unichrome Pro II drivers and were built for the last rev of Pluto before the move to Kubuntu 7.04 and LinuxMCE. Under LinuxMCE 7.04 the Fiire MD's add as Pluto 044 machine (they boot a 044 Kernel etc) and the drivers just work enough to deliver UI2. However moving these drivers to LinuxMCE-0710 is I understand proving very difficult.

What is needed is a version of OpenChrome or Unichrome Pro that supports Composite properly under Kububtu 7.10... exploiting the hardware accelleration
Andy Herron,
CHT Ltd

For Dianemo/LinuxMCE consulting advice;
@herron on Twitter, totallymaxed+inquiries@gmail.com via email or PM me here.

Get Dianemo-Rpi2 ARM Licenses http://forum.linuxmce.org/index.php?topic=14026.0

Get RaspSqueeze-CEC or Raspbmc-CEC for Dianemo/LinuxMCE: http://wp.me/P4KgIc-5P

Facebook: https://www.facebook.com/pages/Dianemo-Home-Automation/226019387454465

http://www.dianemo.co.uk

rafelbev

  • Newbie
  • *
  • Posts: 6
    • View Profile
Re: Adding alpha blending to the Openchrome drivers?
« Reply #9 on: January 11, 2008, 03:17:28 pm »
This is probably what you are looking for. There is even support for other precompiled stuff for Ubuntu 7.10. I didn't even need any of that crap since I don't use any 3d or mpeg decoding on the thinclients.

Do you know how to package the driver ?

totallymaxed

  • LinuxMCE God
  • ****
  • Posts: 4660
  • Smart Home Consulting
    • View Profile
    • Dianemo - at home with technology
Re: Adding alpha blending to the Openchrome drivers?
« Reply #10 on: January 12, 2008, 02:12:11 am »
This is probably what you are looking for. There is even support for other precompiled stuff for Ubuntu 7.10. I didn't even need any of that crap since I don't use any 3d or mpeg decoding on the thinclients.

Do you know how to package the driver ?

Hi,

If you search the forum you will find plenty of references to the Via Unichrome Pro drivers and that page and others on the Via site. Please use the sources provided there an build the Via Unichrome installation package and then test it yourself... if you can get UI2 running smoothly with less than 90% CPU usage then you have something. Let us know how you get on... and post the working driver installer here when you do ;-)
Andy Herron,
CHT Ltd

For Dianemo/LinuxMCE consulting advice;
@herron on Twitter, totallymaxed+inquiries@gmail.com via email or PM me here.

Get Dianemo-Rpi2 ARM Licenses http://forum.linuxmce.org/index.php?topic=14026.0

Get RaspSqueeze-CEC or Raspbmc-CEC for Dianemo/LinuxMCE: http://wp.me/P4KgIc-5P

Facebook: https://www.facebook.com/pages/Dianemo-Home-Automation/226019387454465

http://www.dianemo.co.uk

tkmedia

  • wants to work for LinuxMCE
  • **
  • Posts: 937
    • View Profile
    • LMCECompatible
Re: Adding alpha blending to the Openchrome drivers?
« Reply #11 on: January 12, 2008, 04:49:26 pm »
I have installed theses drivers on my Via PC2500E 1 Gb Ram and Enabled "Composite"

Here is what I have so far:

UI OK so far

UI2 most menu work fine Except the media menu and the setup wizard ( PC Locks Up)
So can not play media through LMCE.
I can go to the KDE Desktop while running UI2 the launch xine or mplayer and get about 45-60 cpu usage while running a recorded HDTV show at 1280x1024.

UI3 gets what I call the disconnected window where the video ends up on the KDE Desktop instead of in focus on the orbiter (seen this with various nvidia drivers on other pc's)

But at least its working now. wit UI1.
Couldn't even start x prior to these drivers.

Thanks
Let me know if I can test anything.
My Setup http://wiki.linuxmce.org/index.php/User:Tkmedia

For LinuxMce compatible  systems and accessories
http://lmcecompatible.com/

danielk

  • Guru
  • ****
  • Posts: 153
    • View Profile
Re: Adding alpha blending to the Openchrome drivers?
« Reply #12 on: January 13, 2008, 01:09:31 am »
The driver needs to support 3 basic things:

Composite + Render + ARGB GLX buffers

The Orbiter code is written entirely using X.org standard extensions. My understanding is that the VIA chipsets, at least the latest ones, can support full alpha blended overlay. The problem is that #1 VIA doesn't release the specs, except under NDA & #2 there aren't a huge number of developers who have the skills needed to extend the OpenChrome drivers to support OpenGL + Composite in the drivers, especially for free.

1audio

  • Addicted
  • *
  • Posts: 552
    • View Profile
Re: Adding alpha blending to the Openchrome drivers?
« Reply #13 on: January 13, 2008, 07:24:39 pm »
And other little problems in the Linux drivers- like not using the correct video timings. The Via hardware support MPEG2 acceleration and can supposedly do the Alpha blending but the custom drivers aren't really stable. And they are specific to an earlier version of the Kernel so they can't be used with 704.

rafelbev

  • Newbie
  • *
  • Posts: 6
    • View Profile
Re: Adding alpha blending to the Openchrome drivers?
« Reply #14 on: January 13, 2008, 10:35:45 pm »
The driver needs to support 3 basic things:

Composite + Render + ARGB GLX buffers

The Orbiter code is written entirely using X.org standard extensions. My understanding is that the VIA chipsets, at least the latest ones, can support full alpha blended overlay. The problem is that #1 VIA doesn't release the specs, except under NDA & #2 there aren't a huge number of developers who have the skills needed to extend the OpenChrome drivers to support OpenGL + Composite in the drivers, especially for free.

My understanding is that not all VIA chips are equal and different "flaws" in the driver vary depend on the model of the MD. I do understand your grief regarding the drivers released by VIA but this is no different from NVidia's position. I think the best thing to do is understand exactly what model of Unichrome Pro is used on the Fiire Station from the devs of the device and see what driver is being used. I would also like to know what the term "licensed" driver means. I know that ddamron has a model. I think that the openchrome drivers are a dead road since they are not actively developed on the newer chips especially regarding 2D/3D acceleration.

We should be in a good position to help integrate these drivers for 710 since that is what they advertise as doing. If there are any problems, we should bug VIA regarding the issues and hope that they solve the issue in their driver. It helps that we use something similar to what Fiire are using since this would allow us to use the same channels that they are using and help each other to end up with less bugs/issues.