Xvfb с -nocursor все равно показывает курсор

759
Brad

Я использую xvfb-runдля выполнения Xvfb:

xvfb-run \ --server-num 44 \ -s "-nocursor -ac -screen 0 1280x720x24" \ chromium-browser \ --temp-profile \ --window-size=1280,720 \ --disable-gpu \ --window-position=0,0 \ --app=http://example.com 

Если я тогда посмотрю на список процессов, то увижу ожидаемый процесс и параметры Xvfb:

Xvfb :44 -nocursor -ac -screen 0 1280x720x24 -nolisten tcp -auth /tmp/xvfb-run.3QqQAT/Xauthority 

Несмотря на это -nocursor, курсор определенно все еще появляется, если я использую что-то вроде x11grab от FFmpeg, чтобы увидеть вывод этого окна.

Cursor is still visible in X11 window

Даже выгрузка psmouseмодуля не исправляет это.

Как правильно указать, что курсор должен быть полностью скрыт?

Сервер Ubuntu 16.04.

7

1 ответ на вопрос

9
Brad

Оказывается, мне просто нужно указать -draw_mouse 0в командной строке FFmpeg. Мой хороший друг говорит мне, что x11grab находится на один слой ниже содержимого Xvfb, так что, пока курсор не рисуется в буфере кадров, x11grab будет его рисовать.

Обратите внимание, что `-draw_mouse 0` является параметром _input_, поэтому он должен идти перед аргументом` -i`, иначе он не будет работать. Douglas Manley 6 лет назад 0