Я ищу способ добавить оверлей к работающей игре Windows , например OBS ( приложение для потоковой передачи игр, используемое для Twitch).
Я думал об использовании класса Robot
, чтобы делать 25/30 снимков экрана каждую секунду и отображать их, но я не уверен, что это правильное решение ..
Итак, мой вопрос заключается в следующем: как я могу поделиться экраном работающего приложения с приложением Java (локальный хост, тот же компьютер), чтобы добавить наложение перед ним?
РЕДАКТИРОВАТЬ : я пробовал использовать VLC Streaming, но из-за этого компьютер действительно тормозит (i7 / 8Gb) ... Я тоже пробовал с FFMpeg, используя screen-capture-recorder
и gdigrab
, компьютер лагает не было, но видео в реальном времени падает как 5/10 FPS.
В FFMpeg я использовал следующую команду: ffplay -f dshow -f gdigrab -i title="<NAME>" -framerate 30
.
Хотелось бы на игровом компе иметь 25/30 FPS (i7 / 8Gb) ..
2 ответа
Однажды я разработал SimRat (простое приложение для совместного использования экрана, такое как Teamviewer) с помощью Robot & Corba. Возможно, вы сможете получить общее представление, глядя на код. Это не лучший способ реализовать совместное использование экрана. Java RMI будет вам полезен.
Попробуйте java-screen-recorder, это простой захват и конвертер экрана. Это не очень потребляет CPU / GPU. Решение, основанное на java.awt.Robot
и многократном захвате экрана.
Похожие вопросы
Новые вопросы
java
Java — это высокоуровневый объектно-ориентированный язык программирования. Используйте этот тег, если у вас возникли проблемы с использованием или пониманием самого языка. Этот тег часто используется вместе с другими тегами для библиотек и/или фреймворков, используемых разработчиками Java.