Sto cercando un modo per aggiungere una sovrapposizione a un gioco in esecuzione Windows, come OBS (un'applicazione di gioco in streaming, utilizzata per Twitch).Condivisione schermo in tempo reale all'app Java (localhost)
ho pensato di usare la classe Robot
di prendere 25/30 screenshot ogni secondi e visualizzarli, ma non sono sicuro che sia la soluzione giusta ..
Quindi la mia domanda è la seguente: Come posso screenshare un'applicazione in esecuzione su un'applicazione Java (localhost, stesso computer), per aggiungere una sovrapposizione di fronte ad essa?
EDIT: Ho provato ad utilizzare VLC Streaming, ma che rende il computer davvero lag (i7/8Gb) ... ho provato con FFMpeg troppo, utilizzando screen-capture-recorder
e gdigrab
, il computer non era lag, ma il video scende come 5/10 FPS in tempo reale.
In FFMpeg, ho usato il seguente comando: ffplay -f dshow -f gdigrab -i title="<NAME>" -framerate 30
.
mi piacerebbe avere un 25/30 FPS con un computer da gioco (i7/8Gb) ..
Quando si dice 'stream', quale oggetto Java di livello basso si sta riferendo come risultato? Un InputStream costantemente alimentato in cui è possibile leggere i dati del frame di un altro thread/programma? – higuaro
Non mi interessa davvero il tipo di oggetto Java. Deve solo essere visualizzabile in un 'JPanel' :). L'app è il client e il server può essere un software di terze parti (come VLC) o integrato direttamente nell'app. – Val