diff --git a/app/src/main/java/com/limelight/preferences/PreferenceConfiguration.java b/app/src/main/java/com/limelight/preferences/PreferenceConfiguration.java index 21cbbdf4..6b204437 100644 --- a/app/src/main/java/com/limelight/preferences/PreferenceConfiguration.java +++ b/app/src/main/java/com/limelight/preferences/PreferenceConfiguration.java @@ -10,7 +10,7 @@ import com.limelight.nvstream.jni.MoonBridge; public class PreferenceConfiguration { private static final String LEGACY_RES_FPS_PREF_STRING = "list_resolution_fps"; - + private static final String LEGACY_ENABLE_51_SURROUND_PREF_STRING = "checkbox_51_surround"; static final String RESOLUTION_PREF_STRING = "list_resolution"; static final String FPS_PREF_STRING = "list_fps"; @@ -26,8 +26,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 AUDIO_CONFIG_PREF_STRING = "list_audio_config"; - private static final String LEGACY_ENABLE_51_SURROUND_PREF_STRING = "checkbox_51_surround"; + static final String AUDIO_CONFIG_PREF_STRING = "list_audio_config"; private static final String USB_DRIVER_PREF_SRING = "checkbox_usb_driver"; private static final String VIDEO_FORMAT_PREF_STRING = "video_format"; private static final String ONSCREEN_CONTROLLER_PREF_STRING = "checkbox_show_onscreen_controls"; diff --git a/app/src/main/java/com/limelight/preferences/StreamSettings.java b/app/src/main/java/com/limelight/preferences/StreamSettings.java index 3561962f..3237f1d2 100644 --- a/app/src/main/java/com/limelight/preferences/StreamSettings.java +++ b/app/src/main/java/com/limelight/preferences/StreamSettings.java @@ -302,6 +302,18 @@ public class StreamSettings extends Activity { // Never remove 30 FPS or 60 FPS } + // Android L introduces proper 7.1 surround sound support. Remove the 7.1 option + // for earlier versions of Android to prevent AudioTrack initialization issues. + if (Build.VERSION.SDK_INT < Build.VERSION_CODES.LOLLIPOP) { + LimeLog.info("Excluding 7.1 surround sound option based on OS"); + removeValue(PreferenceConfiguration.AUDIO_CONFIG_PREF_STRING, "71", new Runnable() { + @Override + public void run() { + setValue(PreferenceConfiguration.AUDIO_CONFIG_PREF_STRING, "51"); + } + }); + } + // Android L introduces the drop duplicate behavior of releaseOutputBuffer() // that the unlock FPS option relies on to not massively increase latency. if (Build.VERSION.SDK_INT < Build.VERSION_CODES.LOLLIPOP) {