diff --git a/app/libs/limelight-common.jar b/app/libs/limelight-common.jar
index d00cd721..df1b9eb9 100644
Binary files a/app/libs/limelight-common.jar and b/app/libs/limelight-common.jar differ
diff --git a/app/src/main/java/com/limelight/Game.java b/app/src/main/java/com/limelight/Game.java
index 4f1ef88d..1837563b 100644
--- a/app/src/main/java/com/limelight/Game.java
+++ b/app/src/main/java/com/limelight/Game.java
@@ -197,6 +197,9 @@ public class Game extends Activity implements SurfaceHolder.Callback,
.enableLocalAudioPlayback(prefConfig.playHostAudio)
.setMaxPacketSize(remote ? 1024 : 1292)
.setRemote(remote)
+ .setAudioConfiguration(prefConfig.enable51Surround ?
+ StreamConfiguration.AUDIO_CONFIGURATION_5_1 :
+ StreamConfiguration.AUDIO_CONFIGURATION_STEREO)
.build();
// Initialize the connection
diff --git a/app/src/main/java/com/limelight/preferences/PreferenceConfiguration.java b/app/src/main/java/com/limelight/preferences/PreferenceConfiguration.java
index 18dcc95b..c44a0ffc 100644
--- a/app/src/main/java/com/limelight/preferences/PreferenceConfiguration.java
+++ b/app/src/main/java/com/limelight/preferences/PreferenceConfiguration.java
@@ -19,6 +19,7 @@ public class PreferenceConfiguration {
private static final String LIST_MODE_PREF_STRING = "checkbox_list_mode";
private static final String SMALL_ICONS_PREF_STRING = "checkbox_small_icon_mode";
private static final String MULTI_CONTROLLER_PREF_STRING = "checkbox_multi_controller";
+ private static final String ENABLE_51_SURROUND_PREF_STRING = "checkbox_51_surround";
private static final int BITRATE_DEFAULT_720_30 = 5;
private static final int BITRATE_DEFAULT_720_60 = 10;
@@ -36,6 +37,7 @@ public class PreferenceConfiguration {
public static final String DEFAULT_LANGUAGE = "default";
private static final boolean DEFAULT_LIST_MODE = false;
private static final boolean DEFAULT_MULTI_CONTROLLER = true;
+ private static final boolean DEFAULT_ENABLE_51_SURROUND = false;
public static final int FORCE_HARDWARE_DECODER = -1;
public static final int AUTOSELECT_DECODER = 0;
@@ -47,7 +49,7 @@ public class PreferenceConfiguration {
public int deadzonePercentage;
public boolean stretchVideo, enableSops, playHostAudio, disableWarnings;
public String language;
- public boolean listMode, smallIconMode, multiController;
+ public boolean listMode, smallIconMode, multiController, enable51Surround;
public static int getDefaultBitrate(String resFpsString) {
if (resFpsString.equals("720p30")) {
@@ -159,6 +161,7 @@ public class PreferenceConfiguration {
config.listMode = prefs.getBoolean(LIST_MODE_PREF_STRING, DEFAULT_LIST_MODE);
config.smallIconMode = prefs.getBoolean(SMALL_ICONS_PREF_STRING, getDefaultSmallMode(context));
config.multiController = prefs.getBoolean(MULTI_CONTROLLER_PREF_STRING, DEFAULT_MULTI_CONTROLLER);
+ config.enable51Surround = prefs.getBoolean(ENABLE_51_SURROUND_PREF_STRING, DEFAULT_ENABLE_51_SURROUND);
return config;
}
diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml
index bf6935d1..46e3bcf0 100644
--- a/app/src/main/res/values/strings.xml
+++ b/app/src/main/res/values/strings.xml
@@ -94,6 +94,10 @@
Disable warning messages
Disable on-screen connection warning messages while streaming
+ Audio Settings
+ Enable 5.1 surround sound
+ Uncheck if you experience audio issues. Requires GFE 2.7 or higher.
+
Gamepad Settings
Multiple controller support
When unchecked, all controllers appear as one
diff --git a/app/src/main/res/xml/preferences.xml b/app/src/main/res/xml/preferences.xml
index 678d0b7e..abd93a61 100644
--- a/app/src/main/res/xml/preferences.xml
+++ b/app/src/main/res/xml/preferences.xml
@@ -26,6 +26,13 @@
android:summary="@string/summary_checkbox_disable_warnings"
android:defaultValue="false" />
+
+
+