X ошибка неудачного запроса: BadCursor (недопустимый параметр курсора) при записи Xvfb с ffmpeg/avconv

я пытаюсь записать видео выход из Xvfb используя ffmpeg или avconv. Я начинаю Xvfb С:

$ Xvfb :29 -screen 0 1024x768x24

когда я позже попытаюсь записать display :29 С avconv (тот же выход для ffmpeg):

$ avconv -f x11grab -s xga -r 25 -b 2000k -i :29.0 -y selenium.avi

я получаю следующее сообщение об ошибке:

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 работает для display :0 и создает правильное видео. Также я могу подключиться к дисплей :29 С x11vnc/vncviewer. Я заметил это с 1024x768x8 (8 бит а не 24) avconv не терпит неудачу, но выходное видео полностью черное.

я пропустил какой-то важный вариант или настройку? Я использую Linux 3.2.0-36-generic (Ubuntu 12.04x64).

8
задан Tomasz Nurkiewicz
12.11.2022 21:07 Количество просмотров материала 3560
Распечатать страницу

2 ответа

Это, скорее всего, было исправлено Айзеком дули в FFmpeg с помощью commit 469a65b исправление ошибок #1738 x11grab BadCursor. Вам придется скомпилировать ffmpeg, так как статические сборки не поддерживают x11grab. Существует простое в использовании руководство по компиляции для всех поддерживаемых версий Ubuntu по адресу: компиляция FFmpeg на Ubuntu.

avconv не содержит этого исправления (и многих других), так как libav игнорирует большинство действий FFmpeg.

Также см. HOWTO: правильный скринкаст на Linux.

2
отвечен LordNeckbeard 2022-11-14 04:55

У меня точно такая же проблема. Пожалуйста, сделайте следующую последовательность, которая должна работать для вас.

  1. $ Xvfb: 2-Экран 0 1024x768x24 &

  2. $ export DISPLAY=: 2

  3. $ xeyes &

    Примечание: если нет X-приложений (например: xeyes) бег, вы получите ошибку BadCusor.

  4. $ avconv -Ф x11grab -с разрешением XGA -Р 25 -б 2000к -я :29.0 -г селен.avi

0
отвечен francis 2022-11-14 07:12

Постоянная ссылка на данную страницу: [ Скопировать ссылку | Сгенерировать QR-код ]

Ваш ответ

Опубликуйте как Гость или авторизуйтесь

Имя
Вверх