From 149cabe686fba2f2f19c89c5a96326094fc71dd6 Mon Sep 17 00:00:00 2001 From: Cameron Gutman Date: Thu, 19 Dec 2013 04:33:33 -0500 Subject: [PATCH] Use the StreamConfiguration class for managing the characteristics of StreamFrame --- src/com/limelight/Limelight.java | 6 ++++-- src/com/limelight/gui/StreamFrame.java | 11 ++++------- 2 files changed, 8 insertions(+), 9 deletions(-) diff --git a/src/com/limelight/Limelight.java b/src/com/limelight/Limelight.java index 06641eb..6496ff5 100644 --- a/src/com/limelight/Limelight.java +++ b/src/com/limelight/Limelight.java @@ -16,6 +16,7 @@ import com.limelight.gui.StreamFrame; import com.limelight.input.GamepadHandler; import com.limelight.nvstream.NvConnection; import com.limelight.nvstream.NvConnectionListener; +import com.limelight.nvstream.StreamConfiguration; import com.limelight.nvstream.av.video.VideoDecoderRenderer; public class Limelight implements NvConnectionListener { @@ -27,6 +28,7 @@ public class Limelight implements NvConnectionListener { private boolean connectionFailed; private static JFrame limeFrame; private Thread controllerListenerThread; + private StreamConfiguration streamConfig = new StreamConfiguration(1280, 720, 30); public Limelight(String host) { this.host = host; @@ -34,8 +36,8 @@ public class Limelight implements NvConnectionListener { private void startUp(boolean fullscreen) { streamFrame = new StreamFrame(); - conn = new NvConnection(host, this); - streamFrame.build(conn, fullscreen); + conn = new NvConnection(host, this, streamConfig); + streamFrame.build(conn, streamConfig, fullscreen); conn.start(PlatformBinding.getDeviceName(), streamFrame, VideoDecoderRenderer.FLAG_PREFER_QUALITY, PlatformBinding.getAudioRenderer(), diff --git a/src/com/limelight/gui/StreamFrame.java b/src/com/limelight/gui/StreamFrame.java index 73516fd..d8f68b0 100644 --- a/src/com/limelight/gui/StreamFrame.java +++ b/src/com/limelight/gui/StreamFrame.java @@ -26,6 +26,7 @@ import com.limelight.input.KeyboardHandler; import com.limelight.input.MouseHandler; import com.limelight.nvstream.NvConnection; import com.limelight.nvstream.NvConnectionListener.Stage; +import com.limelight.nvstream.StreamConfiguration; public class StreamFrame extends JFrame { private static final long serialVersionUID = 1L; @@ -37,10 +38,6 @@ public class StreamFrame extends JFrame { private Cursor noCursor; private NvConnection conn; - private static final int WIDTH = 1280; - private static final int HEIGHT = 720; - - public void freeMouse() { mouse.free(); showCursor(); @@ -51,7 +48,7 @@ public class StreamFrame extends JFrame { hideCursor(); } - public void build(NvConnection conn, boolean fullscreen) { + public void build(NvConnection conn, StreamConfiguration streamConfig, boolean fullscreen) { this.conn = conn; keyboard = new KeyboardHandler(conn, this); @@ -63,7 +60,7 @@ public class StreamFrame extends JFrame { this.setFocusTraversalKeysEnabled(false); - this.setSize(WIDTH, HEIGHT); + this.setSize(streamConfig.getWidth(), streamConfig.getHeight()); this.setBackground(Color.BLACK); this.getContentPane().setBackground(Color.BLACK); @@ -92,7 +89,7 @@ public class StreamFrame extends JFrame { }); DisplayMode bestConfig = null; for (DisplayMode config : configs) { - if (config.getWidth() >= 1280 && config.getHeight() >= 720) { + if (config.getWidth() >= getSize().width && config.getHeight() >= getSize().height) { bestConfig = config; } }