Porting Chrome on i.mx6 with hw accelaration?

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

Porting Chrome on i.mx6 with hw accelaration?

16,033 Views
subodhharmalkar
Contributor II

Hi everyone,

 

I am trying to port Chromium (browser framework) with Awesomium on i.mx6q (from Boundary Devices). Anyone in this community has any experience with either i.mx6 or i.mx5 ?

 

So far, narrowed my list of missing packages between LTIB and Chromium dependency list are attached.

 

I would really appreciate any pointers.

 

Thanks a bunch.

 

Subodh

Original Attachment has been moved to: only.missing.zip

0 Kudos
Reply
32 Replies

4,261 Views
ferranselva
Contributor I

Hello,

I have a variscite VAR-SOM-MX6 (VSM-M6-501) board, and I'm interested in playing a video on this board using hardware video acceleration. It is possible to enable the hardware video acceleration( via Drivers) for Ubuntu distribution?


If its is not possible, Can I install the chromium browser on the Yocto OS ? (This distribution have the the Hardware acceleration enabled). In case that you have a manual about how to carry out this, can you provide me?

Perhaps, somebody has made this before, it is possible to get the binary files of the browser?

Thanks

Ferran.

0 Kudos
Reply

4,262 Views
OtavioSalvador
Senior Contributor II

We did this for some customers (porting newer Chromium support to work with VPU). Get in touch if you have interest in a quote for it.

4,263 Views
petergreve
Contributor I

Hi Otavio,

I am new here and do not know if I am really right here, as the the last reply is already some month old.

I'd like to understand what is necessary to get the graphics hardware acceleration (GPU not VPU) running on an i.MX6 board when Rendering through Chromium.


To get GPU graphics rendered supported by hardware acceleration, do I really need a ported Chromium, as you mentioned above ?

So is the hardware acceleration part of the Chromium or of the OpenGL driver or of the Vivante graphics driver ?

What has to be ported to get graphics hardware acceleration ?

Is there already a solution for some i.MX6 board that you know?

0 Kudos
Reply

4,263 Views
OtavioSalvador
Senior Contributor II

Hello petergreve,

Yes Chromium has support for this included in Dizzy release of community BSP[1] and we also did some demos showing this being used using our commercial distribution[2].

1. FSL Community BSP

2. Nitrogen6X Lite running O.S. Systems' Embedded Linux with HTML5 Demo in Chromium

We have made some products based on Chromium using Boundary Devices' Nitrogen6X (Quad) and Nitrogen6 Lite (Solo), Variscite SoM (Quad), iWave i.MX6 SBC (Dual). I don't know which board you are using for your development though.

Depending on the product the Chromium might be Ok or not. We developed internally the support for QtWebEngine which allows EGLFS use and Blink backend rendering and this offers better performance but it may, or not, be necessary.

0 Kudos
Reply

4,257 Views
petergreve
Contributor I

Just for my understanding.

Whose job is to decide if the rendering will be done in software (CPU) or hardware accelerated (GPU)?

Is that a part of Chromium or of the graphics driver or somewhat else?

As far as I know, Chromium is just using the openGL(ES) interface; so it shouldn’t have any graphics dependencies.

So the component (graphics driver / rendering engine) that Chromium is talking to should handle the hardware acceleration.

On a PC this is the job of the driver for the graphics board that has to handle the OpenGL acceleration or not.

So OpenGL should be the separator between the app like Chromium and the graphics driver like Nvidia.

Is it the same on i.MX6 ?

You mentioned Blink.

Blink is the rendering engine of Chromium?

And Blink is integrated in Chromium ?

So inside Chromium all rendering will be done through Blink ??

So OpenGL is just the interface inside Chromium to the Blink backend and not a separator to an outside graphics driver ?

The puzzle is still a bit confusing to me.

0 Kudos
Reply

4,252 Views
OtavioSalvador
Senior Contributor II

Peter,

Yes Chromium uses OpenGL ES2 interface but there are some issues which has been ironed out. As I said, this is integrated in meta-fsl-arm already (1.7 - Dizzy).

Blink is the rendering engine which is essentially a fork from an old WebKit version. This is the engine now used in Chromium. So Blink uses the OpenGL ES2 to render the WebGL and other accelerated stuff on screen.

0 Kudos
Reply

4,252 Views
sanjeevsharma
Contributor IV

Hi Otavio,

Happy New Year !

Do we support QT 5.5 or QT 5.6 webengine on imx6q based reference board? When we are executing webengineviewer simple QML based application using QtWebengine which is configured as wayland-egl platform plugin. Qt app executed successfully and we can see a new screen launched but without content.

There are so many post which talk about rendering problem with QT5 on IMX6. is that correct ?

Any idea would be appreciated ?

Regards

0 Kudos
Reply

4,252 Views
OtavioSalvador
Senior Contributor II

Yes; we have QtWebEngine 5.5 and 5.6 support but this is a commercial offer of O.S. Systems.

If you are interested please contact me directly.

Regards,

0 Kudos
Reply

4,252 Views
sanjeevsharma
Contributor IV

Thanks Otavio,

You mean to say Freescale yocto distribution doesn't support QtWebEngine 5.5 and 5.6 out of the box but there is a commercial offer provided by your company.

But I would like to understand is the commercial offer is in QtWebEngine 5.5 and 5.6 code or some additional rendering library required to support it.

Regards

Sanjeev Sharma

0 Kudos
Reply

4,252 Views
OtavioSalvador
Senior Contributor II

Yes; you can enable QtWebEngine without our layer but it will be not including:

  • GPU acceleration for some parts
  • VPU integration

We provide those.

0 Kudos
Reply

4,252 Views
sanjeevsharma
Contributor IV

Thanks Otavio,

You mean to say Imx6 Freescale bsp do support QTWebEngine but rendering wouldn't work without your change.

Apart from the change you are doing,Do we also need any updated Libraries from free-scale for rendering ? I mean to say is there any specific libraries needed from Free-scale for page rendering ?

Regards

Sanjeev Sharma

0 Kudos
Reply

4,252 Views
OtavioSalvador
Senior Contributor II

Rendering will work; GPU acceleration will be more limited and VPU support won't be included.

We have developed the integration for those two.

0 Kudos
Reply

4,252 Views
sanjeevsharma
Contributor IV

Thanks Otavio,

Recently we have integrated Qt5.5.1 for i.MX6 from Yocto Fido branch, When running the webengine example,QtWebengine is not rendering the content to the screen. A window is opened and we can see that the HTML file (content is only a string) is read but the window stays white.we are using wayland-EGL configuration.

On the other hand same QT5 code runs fine on host system i.e ubuntu system which prove that QT5 code has no problem. I am suspecting issue in rendering libraries needed for the imx6 platform.I have also explored over the various QT Mailing list and found that lots of people facing the Web engine rendering issue on embedded platform.

Do you have any idea where could be the problem  ? Please provide me the component responsible for this issue because once I will have this information,it would be easy for me to convince customer with your offering.

Please elaborate me in detail where your commercial offer fit in this problem ?

Regards

Sanjeev Sharma

0 Kudos
Reply

4,252 Views
OtavioSalvador
Senior Contributor II

Check if you have liberation-fonts installed on the rootfs, this is normally forgotten.

0 Kudos
Reply

4,252 Views
sanjeevsharma
Contributor IV

Hello Otavio,

I have checked and found that "liberation-fonts" is already mentioned in wayland weston recipe.Do you know the exact path  in build rootfs.

Do we have any prebuilt yocto image where QtWebengine support in enabled and working.

Regards

Sanjeev Sharma

0 Kudos
Reply

4,252 Views
OtavioSalvador
Senior Contributor II
0 Kudos
Reply

4,252 Views
petergreve
Contributor I

Hi Otavio,

thanks for your input

I'll check Dizzy

sorry I can not find a way to rate your answer

Peter

0 Kudos
Reply

4,263 Views
ferranselva
Contributor I

Hi Otavio,

Thanks for your fast reply, but we thought carrying out this task at zero-cost.

Can you give me an estimation of this quote for thinking about this and determine if it has sense in our project?

0 Kudos
Reply

4,263 Views
OtavioSalvador
Senior Contributor II

We can discuss this privately.

0 Kudos
Reply

4,263 Views
OtavioSalvador
Senior Contributor II

We have put fsl-image-gui online so people can test it easily. You can download the .sdcard file (for your specific machine) and dd it to the sdcard.

Regards,

0 Kudos
Reply