I learned recently how to use Xvfb virtual Linux framebuffer:
I want gstreamer fbdevsink output into a virtual framebuffer, but that needs a device specified. But virtual framebuffers do not have /dev/fbX links.
So is output of fbdevsink to virtual framebuffer possible? If so, how?
Xvfb option "-fbdir /var/tmp" option allows for read access to xwd-header prefixed virtual framebuffer:
tail --bytes $((1360*768*4)) /var/tmp/Xvfb_screen0 > /dev/fb0
The xwd-prefix is 3232 bytes long, and writing a single byte to /var/tmp/Xvfb_screen0 results in a bus error:
$ Xvfb :1 -screen 0 1360x768x24 -fbdir /var/tmp &  2117 $ DISPLAY=:1 xclock -update 1 &  2124 $ Warning: Missing charsets in String to FontSet conversion $ echo -n "x" > /var/tmp/Xvfb_screen0 $ (EE) (EE) Backtrace: (EE) (EE) Bus error at address 0x75f22c04 (EE) Fatal server error: (EE) Caught signal 7 (Bus error). Server aborting (EE) XIO: fatal IO error 11 (Resource temporarily unavailable) on X server ":1" after 692 requests (94 known processed) with 0 events remaining. - Aborted Xvfb :1 -screen 0 1360x768x24 -fbdir /var/tmp + Exit 1 DISPLAY=:1 xclock -update 1 $
I was not able to find the source code of Xvfb, where can I find it?