summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorChristos Papageorgiou <root.expert.xda@gmail.com>2019-07-18 14:57:27 +0300
committerJulian Veit <claymore1298@gmail.com>2019-07-19 14:53:39 +0200
commitdc83801bd3d13067b64fb32b3d7a6ec573224304 (patch)
tree271cfc3b4b886c8fee1414e7eb38ce89d4673702
parent901e652275ef109fe4e8d35c1a2e8076e47381a8 (diff)
JamesDSP: Refactor UI
* Leave only basic options in the main fragment. * Move all the advanced options in another fragment to improve user experience.
-rw-r--r--app/src/main/AndroidManifest.xml4
-rw-r--r--app/src/main/java/james/dsp/activity/AdvancedOptions.java55
-rw-r--r--app/src/main/java/james/dsp/activity/DSPScreen.java34
-rw-r--r--app/src/main/java/james/dsp/service/HeadsetService.java51
-rw-r--r--app/src/main/res/values/strings.xml1
-rw-r--r--app/src/main/res/xml/advanced_preferences.xml122
-rw-r--r--app/src/main/res/xml/bluetooth_preferences.xml125
-rw-r--r--app/src/main/res/xml/headset_preferences.xml125
-rw-r--r--app/src/main/res/xml/speaker_preferences.xml125
9 files changed, 317 insertions, 325 deletions
diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml
index 60e52cd..24ec428 100644
--- a/app/src/main/AndroidManifest.xml
+++ b/app/src/main/AndroidManifest.xml
@@ -26,14 +26,12 @@
<category android:name="android.intent.category.LAUNCHER" />
<category android:name="android.intent.category.MULTIWINDOW_LAUNCHER" />
</intent-filter>
- <!--
+
<intent-filter>
<action android:name="android.media.action.DISPLAY_AUDIO_EFFECT_CONTROL_PANEL" />
<category android:name="android.intent.category.DEFAULT" />
</intent-filter>
- -->
</activity>
-
<service
android:exported="false"
android:enabled="true"
diff --git a/app/src/main/java/james/dsp/activity/AdvancedOptions.java b/app/src/main/java/james/dsp/activity/AdvancedOptions.java
new file mode 100644
index 0000000..4ff170d
--- /dev/null
+++ b/app/src/main/java/james/dsp/activity/AdvancedOptions.java
@@ -0,0 +1,55 @@
+package james.dsp.activity;
+
+import android.content.Context;
+import android.content.Intent;
+import android.content.SharedPreferences;
+import android.os.Bundle;
+import android.preference.Preference;
+import android.preference.PreferenceActivity;
+import android.preference.PreferenceFragment;
+import android.util.Log;
+
+import james.dsp.R;
+
+public class AdvancedOptions extends PreferenceFragment {
+ private static final String TAG = DSPScreen.class.getSimpleName();
+
+ private final SharedPreferences.OnSharedPreferenceChangeListener listener = new SharedPreferences.OnSharedPreferenceChangeListener() {
+
+ @Override
+ public void onSharedPreferenceChanged(SharedPreferences sharedPreferences, String key) {
+ Log.e(TAG, "Preferenced changed!");
+ getActivity().sendBroadcast(new Intent(DSPManager.ACTION_UPDATE_PREFERENCES));
+ }
+ };
+ @Override
+ public void onCreate(Bundle savedInstanceState)
+ {
+ super.onCreate(savedInstanceState);
+
+ String config = getArguments().getString("config");
+ getPreferenceManager().setSharedPreferencesName(
+ DSPManager.SHARED_PREFERENCES_BASENAME + "." + "advanced" + "." + config);
+ getPreferenceManager().setSharedPreferencesMode(Context.MODE_MULTI_PROCESS);
+ try
+ {
+ int xmlId = R.xml.class.getField( "advanced_preferences").getInt(null);
+ addPreferencesFromResource(xmlId);
+ }
+ catch (Exception e)
+ {
+ throw new RuntimeException(e);
+ }
+
+ getPreferenceManager().getSharedPreferences()
+ .registerOnSharedPreferenceChangeListener(listener);
+ }
+
+ @Override
+ public void onDestroy()
+ {
+ super.onDestroy();
+ getPreferenceManager().getSharedPreferences()
+ .unregisterOnSharedPreferenceChangeListener(listener);
+ }
+}
diff --git a/app/src/main/java/james/dsp/activity/DSPScreen.java b/app/src/main/java/james/dsp/activity/DSPScreen.java
index 939f4e4..c401645 100644
--- a/app/src/main/java/james/dsp/activity/DSPScreen.java
+++ b/app/src/main/java/james/dsp/activity/DSPScreen.java
@@ -1,12 +1,15 @@
package james.dsp.activity;
+import android.app.FragmentTransaction;
import android.content.Context;
import android.content.Intent;
import android.content.SharedPreferences;
import android.content.SharedPreferences.Editor;
import android.content.SharedPreferences.OnSharedPreferenceChangeListener;
import android.os.Bundle;
+import android.preference.Preference;
import android.preference.PreferenceFragment;
+
import james.dsp.R;
import james.dsp.preference.EqualizerPreference;
import james.dsp.preference.SummariedListPreference;
@@ -18,7 +21,7 @@ import james.dsp.service.HeadsetService;
* and a listener that ensures that our {@link HeadsetService} is running if
* required.
*
- * @Co-founder alankila
+ * Co-founder alankila
*/
public final class DSPScreen extends PreferenceFragment
{
@@ -37,7 +40,7 @@ public final class DSPScreen extends PreferenceFragment
{
Editor e = sharedPreferences.edit();
e.putString("dsp.tone.eq.custom", newValue);
- e.commit();
+ e.apply();
/* Now tell the equalizer that it must display something else. */
EqualizerPreference eq = (EqualizerPreference)
getPreferenceScreen().findPreference("dsp.tone.eq.custom");
@@ -60,11 +63,11 @@ public final class DSPScreen extends PreferenceFragment
}
}
/* Tell listpreference that it must display something else. */
- if (!desiredValue.equals(preset.getEntry()))
+ if (!desiredValue.contentEquals(preset.getEntry()))
{
Editor e = sharedPreferences.edit();
e.putString("dsp.tone.eq", desiredValue);
- e.commit();
+ e.apply();
preset.refreshFromPreference();
}
}
@@ -77,7 +80,7 @@ public final class DSPScreen extends PreferenceFragment
public void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
- String config = getArguments().getString("config");
+ final String config = getArguments().getString("config");
getPreferenceManager().setSharedPreferencesName(
DSPManager.SHARED_PREFERENCES_BASENAME + "." + config);
getPreferenceManager().setSharedPreferencesMode(Context.MODE_MULTI_PROCESS);
@@ -92,6 +95,27 @@ public final class DSPScreen extends PreferenceFragment
}
getPreferenceManager().getSharedPreferences()
.registerOnSharedPreferenceChangeListener(listener);
+
+ Preference preference = getPreferenceManager().findPreference("advanced.options");
+ if (preference != null) {
+ preference.setOnPreferenceClickListener(new Preference.OnPreferenceClickListener() {
+ @Override
+ public boolean onPreferenceClick(Preference preference) {
+ Bundle bundle = new Bundle();
+ bundle.putString("config", config);
+
+ AdvancedOptions advancedOptions = new AdvancedOptions();
+ advancedOptions.setArguments(bundle);
+
+ FragmentTransaction ft = getFragmentManager().beginTransaction();
+ ft.replace(R.id.dsp_container, advancedOptions);
+ ft.addToBackStack(null);
+ ft.setTransition(FragmentTransaction.TRANSIT_FRAGMENT_FADE);
+ ft.commit();
+ return true;
+ }
+ });
+ }
}
@Override
diff --git a/app/src/main/java/james/dsp/service/HeadsetService.java b/app/src/main/java/james/dsp/service/HeadsetService.java
index ddd03e5..1143514 100644
--- a/app/src/main/java/james/dsp/service/HeadsetService.java
+++ b/app/src/main/java/james/dsp/service/HeadsetService.java
@@ -39,6 +39,9 @@ import java.util.HashMap;
import java.util.Map;
import java.util.UUID;
import james.dsp.activity.JdspImpResToolbox;
+
+import static james.dsp.activity.DSPManager.TAG;
+
/**
* <p>This calls listen to events that affect DSP function and responds to them.</p>
* <ol>
@@ -337,7 +340,7 @@ public class HeadsetService extends Service
JDSPModule fxId = new JDSPModule(sessionId);
if (fxId.JamesDSP == null)
{
- Log.e(DSPManager.TAG, "Audio session load fail");
+ Log.e(TAG, "Audio session load fail");
fxId.release();
fxId = null;
}
@@ -506,16 +509,16 @@ class StartUpOptimiserThread implements Runnable {
mUseBluetooth = mAudioManager.isBluetoothA2dpOn();
if (mUseBluetooth)
{
- Log.i(DSPManager.TAG, "Bluetooth mode");
+ Log.i(TAG, "Bluetooth mode");
mUseHeadset = false;
}
else
{
mUseHeadset = mAudioManager.isWiredHeadsetOn();
if (mUseHeadset)
- Log.i(DSPManager.TAG, "Headset mode");
+ Log.i(TAG, "Headset mode");
else
- Log.i(DSPManager.TAG, "Speaker mode");
+ Log.i(TAG, "Speaker mode");
}
}
iconLarge = BitmapFactory.decodeResource(getResources(), R.drawable.icon);
@@ -575,7 +578,7 @@ class StartUpOptimiserThread implements Runnable {
if (JamesDSPGbEf == null) {
JamesDSPGbEf = new JDSPModule(0);
if (JamesDSPGbEf.JamesDSP == null) {
- Log.e(DSPManager.TAG, "Global audio session load fail, reload it now!");
+ Log.e(TAG, "Global audio session load fail, reload it now!");
JamesDSPGbEf.release();
JamesDSPGbEf = null;
return super.onStartCommand(intent, flags, startId);
@@ -584,18 +587,18 @@ class StartUpOptimiserThread implements Runnable {
return super.onStartCommand(intent, flags, startId);
}
if (JamesDSPGbEf.JamesDSP == null) {
- Log.e(DSPManager.TAG, "Global audio session load fail, reload it now!");
+ Log.e(TAG, "Global audio session load fail, reload it now!");
JamesDSPGbEf.release();
JamesDSPGbEf = new JDSPModule(0);
if (JamesDSPGbEf.JamesDSP == null) {
- Log.e(DSPManager.TAG, "Global audio session load fail, reload it now!");
+ Log.e(TAG, "Global audio session load fail, reload it now!");
JamesDSPGbEf.release();
JamesDSPGbEf = null;
return super.onStartCommand(intent, flags, startId);
}
return super.onStartCommand(intent, flags, startId);
}
- Log.i(DSPManager.TAG, "Global audio session created!");
+ Log.i(TAG, "Global audio session created!");
updateDsp(false, true);
}
return super.onStartCommand(intent, flags, startId);
@@ -635,6 +638,7 @@ class StartUpOptimiserThread implements Runnable {
modeEffect = preferencesMode.getInt("dsp.app.modeEffect", 0);
final String mode = getAudioOutputRouting();
SharedPreferences preferences = getSharedPreferences(DSPManager.SHARED_PREFERENCES_BASENAME + "." + mode, 0);
+ SharedPreferences advancedPref = getSharedPreferences(DSPManager.SHARED_PREFERENCES_BASENAME + "." + "advanced" + "." + mode, 0);
if (notify)
{
String pid = "";
@@ -654,7 +658,7 @@ class StartUpOptimiserThread implements Runnable {
{
try
{
- updateDsp(preferences, JamesDSPGbEf, updateConvolver, 0);
+ updateDsp(preferences, advancedPref, JamesDSPGbEf, updateConvolver, 0);
}
catch (Exception e)
{
@@ -666,7 +670,7 @@ class StartUpOptimiserThread implements Runnable {
{
try
{
- updateDsp(preferences, mAudioSessions.get(sessionId), updateConvolver, sessionId);
+ updateDsp(preferences, advancedPref, mAudioSessions.get(sessionId), updateConvolver, sessionId);
}
catch (Exception e)
{
@@ -676,7 +680,7 @@ class StartUpOptimiserThread implements Runnable {
}
}
- private void updateDsp(SharedPreferences preferences, JDSPModule session, boolean updateMajor, int sessionId)
+ private void updateDsp(SharedPreferences preferences, SharedPreferences advancedPref, JDSPModule session, boolean updateMajor, int sessionId)
{
boolean masterSwitch = preferences.getBoolean("dsp.masterswitch.enable", false);
session.JamesDSP.setEnabled(masterSwitch); // Master switch
@@ -709,35 +713,36 @@ class StartUpOptimiserThread implements Runnable {
session.setParameterFloatArray(session.JamesDSP, 1997, bench_c0);
session.setParameterFloatArray(session.JamesDSP, 1998, bench_c1);
}
- float limthreshold = Float.valueOf(preferences.getString("dsp.masterswitch.limthreshold", "-0.1"));
- float limrelease = Float.valueOf(preferences.getString("dsp.masterswitch.limrelease", "60"));
+ float limthreshold = Float.valueOf(advancedPref.getString("dsp.masterswitch.limthreshold", "-0.1"));
+ float limrelease = Float.valueOf(advancedPref.getString("dsp.masterswitch.limrelease", "60"));
if (prelimthreshold != limthreshold || prelimrelease != limrelease)
session.setParameterFloatArray(session.JamesDSP, 1500, new float[]{ limthreshold, limrelease });
prelimthreshold = limthreshold;
prelimrelease = limrelease;
if (compressorEnabled == 1 && updateMajor)
{
- session.setParameterShort(session.JamesDSP, 100, Short.valueOf(preferences.getString("dsp.compression.pregain", "12")));
- session.setParameterShort(session.JamesDSP, 101, (short)Math.abs(Short.valueOf(preferences.getString("dsp.compression.threshold", "-60"))));
- session.setParameterShort(session.JamesDSP, 102, Short.valueOf(preferences.getString("dsp.compression.knee", "30")));
- session.setParameterShort(session.JamesDSP, 103, Short.valueOf(preferences.getString("dsp.compression.ratio", "12")));
- session.setParameterShort(session.JamesDSP, 104, (short)(Float.valueOf((preferences.getString("dsp.compression.attack", "0.01")))*1000));
- session.setParameterShort(session.JamesDSP, 105, (short)(Float.valueOf((preferences.getString("dsp.compression.release", "0.01")))*1000));
+ session.setParameterShort(session.JamesDSP, 100, Short.valueOf(advancedPref.getString("dsp.compression.pregain", "12")));
+ Log.e(TAG, String.valueOf(session.getParameter(session.JamesDSP, 100)));
+ session.setParameterShort(session.JamesDSP, 101, (short)Math.abs(Short.valueOf(advancedPref.getString("dsp.compression.threshold", "-60"))));
+ session.setParameterShort(session.JamesDSP, 102, Short.valueOf(advancedPref.getString("dsp.compression.knee", "30")));
+ session.setParameterShort(session.JamesDSP, 103, Short.valueOf(advancedPref.getString("dsp.compression.ratio", "12")));
+ session.setParameterShort(session.JamesDSP, 104, (short)(Float.valueOf((advancedPref.getString("dsp.compression.attack", "0.01")))*1000));
+ session.setParameterShort(session.JamesDSP, 105, (short)(Float.valueOf((advancedPref.getString("dsp.compression.release", "0.01")))*1000));
}
session.setParameterShort(session.JamesDSP, 1200, (short)compressorEnabled); // Compressor switch
session.setParameterShort(session.JamesDSP, 1201, (short)bassBoostEnabled); // Bass boost switch
if (bassBoostEnabled == 1 && updateMajor)
{
session.setParameterShort(session.JamesDSP, 112, Short.valueOf(preferences.getString("dsp.bass.mode", "80")));
- short filtertype = Short.valueOf(preferences.getString("dsp.bass.filtertype", "0"));
+ short filtertype = Short.valueOf(advancedPref.getString("dsp.bass.filtertype", "0"));
session.setParameterShort(session.JamesDSP, 113, filtertype);
- short freq = Short.valueOf(preferences.getString("dsp.bass.freq", "55"));
+ short freq = Short.valueOf(advancedPref.getString("dsp.bass.freq", "55"));
session.setParameterShort(session.JamesDSP, 114, freq);
if(DSPManager.devMsgDisplay)
if(filtertype == 0 && freq < 90)
Toast.makeText(HeadsetService.this, R.string.preferredlpf, Toast.LENGTH_SHORT).show();
}
- session.setParameterShort(session.JamesDSP, 151, Short.valueOf(preferences.getString("dsp.tone.filtertype", "0")));
+ session.setParameterShort(session.JamesDSP, 151, Short.valueOf(advancedPref.getString("dsp.tone.filtertype", "0")));
session.setParameterShort(session.JamesDSP, 1202, (short)equalizerEnabled); // Equalizer switch
if (equalizerEnabled == 1)
{
@@ -765,7 +770,7 @@ class StartUpOptimiserThread implements Runnable {
if (bs2bEnabled == 1 && updateMajor)
session.setParameterShort(session.JamesDSP, 188, Short.valueOf(preferences.getString("dsp.bs2b.mode", "0")));
if (analogModelEnabled == 1 && updateMajor)
- session.setParameterShort(session.JamesDSP, 150, (short) (Float.valueOf(preferences.getString("dsp.analogmodelling.tubedrive", "2"))*1000));
+ session.setParameterShort(session.JamesDSP, 150, (short) (Float.valueOf(advancedPref.getString("dsp.analogmodelling.tubedrive", "2"))*1000));
session.setParameterShort(session.JamesDSP, 1206, (short)analogModelEnabled); // Analog modelling switch
if (viperddcEnabled == 1 && updateMajor)
{
diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml
index 19d83d0..e5cf1fd 100644
--- a/app/src/main/res/values/strings.xml
+++ b/app/src/main/res/values/strings.xml
@@ -138,4 +138,5 @@
<b>Credit:</b>\n\n
GUI Author: Antti S. Lankila \n
</string>
+ <string name="advanced_options">Advanced Options</string>
</resources> \ No newline at end of file
diff --git a/app/src/main/res/xml/advanced_preferences.xml b/app/src/main/res/xml/advanced_preferences.xml
new file mode 100644
index 0000000..20eaaaa
--- /dev/null
+++ b/app/src/main/res/xml/advanced_preferences.xml
@@ -0,0 +1,122 @@
+<?xml version="1.0" encoding="utf-8"?>
+<PreferenceScreen xmlns:android="http://schemas.android.com/apk/res/android">
+ <PreferenceCategory android:title="@string/pref_dsp_title">
+ <james.dsp.preference.SummariedTextPreferenceRanged
+ android:key="dsp.masterswitch.limthreshold"
+ android:defaultValue="-0.1"
+ android:dialogTitle="@string/limiter_threshold"
+ android:title="@string/limiter_threshold"
+ android:inputType="numberDecimal|numberSigned" />
+
+ <james.dsp.preference.SummariedTextPreferenceRanged
+ android:key="dsp.masterswitch.limrelease"
+ android:defaultValue="60"
+ android:dialogTitle="@string/limiter_release"
+ android:title="@string/limiter_release"
+ android:inputType="number" />
+ </PreferenceCategory>
+
+ <PreferenceCategory android:title="@string/pref_compression_title">
+ <james.dsp.preference.SummariedListPreference
+ android:key="dsp.compression.pregain"
+ android:defaultValue="12"
+ android:dialogTitle="@string/dialog_pregain"
+ android:entries="@array/compression_pregain"
+ android:entryValues="@array/compression_pregain_values"
+ android:title="@string/dialog_pregain" />
+ <james.dsp.preference.SummariedTextPreferenceRanged
+ android:key="dsp.compression.threshold"
+ android:defaultValue="-60"
+ android:dialogTitle="@string/dialog_threshold"
+ android:title="@string/dialog_threshold"
+ android:inputType="number|numberSigned" />
+ <james.dsp.preference.SummariedTextPreferenceRanged
+ android:key="dsp.compression.knee"
+ android:defaultValue="30"
+ android:dialogTitle="@string/dialog_knee"
+ android:title="@string/dialog_knee"
+ android:inputType="number" />
+ <james.dsp.preference.SummariedTextPreferenceRanged
+ android:key="dsp.compression.ratio"
+ android:defaultValue="12"
+ android:dialogTitle="@string/dialog_ratio"
+ android:title="@string/dialog_ratio"
+ android:inputType="number|numberSigned" />
+ <james.dsp.preference.SummariedTextPreferenceRanged
+ android:key="dsp.compression.attack"
+ android:defaultValue="0.01"
+ android:dialogTitle="@string/dialog_attack"
+ android:title="@string/dialog_attack"
+ android:inputType="numberDecimal" />
+ <james.dsp.preference.SummariedTextPreferenceRanged
+ android:key="dsp.compression.release"
+ android:defaultValue="0.24"
+ android:dialogTitle="@string/dialog_release"
+ android:title="@string/dialog_release"
+ android:inputType="numberDecimal" />
+ </PreferenceCategory>
+
+ <PreferenceCategory android:title="@string/pref_bassboost_title">
+ <james.dsp.preference.SummariedListPreference
+ android:defaultValue="0"
+ android:dialogTitle="@string/dialog_filtertype"
+ android:entries="@array/bassboost_filtertype"
+ android:entryValues="@array/bassboost_filtertype_values"
+ android:title="@string/dialog_filtertype"
+ android:key="dsp.bass.filtertype" />
+ <james.dsp.preference.SummariedTextPreferenceRanged
+ android:dialogTitle="@string/pref_effect_freq_title"
+ android:key="dsp.bass.freq"
+ android:defaultValue="55"
+ android:title="@string/pref_effect_freq_title"
+ android:inputType="number" />
+ </PreferenceCategory>
+
+ <PreferenceCategory android:title="@string/pref_equalizer_title">
+ <james.dsp.preference.SummariedListPreference
+ android:defaultValue="0"
+ android:dialogTitle="@string/dialog_filtertype"
+ android:entries="@array/equalizer_filtertype"
+ android:entryValues="@array/equalizer_filtertype_values"
+ android:title="@string/dialog_filtertype"
+ android:key="dsp.tone.filtertype" />
+ </PreferenceCategory>
+
+ <PreferenceCategory android:title="@string/pref_convolver_title">
+ <james.dsp.preference.SummariedListPreferenceWithCustom
+ android:title="@string/dialog_offlineimpulseresponseresampler"
+ android:key="dsp.convolver.resampler"
+ android:defaultValue=""
+ android:dialogTitle="@string/dialog_offlineimpulseresponseresampler_title" />
+ <james.dsp.preference.SummariedListPreferenceWithCustom
+ android:title="@string/dialog_impulseresponse"
+ android:key="dsp.convolver.files"
+ android:defaultValue=""
+ android:dialogTitle="@string/dialog_impulseresponse" />
+ <james.dsp.preference.SummariedTextPreferenceRanged
+ android:key="dsp.convolver.gain"
+ android:defaultValue="0.0"
+ android:dialogTitle="@string/dialog_convgain"
+ android:title="@string/dialog_convgain"
+ android:inputType="numberDecimal|numberSigned" />
+ <james.dsp.preference.SummariedListPreference
+ android:defaultValue="1"
+ android:dialogTitle="@string/dialog_length"
+ android:entries="@array/quality_level"
+ android:entryValues="@array/quality_values"
+ android:title="@string/dialog_quality"
+ android:key="dsp.convolver.quality" />
+ </PreferenceCategory>
+
+ <PreferenceCategory android:title="@string/pref_analogmodelling_title">
+ <james.dsp.preference.SummariedTextPreferenceRanged
+ android:key="dsp.analogmodelling.tubedrive"
+ android:defaultValue="2"
+ android:dialogTitle="@string/dialog_tubedrive"
+ android:title="@string/dialog_tubedrive"
+ android:inputType="numberDecimal"
+ android:digits="0123456789." />
+ </PreferenceCategory>
+
+
+</PreferenceScreen> \ No newline at end of file
diff --git a/app/src/main/res/xml/bluetooth_preferences.xml b/app/src/main/res/xml/bluetooth_preferences.xml
index 20afa12..ca68b56 100644
--- a/app/src/main/res/xml/bluetooth_preferences.xml
+++ b/app/src/main/res/xml/bluetooth_preferences.xml
@@ -7,19 +7,8 @@
android:summaryOff="@string/pref_dsp_summary_off"
android:disableDependentsState="false"
android:title="@string/pref_dsp_enable"></CheckBoxPreference>
- <james.dsp.preference.SummariedTextPreferenceRanged
- android:key="dsp.masterswitch.limthreshold"
- android:defaultValue="-0.1"
- android:dialogTitle="@string/limiter_threshold"
- android:title="@string/limiter_threshold"
- android:inputType="numberDecimal|numberSigned" />
- <james.dsp.preference.SummariedTextPreferenceRanged
- android:key="dsp.masterswitch.limrelease"
- android:defaultValue="60"
- android:dialogTitle="@string/limiter_release"
- android:title="@string/limiter_release"
- android:inputType="number" />
</PreferenceCategory>
+
<PreferenceCategory android:title="@string/pref_compression_title">
<CheckBoxPreference
android:key="dsp.compression.enable"
@@ -27,43 +16,6 @@
android:summaryOff="@string/pref_compression_summary_off"
android:disableDependentsState="false"
android:title="@string/pref_compression_enable"></CheckBoxPreference>
- <james.dsp.preference.SummariedListPreference
- android:key="dsp.compression.pregain"
- android:defaultValue="12"
- android:dialogTitle="@string/dialog_pregain"
- android:entries="@array/compression_pregain"
- android:entryValues="@array/compression_pregain_values"
- android:title="@string/dialog_pregain" />
- <james.dsp.preference.SummariedTextPreferenceRanged
- android:key="dsp.compression.threshold"
- android:defaultValue="-60"
- android:dialogTitle="@string/dialog_threshold"
- android:title="@string/dialog_threshold"
- android:inputType="number|numberSigned" />
- <james.dsp.preference.SummariedTextPreferenceRanged
- android:key="dsp.compression.knee"
- android:defaultValue="30"
- android:dialogTitle="@string/dialog_knee"
- android:title="@string/dialog_knee"
- android:inputType="number" />
- <james.dsp.preference.SummariedTextPreferenceRanged
- android:key="dsp.compression.ratio"
- android:defaultValue="12"
- android:dialogTitle="@string/dialog_ratio"
- android:title="@string/dialog_ratio"
- android:inputType="number|numberSigned" />
- <james.dsp.preference.SummariedTextPreferenceRanged
- android:key="dsp.compression.attack"
- android:defaultValue="0.01"
- android:dialogTitle="@string/dialog_attack"
- android:title="@string/dialog_attack"
- android:inputType="numberDecimal" />
- <james.dsp.preference.SummariedTextPreferenceRanged
- android:key="dsp.compression.release"
- android:defaultValue="0.24"
- android:dialogTitle="@string/dialog_release"
- android:title="@string/dialog_release"
- android:inputType="numberDecimal" />
</PreferenceCategory>
<PreferenceCategory android:title="@string/pref_bassboost_title">
@@ -73,6 +25,7 @@
android:summaryOn="@string/pref_bassboost_summary_on"
android:summaryOff="@string/pref_bassboost_summary_off"
android:title="@string/pref_bassboost_enable"></CheckBoxPreference>
+
<james.dsp.preference.SummariedListPreference
android:entries="@array/bassboost_modes"
android:dialogTitle="@string/dialog_effect"
@@ -80,19 +33,22 @@
android:defaultValue="600"
android:title="@string/pref_effect_title"
android:entryValues="@array/bassboost_modes_values" />
+ </PreferenceCategory>
+
+ <PreferenceCategory android:title="@string/pref_headset_virtual_title">
+ <CheckBoxPreference
+ android:title="@string/pref_headset_virtual_enable"
+ android:key="dsp.headphone.enable"
+ android:summaryOn="@string/pref_headset_virtual_summary_on"
+ android:summaryOff="@string/pref_headset_virtual_summary_off" />
+
<james.dsp.preference.SummariedListPreference
- android:defaultValue="0"
- android:dialogTitle="@string/dialog_filtertype"
- android:entries="@array/bassboost_filtertype"
- android:entryValues="@array/bassboost_filtertype_values"
- android:title="@string/dialog_filtertype"
- android:key="dsp.bass.filtertype" />
- <james.dsp.preference.SummariedTextPreferenceRanged
- android:dialogTitle="@string/pref_effect_freq_title"
- android:key="dsp.bass.freq"
- android:defaultValue="55"
- android:title="@string/pref_effect_freq_title"
- android:inputType="number" />
+ android:title="@string/pref_room_title"
+ android:key="dsp.headphone.preset"
+ android:dialogTitle="@string/dialog_reverbtime"
+ android:entries="@array/headphone_preset"
+ android:entryValues="@array/headphone_preset_values"
+ android:defaultValue="8"/>
</PreferenceCategory>
<PreferenceCategory android:title="@string/pref_equalizer_title">
@@ -103,13 +59,6 @@
android:summaryOff="@string/pref_equalizer_summary_off"
android:title="@string/pref_equalizer_enable"></CheckBoxPreference>
<james.dsp.preference.SummariedListPreference
- android:defaultValue="0"
- android:dialogTitle="@string/dialog_filtertype"
- android:entries="@array/equalizer_filtertype"
- android:entryValues="@array/equalizer_filtertype_values"
- android:title="@string/dialog_filtertype"
- android:key="dsp.tone.filtertype" />
- <james.dsp.preference.SummariedListPreference
android:entries="@array/equalizer_preset_modes"
android:dialogTitle="@string/pref_equalizer_preset_title"
android:key="dsp.tone.eq"
@@ -127,30 +76,8 @@
android:summaryOn="@string/pref_convolver_summary_on"
android:summaryOff="@string/pref_convolver_summary_off"
android:title="@string/pref_convolver_enable"></CheckBoxPreference>
- <james.dsp.preference.SummariedListPreferenceWithCustom
- android:title="@string/dialog_offlineimpulseresponseresampler"
- android:key="dsp.convolver.resampler"
- android:defaultValue=""
- android:dialogTitle="@string/dialog_offlineimpulseresponseresampler_title" />
- <james.dsp.preference.SummariedListPreferenceWithCustom
- android:title="@string/dialog_impulseresponse"
- android:key="dsp.convolver.files"
- android:defaultValue=""
- android:dialogTitle="@string/dialog_impulseresponse" />
- <james.dsp.preference.SummariedTextPreferenceRanged
- android:key="dsp.convolver.gain"
- android:defaultValue="0.0"
- android:dialogTitle="@string/dialog_convgain"
- android:title="@string/dialog_convgain"
- android:inputType="numberDecimal|numberSigned" />
- <james.dsp.preference.SummariedListPreference
- android:defaultValue="1"
- android:dialogTitle="@string/dialog_length"
- android:entries="@array/quality_level"
- android:entryValues="@array/quality_values"
- android:title="@string/dialog_quality"
- android:key="dsp.convolver.quality" />
</PreferenceCategory>
+
<PreferenceCategory android:title="@string/pref_ddc_title" android:key="dsp.ddc">
<CheckBoxPreference
android:key="dsp.ddc.enable"
@@ -164,6 +91,7 @@
android:defaultValue=""
android:dialogTitle="@string/dialog_sosmatrix" />
</PreferenceCategory>
+
<PreferenceCategory android:title="@string/pref_analogmodelling_title"
android:key="dsp.analogmodelling">
<CheckBoxPreference
@@ -172,14 +100,8 @@
android:summaryOn="@string/pref_analogmodelling_summary_on"
android:summaryOff="@string/pref_analogmodelling_summary_off"
android:title="@string/pref_analogmodelling_enable"></CheckBoxPreference>
- <james.dsp.preference.SummariedTextPreferenceRanged
- android:key="dsp.analogmodelling.tubedrive"
- android:defaultValue="2"
- android:dialogTitle="@string/dialog_tubedrive"
- android:title="@string/dialog_tubedrive"
- android:inputType="numberDecimal"
- android:digits="0123456789." />
</PreferenceCategory>
+
<PreferenceCategory android:title="@string/pref_headset_stereowide_title">
<CheckBoxPreference
android:key="dsp.stereowide.enable"
@@ -195,6 +117,7 @@
android:title="@string/dialog_stereo"
android:key="dsp.stereowide.mode" />
</PreferenceCategory>
+
<PreferenceCategory android:title="@string/pref_headset_bs2b_title">
<CheckBoxPreference
android:key="dsp.bs2b.enable"
@@ -210,4 +133,10 @@
android:title="@string/dialog_bs2b"
android:key="dsp.bs2b.mode" />
</PreferenceCategory>
+
+ <PreferenceCategory android:title="@string/advanced_options">
+ <Preference android:title="@string/advanced_options"
+ android:key="advanced.options">
+ </Preference>
+ </PreferenceCategory>
</PreferenceScreen> \ No newline at end of file
diff --git a/app/src/main/res/xml/headset_preferences.xml b/app/src/main/res/xml/headset_preferences.xml
index 20afa12..ca68b56 100644
--- a/app/src/main/res/xml/headset_preferences.xml
+++ b/app/src/main/res/xml/headset_preferences.xml
@@ -7,19 +7,8 @@
android:summaryOff="@string/pref_dsp_summary_off"
android:disableDependentsState="false"
android:title="@string/pref_dsp_enable"></CheckBoxPreference>
- <james.dsp.preference.SummariedTextPreferenceRanged
- android:key="dsp.masterswitch.limthreshold"
- android:defaultValue="-0.1"
- android:dialogTitle="@string/limiter_threshold"
- android:title="@string/limiter_threshold"
- android:inputType="numberDecimal|numberSigned" />
- <james.dsp.preference.SummariedTextPreferenceRanged
- android:key="dsp.masterswitch.limrelease"
- android:defaultValue="60"
- android:dialogTitle="@string/limiter_release"
- android:title="@string/limiter_release"
- android:inputType="number" />
</PreferenceCategory>
+
<PreferenceCategory android:title="@string/pref_compression_title">
<CheckBoxPreference
android:key="dsp.compression.enable"
@@ -27,43 +16,6 @@
android:summaryOff="@string/pref_compression_summary_off"
android:disableDependentsState="false"
android:title="@string/pref_compression_enable"></CheckBoxPreference>
- <james.dsp.preference.SummariedListPreference
- android:key="dsp.compression.pregain"
- android:defaultValue="12"
- android:dialogTitle="@string/dialog_pregain"
- android:entries="@array/compression_pregain"
- android:entryValues="@array/compression_pregain_values"
- android:title="@string/dialog_pregain" />
- <james.dsp.preference.SummariedTextPreferenceRanged
- android:key="dsp.compression.threshold"
- android:defaultValue="-60"
- android:dialogTitle="@string/dialog_threshold"
- android:title="@string/dialog_threshold"
- android:inputType="number|numberSigned" />
- <james.dsp.preference.SummariedTextPreferenceRanged
- android:key="dsp.compression.knee"
- android:defaultValue="30"
- android:dialogTitle="@string/dialog_knee"
- android:title="@string/dialog_knee"
- android:inputType="number" />
- <james.dsp.preference.SummariedTextPreferenceRanged
- android:key="dsp.compression.ratio"
- android:defaultValue="12"
- android:dialogTitle="@string/dialog_ratio"
- android:title="@string/dialog_ratio"
- android:inputType="number|numberSigned" />
- <james.dsp.preference.SummariedTextPreferenceRanged
- android:key="dsp.compression.attack"
- android:defaultValue="0.01"
- android:dialogTitle="@string/dialog_attack"
- android:title="@string/dialog_attack"
- android:inputType="numberDecimal" />
- <james.dsp.preference.SummariedTextPreferenceRanged
- android:key="dsp.compression.release"
- android:defaultValue="0.24"
- android:dialogTitle="@string/dialog_release"
- android:title="@string/dialog_release"
- android:inputType="numberDecimal" />
</PreferenceCategory>
<PreferenceCategory android:title="@string/pref_bassboost_title">
@@ -73,6 +25,7 @@
android:summaryOn="@string/pref_bassboost_summary_on"
android:summaryOff="@string/pref_bassboost_summary_off"
android:title="@string/pref_bassboost_enable"></CheckBoxPreference>
+
<james.dsp.preference.SummariedListPreference
android:entries="@array/bassboost_modes"
android:dialogTitle="@string/dialog_effect"
@@ -80,19 +33,22 @@
android:defaultValue="600"
android:title="@string/pref_effect_title"
android:entryValues="@array/bassboost_modes_values" />
+ </PreferenceCategory>
+
+ <PreferenceCategory android:title="@string/pref_headset_virtual_title">
+ <CheckBoxPreference
+ android:title="@string/pref_headset_virtual_enable"
+ android:key="dsp.headphone.enable"
+ android:summaryOn="@string/pref_headset_virtual_summary_on"
+ android:summaryOff="@string/pref_headset_virtual_summary_off" />
+
<james.dsp.preference.SummariedListPreference
- android:defaultValue="0"
- android:dialogTitle="@string/dialog_filtertype"
- android:entries="@array/bassboost_filtertype"
- android:entryValues="@array/bassboost_filtertype_values"
- android:title="@string/dialog_filtertype"
- android:key="dsp.bass.filtertype" />
- <james.dsp.preference.SummariedTextPreferenceRanged
- android:dialogTitle="@string/pref_effect_freq_title"
- android:key="dsp.bass.freq"
- android:defaultValue="55"
- android:title="@string/pref_effect_freq_title"
- android:inputType="number" />
+ android:title="@string/pref_room_title"
+ android:key="dsp.headphone.preset"
+ android:dialogTitle="@string/dialog_reverbtime"
+ android:entries="@array/headphone_preset"
+ android:entryValues="@array/headphone_preset_values"
+ android:defaultValue="8"/>
</PreferenceCategory>
<PreferenceCategory android:title="@string/pref_equalizer_title">
@@ -103,13 +59,6 @@
android:summaryOff="@string/pref_equalizer_summary_off"
android:title="@string/pref_equalizer_enable"></CheckBoxPreference>
<james.dsp.preference.SummariedListPreference
- android:defaultValue="0"
- android:dialogTitle="@string/dialog_filtertype"
- android:entries="@array/equalizer_filtertype"
- android:entryValues="@array/equalizer_filtertype_values"
- android:title="@string/dialog_filtertype"
- android:key="dsp.tone.filtertype" />
- <james.dsp.preference.SummariedListPreference
android:entries="@array/equalizer_preset_modes"
android:dialogTitle="@string/pref_equalizer_preset_title"
android:key="dsp.tone.eq"
@@ -127,30 +76,8 @@
android:summaryOn="@string/pref_convolver_summary_on"
android:summaryOff="@string/pref_convolver_summary_off"
android:title="@string/pref_convolver_enable"></CheckBoxPreference>
- <james.dsp.preference.SummariedListPreferenceWithCustom
- android:title="@string/dialog_offlineimpulseresponseresampler"
- android:key="dsp.convolver.resampler"
- android:defaultValue=""
- android:dialogTitle="@string/dialog_offlineimpulseresponseresampler_title" />
- <james.dsp.preference.SummariedListPreferenceWithCustom
- android:title="@string/dialog_impulseresponse"
- android:key="dsp.convolver.files"
- android:defaultValue=""
- android:dialogTitle="@string/dialog_impulseresponse" />
- <james.dsp.preference.SummariedTextPreferenceRanged
- android:key="dsp.convolver.gain"
- android:defaultValue="0.0"
- android:dialogTitle="@string/dialog_convgain"
- android:title="@string/dialog_convgain"
- android:inputType="numberDecimal|numberSigned" />
- <james.dsp.preference.SummariedListPreference
- android:defaultValue="1"
- android:dialogTitle="@string/dialog_length"
- android:entries="@array/quality_level"
- android:entryValues="@array/quality_values"
- android:title="@string/dialog_quality"
- android:key="dsp.convolver.quality" />
</PreferenceCategory>
+
<PreferenceCategory android:title="@string/pref_ddc_title" android:key="dsp.ddc">
<CheckBoxPreference
android:key="dsp.ddc.enable"
@@ -164,6 +91,7 @@
android:defaultValue=""
android:dialogTitle="@string/dialog_sosmatrix" />
</PreferenceCategory>
+
<PreferenceCategory android:title="@string/pref_analogmodelling_title"
android:key="dsp.analogmodelling">
<CheckBoxPreference
@@ -172,14 +100,8 @@
android:summaryOn="@string/pref_analogmodelling_summary_on"
android:summaryOff="@string/pref_analogmodelling_summary_off"
android:title="@string/pref_analogmodelling_enable"></CheckBoxPreference>
- <james.dsp.preference.SummariedTextPreferenceRanged
- android:key="dsp.analogmodelling.tubedrive"
- android:defaultValue="2"
- android:dialogTitle="@string/dialog_tubedrive"
- android:title="@string/dialog_tubedrive"
- android:inputType="numberDecimal"
- android:digits="0123456789." />
</PreferenceCategory>
+
<PreferenceCategory android:title="@string/pref_headset_stereowide_title">
<CheckBoxPreference
android:key="dsp.stereowide.enable"
@@ -195,6 +117,7 @@
android:title="@string/dialog_stereo"
android:key="dsp.stereowide.mode" />
</PreferenceCategory>
+
<PreferenceCategory android:title="@string/pref_headset_bs2b_title">
<CheckBoxPreference
android:key="dsp.bs2b.enable"
@@ -210,4 +133,10 @@
android:title="@string/dialog_bs2b"
android:key="dsp.bs2b.mode" />
</PreferenceCategory>
+
+ <PreferenceCategory android:title="@string/advanced_options">
+ <Preference android:title="@string/advanced_options"
+ android:key="advanced.options">
+ </Preference>
+ </PreferenceCategory>
</PreferenceScreen> \ No newline at end of file
diff --git a/app/src/main/res/xml/speaker_preferences.xml b/app/src/main/res/xml/speaker_preferences.xml
index 20afa12..ca68b56 100644
--- a/app/src/main/res/xml/speaker_preferences.xml
+++ b/app/src/main/res/xml/speaker_preferences.xml
@@ -7,19 +7,8 @@
android:summaryOff="@string/pref_dsp_summary_off"
android:disableDependentsState="false"
android:title="@string/pref_dsp_enable"></CheckBoxPreference>
- <james.dsp.preference.SummariedTextPreferenceRanged
- android:key="dsp.masterswitch.limthreshold"
- android:defaultValue="-0.1"
- android:dialogTitle="@string/limiter_threshold"
- android:title="@string/limiter_threshold"
- android:inputType="numberDecimal|numberSigned" />
- <james.dsp.preference.SummariedTextPreferenceRanged
- android:key="dsp.masterswitch.limrelease"
- android:defaultValue="60"
- android:dialogTitle="@string/limiter_release"
- android:title="@string/limiter_release"
- android:inputType="number" />
</PreferenceCategory>
+
<PreferenceCategory android:title="@string/pref_compression_title">
<CheckBoxPreference
android:key="dsp.compression.enable"
@@ -27,43 +16,6 @@
android:summaryOff="@string/pref_compression_summary_off"
android:disableDependentsState="false"
android:title="@string/pref_compression_enable"></CheckBoxPreference>
- <james.dsp.preference.SummariedListPreference
- android:key="dsp.compression.pregain"
- android:defaultValue="12"
- android:dialogTitle="@string/dialog_pregain"
- android:entries="@array/compression_pregain"
- android:entryValues="@array/compression_pregain_values"
- android:title="@string/dialog_pregain" />
- <james.dsp.preference.SummariedTextPreferenceRanged
- android:key="dsp.compression.threshold"
- android:defaultValue="-60"
- android:dialogTitle="@string/dialog_threshold"
- android:title="@string/dialog_threshold"
- android:inputType="number|numberSigned" />
- <james.dsp.preference.SummariedTextPreferenceRanged
- android:key="dsp.compression.knee"
- android:defaultValue="30"
- android:dialogTitle="@string/dialog_knee"
- android:title="@string/dialog_knee"
- android:inputType="number" />
- <james.dsp.preference.SummariedTextPreferenceRanged
- android:key="dsp.compression.ratio"
- android:defaultValue="12"
- android:dialogTitle="@string/dialog_ratio"
- android:title="@string/dialog_ratio"
- android:inputType="number|numberSigned" />
- <james.dsp.preference.SummariedTextPreferenceRanged
- android:key="dsp.compression.attack"
- android:defaultValue="0.01"
- android:dialogTitle="@string/dialog_attack"
- android:title="@string/dialog_attack"
- android:inputType="numberDecimal" />
- <james.dsp.preference.SummariedTextPreferenceRanged
- android:key="dsp.compression.release"
- android:defaultValue="0.24"
- android:dialogTitle="@string/dialog_release"
- android:title="@string/dialog_release"
- android:inputType="numberDecimal" />
</PreferenceCategory>
<PreferenceCategory android:title="@string/pref_bassboost_title">
@@ -73,6 +25,7 @@
android:summaryOn="@string/pref_bassboost_summary_on"
android:summaryOff="@string/pref_bassboost_summary_off"
android:title="@string/pref_bassboost_enable"></CheckBoxPreference>
+
<james.dsp.preference.SummariedListPreference
android:entries="@array/bassboost_modes"
android:dialogTitle="@string/dialog_effect"
@@ -80,19 +33,22 @@
android:defaultValue="600"
android:title="@string/pref_effect_title"
android:entryValues="@array/bassboost_modes_values" />
+ </PreferenceCategory>
+
+ <PreferenceCategory android:title="@string/pref_headset_virtual_title">
+ <CheckBoxPreference
+ android:title="@string/pref_headset_virtual_enable"
+ android:key="dsp.headphone.enable"
+ android:summaryOn="@string/pref_headset_virtual_summary_on"
+ android:summaryOff="@string/pref_headset_virtual_summary_off" />
+
<james.dsp.preference.SummariedListPreference
- android:defaultValue="0"
- android:dialogTitle="@string/dialog_filtertype"
- android:entries="@array/bassboost_filtertype"
- android:entryValues="@array/bassboost_filtertype_values"
- android:title="@string/dialog_filtertype"
- android:key="dsp.bass.filtertype" />
- <james.dsp.preference.SummariedTextPreferenceRanged
- android:dialogTitle="@string/pref_effect_freq_title"
- android:key="dsp.bass.freq"
- android:defaultValue="55"
- android:title="@string/pref_effect_freq_title"
- android:inputType="number" />
+ android:title="@string/pref_room_title"
+ android:key="dsp.headphone.preset"
+ android:dialogTitle="@string/dialog_reverbtime"
+ android:entries="@array/headphone_preset"
+ android:entryValues="@array/headphone_preset_values"
+ android:defaultValue="8"/>
</PreferenceCategory>
<PreferenceCategory android:title="@string/pref_equalizer_title">
@@ -103,13 +59,6 @@
android:summaryOff="@string/pref_equalizer_summary_off"
android:title="@string/pref_equalizer_enable"></CheckBoxPreference>
<james.dsp.preference.SummariedListPreference
- android:defaultValue="0"
- android:dialogTitle="@string/dialog_filtertype"
- android:entries="@array/equalizer_filtertype"
- android:entryValues="@array/equalizer_filtertype_values"
- android:title="@string/dialog_filtertype"
- android:key="dsp.tone.filtertype" />
- <james.dsp.preference.SummariedListPreference
android:entries="@array/equalizer_preset_modes"
android:dialogTitle="@string/pref_equalizer_preset_title"
android:key="dsp.tone.eq"
@@ -127,30 +76,8 @@
android:summaryOn="@string/pref_convolver_summary_on"
android:summaryOff="@string/pref_convolver_summary_off"
android:title="@string/pref_convolver_enable"></CheckBoxPreference>
- <james.dsp.preference.SummariedListPreferenceWithCustom
- android:title="@string/dialog_offlineimpulseresponseresampler"
- android:key="dsp.convolver.resampler"
- android:defaultValue=""
- android:dialogTitle="@string/dialog_offlineimpulseresponseresampler_title" />
- <james.dsp.preference.SummariedListPreferenceWithCustom
- android:title="@string/dialog_impulseresponse"
- android:key="dsp.convolver.files"
- android:defaultValue=""
- android:dialogTitle="@string/dialog_impulseresponse" />
- <james.dsp.preference.SummariedTextPreferenceRanged
- android:key="dsp.convolver.gain"
- android:defaultValue="0.0"
- android:dialogTitle="@string/dialog_convgain"
- android:title="@string/dialog_convgain"
- android:inputType="numberDecimal|numberSigned" />
- <james.dsp.preference.SummariedListPreference
- android:defaultValue="1"
- android:dialogTitle="@string/dialog_length"
- android:entries="@array/quality_level"
- android:entryValues="@array/quality_values"
- android:title="@string/dialog_quality"
- android:key="dsp.convolver.quality" />
</PreferenceCategory>
+
<PreferenceCategory android:title="@string/pref_ddc_title" android:key="dsp.ddc">
<CheckBoxPreference
android:key="dsp.ddc.enable"
@@ -164,6 +91,7 @@
android:defaultValue=""
android:dialogTitle="@string/dialog_sosmatrix" />
</PreferenceCategory>
+
<PreferenceCategory android:title="@string/pref_analogmodelling_title"
android:key="dsp.analogmodelling">
<CheckBoxPreference
@@ -172,14 +100,8 @@
android:summaryOn="@string/pref_analogmodelling_summary_on"
android:summaryOff="@string/pref_analogmodelling_summary_off"
android:title="@string/pref_analogmodelling_enable"></CheckBoxPreference>
- <james.dsp.preference.SummariedTextPreferenceRanged
- android:key="dsp.analogmodelling.tubedrive"
- android:defaultValue="2"
- android:dialogTitle="@string/dialog_tubedrive"
- android:title="@string/dialog_tubedrive"
- android:inputType="numberDecimal"
- android:digits="0123456789." />
</PreferenceCategory>
+
<PreferenceCategory android:title="@string/pref_headset_stereowide_title">
<CheckBoxPreference
android:key="dsp.stereowide.enable"
@@ -195,6 +117,7 @@
android:title="@string/dialog_stereo"
android:key="dsp.stereowide.mode" />
</PreferenceCategory>
+
<PreferenceCategory android:title="@string/pref_headset_bs2b_title">
<CheckBoxPreference
android:key="dsp.bs2b.enable"
@@ -210,4 +133,10 @@
android:title="@string/dialog_bs2b"
android:key="dsp.bs2b.mode" />
</PreferenceCategory>
+
+ <PreferenceCategory android:title="@string/advanced_options">
+ <Preference android:title="@string/advanced_options"
+ android:key="advanced.options">
+ </Preference>
+ </PreferenceCategory>
</PreferenceScreen> \ No newline at end of file