Divice "/dev/graphics/fb1" is a overlay buffer of "/dev/graphics/fb0".
I want to display a overlay image using fb1 on screen(fb0).But no matter what i write to fb1, there is no display on screen(fb0).
How to solve this problem. This bother me many day.
Thanks!
Solved! Go to Solution.
Hi,
Did you make sure to unblank the overlay framebuffer?
# echo 0 > /sys/class/graphics/fb1/blank
Regards,
Gary
Hi,
Did you make sure to unblank the overlay framebuffer?
# echo 0 > /sys/class/graphics/fb1/blank
Regards,
Gary
Thanks a lot .
I use ioctl api to unblank the overlay framebuffer and it works.
But why should I blank the buffer.
Well it is a choice made in the driver, by default overlays are blanked:
linux-imx6/mxc_ipuv3_fb.c at boundary-imx_3.14.28_1.0.0_ga · boundarydevices/linux-imx6 · GitHub
You can modify the driver to unblank it by default by I would personally just keep the ioctl call from the user-space.
Regards,
Gary
Get it!And thanks a lot for your patience!
how did you test? could you share the command? I tested on the mx6q board, it's successful, I use ./mxc_vpu_test.out to test on the fb0 and fb1
Hi,
Well I tried it using gstreamer and the gstreamer-imx plugin:
# echo 0 > /sys/class/graphics/fb1/blank
# gst-launch-1.0 filesrc location=/root/tears_of_steel_1080p.webm ! matroskademux ! imxvpudec ! imxipuvideosink framebuffer=/dev/fb1
Also you can try writing to the framebuffer directly
# cat /dev/urandom > /dev/fb1
Regards,
Gary