Как я могу записать игру OpenGL в Ubuntu?

19

Я хотел бы создать небольшой клип о моей игре Minecraft, OpenGL . Обычные диктофоны не записывают должным образом OpenGL .

Какое программное обеспечение доступно для этой цели?

Мой опыт работы с программным обеспечением в похожем (но уже не дублированном) вопросе :

  1. kazam : очень низкая частота кадров, несмотря на установку 60 кадров в секунду, отсутствие звука, единый меню постоянно мигает в полноэкранном окне.
  2. RecordMyDesktop : максимальная частота кадров составляет 50 кадров в секунду, но видео становится чрезвычайно быстрым, если не использовать стандартные 15 кадров в секунду.
  3. xvidcap : недоступно 12.04
  4. tibesti : не доступно 12.04
  5. подмигивание : не запускается
  6. ffmpeg : видео очень низкого качества и без звука с рекомендованными настройками, но может быть настроено (к сожалению, без графического интерфейса).
  7. kdenlive : использует recordmydesktop, и записанный клип становится поврежденным
  8. aconv : видео ускорено , изображение часто искажается , звука нет
Тамас Селеи
источник
Вы уверены, что эти программы правильно работают с игрой opengl? В прошлый раз, когда я проверял, у них было много проблем с этим.
Тамас Селеи
Не знаю, это хороший момент. Вам следует изменить оригинал на «Как я могу записать игру OpenGL в Ubuntu»?
Том Броссман
1
Выполнено. Тем временем я проверяю все эти программы в теме, которую вы снова связали. Пока что не повезло. Панель меню мигает в полноэкранном режиме, а частота кадров в записанном видео очень низкая (несмотря на используемые мной настройки).
Тамас Селеи
4
Оригинал был обманом, но теперь этот отредактированный вопрос должен оставаться открытым, особенно со всеми изменениями и усилиями, предпринятыми для его улучшения. Я не вижу возможности отменить свое предыдущее закрытое голосование, поэтому я просто удалю свой первый комментарий и проголосую.
Том Броссман
1
это шутка, верно? этот вопрос не является дубликатом - приложения для записи скринкастов ограничены тем, что воспроизводится с аппаратного обеспечения. OpenGL в рендеринге GPU требует специализированных инструментов, из-за серьезного нарушения архитектуры X11. Этот вопрос должен быть вновь открыт
lurscher

Ответы:

9

GLC хорошо подходит для этой цели. К сожалению, он не упакован в архив. Тем не менее, я поместил его (и его зависимости) в PPA:

ppa: george-edison55 / glcЛоготип панели запуска ( нажмите здесь для получения инструкций по использованию PPA. )

Вы можете добавить PPA в вашу систему, используя следующие команды:

sudo apt-add-repository ppa:george-edison55/glc
sudo apt-get update

Затем вы можете установить GLC с:

sudo apt-get install glc

После установки инструмента вы можете начать запись приложения, выполнив:

glc-capture -o /tmp/capture.glc <application>

Это сразу запустит приложение. Вы можете начать и остановить запись в игре, нажав сочетание клавиш Shift+ F8.

Когда вы закончите, вы получите файл /tmp/capture.glc, содержащий данные, захваченные инструментом. Вы можете немедленно воспроизвести запись с помощью:

glc-play /tmp/capture.glc

Если вы хотите преобразовать запись в видео, вы можете сделать это с помощью:

glc-play /tmp/capture.glc -y 1 -o - | mencoder -demuxer y4m - \
    -ovc lavc -lavcopts vcodec=mpeg4:vbitrate=3000 -o /tmp/capture.avi

Это создаст файл MP4 /tmp/capture.aviс именем с битрейтом 3000 кбит / с.


Источники:

Натан Осман
источник
звук, кажется, не записывается этим. Также вывод в avi возможен только с целым glc. Таким образом, для разделения видео вам придется перезапустить всю игру. Кроме этого, безупречно.
phil294
7

Я использую SimpleScreenRecorder для записи моего геймплея Minecraft. Требовалось несколько настроек, чтобы звук работал, но почти все, что вам нужно для записи Minecraft, должно быть на сайте (в разделе «Запись аудио игры»). Он имеет графический интерфейс и, несмотря на название, имеет довольно много настроек, которые можно настроить, чтобы получить видео в соответствии с вашими потребностями (например, качество по сравнению с размером файла). Инструкции по установке находятся здесь . Для Ubuntu вам нужно добавить репозиторий ppa:

sudo add-apt-repository ppa:maarten-baert/simplescreenrecorder
sudo apt-get update
sudo apt-get install simplescreenrecorder
# if you want to record 32-bit OpenGL applications on a 64-bit system:
sudo apt-get install simplescreenrecorder-lib:i386

Для записи Minecraft с ним, убедитесь , что видео вход установлен на «Record OpenGL», нажмите настройки OpenGL и поместите команду Java , чтобы открыть свой Minecraft запуска в «Command»: java -jar /path/to/launcher/Minecraft.jar. Убедитесь, что установлен флажок «Запустить приложение OpenGL автоматически». Это заставит ваш лаунчер Minecraft открыть вас, когда вы продолжите к окну записи. Просто войдите в систему, нажмите кнопку воспроизведения и нажмите Ctrl + R (настраивается для использования других комбинаций), чтобы начать / остановить запись (в качестве альтернативы, вы можете использовать кнопки).

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

Anomitee
источник
3

Есть много программ, которые захватывают экран из буфера X, но это очень интенсивно использует процессор и работает медленно. Тем не менее, я нашел один вариант, который на самом деле захватывает непосредственно с видеокарты: Юкон

Еще один GLC. glc - это инструмент захвата ALSA & OpenGL для Linux. Он состоит из общей библиотеки захвата, воспроизведения и обработки видео и набора инструментов, созданных вокруг этой библиотеки. GLC должен быть в состоянии захватить любое приложение, которое использует ALSA для звука и OpenGL для рисования. Это все еще относительно новый проект, но у него уже есть длинный список возможностей.

krupal6022
источник
1
есть продолжение для Юкона под названием glc: github.com/nullkey/glc
lurscher