I am trying to record video output from Xvfb
using ffmpeg
or avconv
. I start Xvfb
with:
$ Xvfb :29 -screen 0 1024x768x24
When I later try to record display :29
with avconv
(same output for ffmpeg
):
$ avconv -f x11grab -s xga -r 25 -b 2000k -i :29.0 -y selenium.avi
I get the following error:
avconv version 0.8.4-4:0.8.4-0ubuntu0.12.04.1, Copyright (c) 2000-2012 the Libav developers
built on Nov 6 2012 16:51:33 with gcc 4.6.3
[x11grab @ 0x1915b80] device: :29.0 -> display: :29.0 x: 0 y: 0 width: 1024 height: 768
[x11grab @ 0x1915b80] shared memory extension found
X Error of failed request: BadCursor (invalid Cursor parameter)
Major opcode of failed request: 142 (XFIXES)
Minor opcode of failed request: 25 (XFixesGetCursorImageAndName)
Resource id in failed request: 0x200001
Serial number of failed request: 14
Current serial number in output stream: 14
avconv
works for display :0
and creates correct video. Also I can connect to display :29
with x11vnc
/vncviewer
. I noticed that with 1024x768x8
(8 bits rather than 24) avconv
doesn't fail, but the output video is completely black.
Am I missing some important option or setting? I am running Linux 3.2.0-36-generic (Ubuntu 12.04x64).