Page 2 of 9

Re: Qt5WebKit + Gstreamer

Posted: Wed Jun 12, 2013 12:59 pm
by nemilos
Hello,

I'am trying to get 32bits color in webkit :D

With this patch :

http://thebugfreeblog.blogspot.it/2012/ ... ry-pi.html

Its seems to work, but seems to bug with some video with your gstreamer configuration :( ( on image / website 32bits color are fine .. )

Re: Qt5WebKit + Gstreamer

Posted: Wed Jun 12, 2013 1:20 pm
by albertd
nemilos wrote:Its seems to work, but seems to bug with some video with your gstreamer configuration :( ( on image / website 32bits color are fine .. )
The configuration is already set to 32bits, please see the config.txt. You don't need to apply an patch. What kind of issues do you see with the video?

Cheers,
Albert

Re: Qt5WebKit + Gstreamer

Posted: Wed Jun 12, 2013 1:57 pm
by nemilos
Hello,

Yes the framebuffer is in 32bits, but the rendering of qtwebkit seems to be different ...

---- without patch ----
But when we display a image ( or video ) in your mlbrowser, the rendering seems to be 24bits. ( gradient are "ugly" )
Both Image and Video play well,

--- with patch ( bugfreeblog ) ---
The image have now nice gradient, it seems to be 32bits, but get problem with video, some video ( low resolution DVD ) work, but HD video don't work ( not playing ) ( they work both without the patch ) ( with mlbrowser )


The patch ( from bugfreeblog ) is :

http://pastebin.com/LXjhDpin

Re: Qt5WebKit + Gstreamer

Posted: Wed Jun 12, 2013 2:10 pm
by albertd
Which browser are you using webkit1 or webkit2 based?

Re: Qt5WebKit + Gstreamer

Posted: Wed Jun 12, 2013 2:17 pm
by nemilos
Hello,

It's a fresh install of your buildroot, and i use your "mlbrowser" for test

I just setup a index.html and video / image in /var/www/

And start it with "mlbrowser file:///var/www/index.html"

Re: Qt5WebKit + Gstreamer

Posted: Wed Jun 12, 2013 2:26 pm
by albertd
Ok thanks for the info we will look into this. Keep you posted.

Re: Qt5WebKit + Gstreamer

Posted: Wed Jun 12, 2013 3:10 pm
by nemilos
Other thing, i try a <video> in a iframe, and this don't work.

index.html with <iframe src="video.html" />
video.html with <video src="video.avi" />

---------------------

Maybe the 32bits color is fixed when using wayland ...

Re: Qt5WebKit + Gstreamer

Posted: Wed Jun 12, 2013 3:14 pm
by albertd
Could be, but should also work with the eglfs, think it's a configuration issue on the egl. Keep you posted.

Re: Qt5WebKit + Gstreamer

Posted: Mon Jun 17, 2013 7:01 pm
by nemilos
Maybe ..

https://blog.qt.digia.com/blog/author/dcarr/

Color depth considerations

1) The powervr implementation we are relying on does not support
PVRSRV_PIXEL_FORMAT_RGB888 (24bit color depths), it does however support
PVRSRV_PIXEL_FORMAT_RGB565 and PVRSRV_PIXEL_FORMAT_ARGB8888

2) Ångström is busybox based, and the fbset command you will need to set 32
bit color depths on the console will not work with the default fbset
busybox symlink. You will therefore have to install and use fbset(.real)
in order to get 32bit color depths, which is a simple opkg install away for
the connected Beagle board and a bitbake away for the stranded.

Please note the color depth specified in the boot arguments

console=ttyS0,115200n8=noinitrd ip=dhcp rw root=/dev/mmcblk0p2 omapfb.mode=dvi:[email protected]

if you want 32 bit color depth, use:

console=ttyS0,115200n8=noinitrd ip=dhcp rw root=/dev/mmcblk0p2 omapfb.mode=dvi:[email protected]

followed by:

/usr/sbin/fbset.real -depth 32 -rgba 8/16,8/8,8/0,8/24

after your Linux kernel drops you in userspace with a kiss on the cheek. A
brave man once tried leaving the color depth at 16 in his boot args, and
jumping all the way to 32bit with fbset so he could change between the more
performant 16 bit color space and the hardware compositing ARGB offering.
Running the dedicated fbset command halved his vertical resolution
regardless of any other parameters he tried to pass fbset and he eventually
ran off to fight another day.

There is a clear performance hit of 7 fps when running hellogl_es2 in
32bit rather than 16bit, taking you down to 20 fps. This hit is even more
pronounced when setting a QGLWidget on the viewport of a QGraphicsView. I
am not sure who is responsible for this, and will be personally
investigating it in the future. Any conjecture/feedback/research performed
by the reader would be greatly appreciated.

Re: Qt5WebKit + Gstreamer

Posted: Fri Jun 28, 2013 8:32 pm
by nemilos
The patch i link above work !, i just set 256mo for gpu and it seems to not crash anymore... but the quality is still not perfect ( in gradient ) don't know why :(

Re: Qt5WebKit + Gstreamer

Posted: Wed Jul 17, 2013 8:21 pm
by nemilos
Hello,

the problem for 32 bits color in webkit seems okay in 5.1 ( no need to patch ), but it is still not okay in gradient.

Just go to http://www.html5test.com, and the gradient in background is ugly on mlbrowser :(

Re: Qt5WebKit + Gstreamer

Posted: Wed Jul 17, 2013 11:11 pm
by topguy
Regarding banding , this is something I have not tested, just based on observations.

Using qmlscene with some simple qml files I found that using the option "-transparent" highly improved gradients.

Looking at the sourcecode for qmlscene ( http://qt.gitorious.org/qt/qtdeclarativ ... e/main.cpp )
I see that the following code is run when -transparency is enabled.

Code: Select all

                if (options.transparent) {
                    surfaceFormat.setAlphaBufferSize(8);
                    window->setClearBeforeRendering(true);
                    window->setColor(QColor(Qt::transparent));
                    window->setFlags(Qt::FramelessWindowHint);
                }
I have no idea if this has any effect in mlbrowser (or why), but it might be worth a shot.

Re: Qt5WebKit + Gstreamer

Posted: Thu Aug 08, 2013 8:31 am
by Laeraren
Installed all prerequisite packages on latest Xubuntu, checked out the Git and had the thing make-ing for several hours only to encounter this:

Code: Select all

mkspecs/devices/linux-rasp-pi-g++/qeglfshooks_pi.cpp:95:68: error: declaration of C function 'int vc_dispmanx_element_change_attributes[...]' conflicts with
In file included from /home/andreas/builtroot-rpi/output/host/usr/arm-buildroot-linux-gnueabi/sysroot/usr/include/EGL/eglplatform.h:110:0
All a bit too cryptic for me, and I'm puzzled as to why it would happen, seeing as I have done everything exactly to instructions.

Re: Qt5WebKit + Gstreamer

Posted: Sat Aug 10, 2013 8:53 pm
by nemilos
I get the same error with the last repository

Re: Qt5WebKit + Gstreamer

Posted: Tue Aug 13, 2013 11:11 am
by Laeraren
nemilos wrote:I get the same error with the last repository
Well that's just dandy.

OP, which is the last version that's confirmed to actually, you know, build?

Edit: Just saw that the latest commit was 2 months ago. Guessing this project is as dead as the rest of the QtOnPi project.

Re: Qt5WebKit + Gstreamer

Posted: Fri Aug 16, 2013 9:30 am
by albertd
We've added a patch for the compile error on the qtbase

Re: Qt5WebKit + Gstreamer

Posted: Fri Aug 16, 2013 3:03 pm
by LingPung
Hi Guys,
any updates regarding the gradient band issue?
I'm displaying in the mlbrowser a gradient with css3 as well as with an png image. in both cases there are strong bands in the gradient, which don't occur in other browsers such as chromium…

as i'm a total newbie on this, i'm too dumb to apply the patch nemilos suggested :(

hope to here from you!

Re: Qt5WebKit + Gstreamer

Posted: Sat Aug 17, 2013 7:02 am
by albertd
Seems like a color depth issue, we'll have a look.

Re: Qt5WebKit + Gstreamer

Posted: Thu Oct 10, 2013 12:59 pm
by nemilos
Hello,

I tested again and still problem in gradient :( ( http://html5test.com )

With the snowshoe browser


Gradient = Success
Video = Fail

With the mlbrowser

Gradient = Fail
Video = Success

The key is in

"
surfaceFormat.setAlphaBufferSize(8);
"

But don't know how to implement it on mlbrowser.

If we focus on snowshoe they use the "setAlphaBufferSize(8)"


thx

Re: Qt5WebKit + Gstreamer

Posted: Thu Oct 10, 2013 1:44 pm
by albertd
Yes you're correct, we will have a look thanks for the info!

Cheers,
Albert

Re: Qt5WebKit + Gstreamer

Posted: Sat Oct 12, 2013 9:41 am
by _Mark_
Hello! I'm giving a try to your great work.
The compilation fails with this error:

Code: Select all

>>> qt5quick1 5.1.1 Installing to target
cp -dpf /home/mark/dev/rpiqt5/buildroot-rpi/output/host/usr/arm-buildroot-linux-gnueabi/sysroot/usr/lib/libQt5Declarative.so.* /home/mark/dev/rpiqt5/buildroot-rpi/output/target/usr/lib
cp -dpf /home/mark/dev/rpiqt5/buildroot-rpi/output/host/usr/arm-buildroot-linux-gnueabi/sysroot/usr/lib/qt/plugins/qmltooling/libqmldbg_inspector.so /home/mark/dev/rpiqt5/buildroot-rpi/output/target/usr/lib/qt/plugins/qmltooling/
cp: impossibile eseguire stat di "/home/mark/dev/rpiqt5/buildroot-rpi/output/host/usr/arm-buildroot-linux-gnueabi/sysroot/usr/lib/qt/plugins/qmltooling/libqmldbg_inspector.so": File o directory non esistente
make: *** [/home/mark/dev/rpiqt5/buildroot-rpi/output/build/qt5quick1-5.1.1/.stamp_target_installed] Error 1
In /home/mark/dev/rpiqt5/buildroot-rpi/output/host/usr/arm-buildroot-linux-gnueabi/sysroot/usr/lib/qt/plugins/qmltooling/ I have only the following files:

Code: Select all

libqmldbg_qtquick2.so  libqmldbg_tcp.so

My host machine is a Debian Jessie 32-bit and I followed the instructions provided in the Readme.

Re: Qt5WebKit + Gstreamer

Posted: Sat Oct 12, 2013 10:27 am
by albertd
git pull, qtquick1 should install correctly now into the target environment.

Cheers,
Albert

Re: Qt5WebKit + Gstreamer

Posted: Sat Oct 12, 2013 1:25 pm
by _Mark_
Yep! It did the trick!
I'm not an expert but I'd like to understand: how one should know to "git pull" at that point? It sounds a bit magic ;)

Re: Qt5WebKit + Gstreamer

Posted: Sat Oct 12, 2013 2:53 pm
by _Mark_
I need kernel header/source to compile a custom driver.
How to add them to the rootfs? I looked through the menuconfig but I can't see a suitable item.

Re: Qt5WebKit + Gstreamer

Posted: Sat Oct 12, 2013 2:56 pm
by albertd
nemilos wrote:Hello,

I tested again and still problem in gradient :( ( http://html5test.com )

With the snowshoe browser


Gradient = Success
Video = Fail

With the mlbrowser

Gradient = Fail
Video = Success

The key is in

"
surfaceFormat.setAlphaBufferSize(8);
"

But don't know how to implement it on mlbrowser.

If we focus on snowshoe they use the "setAlphaBufferSize(8)"


thx
Everything is pushed to the git, should be okay now