Util.draw_correct displays a black image

Hello,

we have stumbled upon a situation (sufficiently repeatable) where our node.lua does not display an image (a full HD one) but instead displays a full black rectangle.
Just to be sure this is not the GL surface which should be greenish.

The problem seems to be out of memory and then errors in images (of course). From then on the image never displays again (on standalone info beamer).

[image.c] [0x11bf968/node/AST_17.png] looks like 1920x1080 RGBA png
glGetError 0x505
glGetError 0x505
glGetError 0x505
glGetError 0x505
glGetError 0x505
[image.c] [0x1156830/node/AST_6.png] out of memory
[image.c] [0x1158a90/node/indice_fetta2-blu.png] out of memory
[image.c] [0x11be9e0/node/AST_15.png] out of memory

errors are a little different on info-beamer stand alone (above) and on hosted (below ).
On hosted there don’t seem to be out of memory but the error appears (less frequently but predictably) always after these logs. Seems more robust the hosted version.

May  8 16:01:52 info-beamer-4159166679 user.notice syncer: cron: running check
May  8 16:01:52 info-beamer-4159166679 user.notice syncer: cron: running cleanup

Any idea on how to check the limits? Or suggestions on how to optimize advance loading of images and release of the aforementioned.
We use image:dispose() but evidently not enough.
Can we increase gpu_mem=192 in config.txt or check from LUA the available memory?

Thanks

You can send SIGUSR2 to info-beamer. For example using pkill -usr2 info-beamer. This should give you a list of all current objects on the log output of info-beamer. If there’s a lot of images, you have a leak somewhere and need to explicitly :dispose() unused images.

info-beamer hosted uses gpu_mem=256 for Pis with 1GB of RAM as seen on the device page. So I highly recommend using that as well.

1 Like