penk / oxide-eglfs-snap

Hardware accelerated WebView for Ubuntu Core, without display server
14 stars 10 forks source link

Almost no site renders properly on rpi2 #2

Open didrocks opened 7 years ago

didrocks commented 7 years ago

I tried this snap on the rpi2.

It seems that no site is loading properly apart from http://google.com/ncr and http://google.com. I tried a lot of website and they either render partially, or leave the page blank, or have black and white flickering. Even a very simple page like:

<style>
#snow{
    background-image: url('http://www.wearewebstars.dk/codepen/img/s1.png'), url('http://www.wearewebstars.dk/codepen/img//s2.png'), url('http://www.wearewebstars.dk/codepen/img//s3.png');
    position: absolute;
    top: 0;
    left: 0;
    height: 100%;
    width: 100%;
    animation: snow 20s linear infinite;
  background-color: #121212
}
@keyframes snow {
  0% { background-position: 0px 0px, 0px 0px, 0px 0px }
  50% { background-color: #1c1c1c }
  100% {
       background-position: 500px 1000px, 400px 400px, 300px 300px;
        background-color: #121212;
    }
}
</style>

<div id="snow">
</div>

Doesn't render at all (no javascript, just a css animation).

Is there anything I'm missing in the launch parameters?

Also, can you publish as well the snap recipe for armhf with the correct qt pre-build armhf? Is it possible to build it on launchpad (I think you can't due to the overlay ppa, isn't it)?

penk commented 7 years ago

Hi @didrocks, tested with a RPi2 and snap from beta channel (rev. 5), your example page works for me: https://dl.dropboxusercontent.com/u/2800395/IMG_9497.MOV Would you mind sharing your log with me? One thing you can try is the gpu_mem parameter in /boot/uboot/config.txt.

I've exposed debugging information in rev.5, and I do see the following error but it doesn't seem to stop loading the page:

eglCreateImageKHR:  failed to create image for buffer 0x7 target 12465 error 0x300c
[1117/123513:ERROR:oxide_compositor_gpu_shims.cc(258)] Error creating EGLImage: EGL_BAD_PARAMETER

As for building, since we need libraspberrypi0 in ppa, it's easier to have binaries under data/.

didrocks commented 7 years ago

Thanks for trying it our @penk. Is that a fresh ubuntu core installation on your RPi2? I just did a flash, boot it and tried various urls (like http://www.ubuntu.com, this local web page…) and nothing really renders apart from google.com.

Here is a pastebin of the logs (from the application starts): http://paste.ubuntu.com/23490500/

I think the issue is related to:

[1117/132232:ERROR:texture_manager.cc(2993)] [.RenderCompositor-0xc19d80]GL ERROR :GL_OUT_OF_MEMORY : glTexImage2D: 

Did you change anything in config.txt compared to default ubuntu core image?

penk commented 7 years ago

@didrocks then it's a known issue, you'll need gpu_mem, please refer to: https://github.com/penk/oxide-eglfs-snap/tree/rpi2#config

I think this can be improved once we have configuration hook against gadget snap for pi.

didrocks commented 7 years ago

oh sorry, I did miss it.

As we need to remount the partition rw on ubuntu-core until we have correct default parameters, I'll edit the README.md and send something your way. However, the refresh rate is really terrible here with big bumps in animations an such, is there any other parameter that you change which could help? (I have an average screen, so more textures of course, but even trying to have one set of images and slowing down, the slugginess is really noticeable)

Could we have this as a part? Would be cool for people who want to do a quick KIOSK just do add after:[oxide] for instance and setting up as a service the binary, pointing to the website they want.

penk commented 7 years ago

Will look into the frame rate issue. Cloud part sounds cool how do I make one?

didrocks commented 7 years ago

All informations are here: http://blog.sergiusens.org/posts/The-Snapcraft-Parts-Ecosystem/. The only thing to know is that / is replaced by - for namespacing. The rest is still current :)