From 4a691defb4a184eded10303cb313f5d7e9e8a454 Mon Sep 17 00:00:00 2001 From: Alexey Kuznetsov Date: Wed, 15 Aug 2018 17:07:25 +0300 Subject: [PATCH 1/2] add raw source --- app/build.gradle | 2 +- .../activities/RecordingActivity.java | 19 +++++++++++++++---- .../activities/SettingsActivity.java | 15 ++++++++------- .../audiorecorder/app/MainApplication.java | 8 +++++--- .../services/BluetoothReceiver.java | 2 +- app/src/main/res/values-de/strings.xml | 2 ++ app/src/main/res/values-el/strings.xml | 2 ++ app/src/main/res/values-fr/strings.xml | 2 ++ app/src/main/res/values-it/strings.xml | 2 ++ app/src/main/res/values-ja/strings.xml | 2 ++ app/src/main/res/values-pl/strings.xml | 2 ++ app/src/main/res/values-pt-rBR/strings.xml | 2 ++ app/src/main/res/values-ru/strings.xml | 2 ++ app/src/main/res/values-sk/strings.xml | 2 ++ app/src/main/res/values/attrs.xml | 2 ++ app/src/main/res/values/strings.xml | 4 ++++ 16 files changed, 54 insertions(+), 16 deletions(-) diff --git a/app/build.gradle b/app/build.gradle index 5a1d68e..bb8c257 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -57,5 +57,5 @@ android { dependencies { testImplementation 'junit:junit:4.12' - implementation 'com.github.axet:android-audio-library:1.0.113' // implementation project(':android-audio-library') + implementation 'com.github.axet:android-audio-library:1.0.115' // implementation project(':android-audio-library') } diff --git a/app/src/main/java/com/github/axet/audiorecorder/activities/RecordingActivity.java b/app/src/main/java/com/github/axet/audiorecorder/activities/RecordingActivity.java index 9f5912c..e9136c7 100644 --- a/app/src/main/java/com/github/axet/audiorecorder/activities/RecordingActivity.java +++ b/app/src/main/java/com/github/axet/audiorecorder/activities/RecordingActivity.java @@ -15,6 +15,7 @@ import android.media.AudioManager; import android.media.AudioRecord; import android.media.MediaRecorder; import android.net.Uri; +import android.os.Build; import android.os.Bundle; import android.os.Handler; import android.os.Process; @@ -61,6 +62,7 @@ import com.github.axet.audiorecorder.services.RecordingService; import java.io.File; import java.nio.ShortBuffer; +import java.util.TreeMap; import java.util.concurrent.atomic.AtomicBoolean; public class RecordingActivity extends AppCompatThemeActivity { @@ -700,7 +702,7 @@ public class RecordingActivity extends AppCompatThemeActivity { void startRecording() { try { - startRecordingError(); + startRecordingTry(); } catch (RuntimeException e) { Log.d(TAG, "unable to start", e); Toast.makeText(RecordingActivity.this, "Unable to initialize AudioRecord", Toast.LENGTH_SHORT).show(); @@ -708,7 +710,7 @@ public class RecordingActivity extends AppCompatThemeActivity { } } - void startRecordingError() { + void startRecordingTry() { headset(true, true); edit(false, true); @@ -723,13 +725,22 @@ public class RecordingActivity extends AppCompatThemeActivity { pitch.record(); + final SharedPreferences shared = PreferenceManager.getDefaultSharedPreferences(this); + + TreeMap map = new TreeMap<>(); + map.put(getString(R.string.source_mic), MediaRecorder.AudioSource.MIC); + map.put(getString(R.string.source_default), MediaRecorder.AudioSource.DEFAULT); + if (Sound.isUnprocessedSupported(this)) + map.put(getString(R.string.source_raw), MediaRecorder.AudioSource.UNPROCESSED); + else + map.put(getString(R.string.source_raw), MediaRecorder.AudioSource.VOICE_RECOGNITION); + int[] ss = new int[]{ + map.get(shared.getString(MainApplication.PREFERENCE_SOURCE, getString(R.string.source_mic))), MediaRecorder.AudioSource.MIC, MediaRecorder.AudioSource.DEFAULT }; - final SharedPreferences shared = PreferenceManager.getDefaultSharedPreferences(this); - if (shared.getBoolean(MainApplication.PREFERENCE_FLY, false)) { final OnFlyEncoding fly = new OnFlyEncoding(storage, targetUri, getInfo()); if (e == null) { // do not recreate encoder if on-fly mode enabled diff --git a/app/src/main/java/com/github/axet/audiorecorder/activities/SettingsActivity.java b/app/src/main/java/com/github/axet/audiorecorder/activities/SettingsActivity.java index e69ad4d..d220912 100644 --- a/app/src/main/java/com/github/axet/audiorecorder/activities/SettingsActivity.java +++ b/app/src/main/java/com/github/axet/audiorecorder/activities/SettingsActivity.java @@ -15,8 +15,6 @@ import android.preference.PreferenceActivity; import android.preference.PreferenceFragment; import android.support.annotation.NonNull; import android.support.v7.app.ActionBar; -import android.support.v7.app.AlertDialog; -import android.support.v7.app.AppCompatActivity; import android.support.v7.preference.ListPreference; import android.support.v7.preference.Preference; import android.support.v7.preference.PreferenceFragmentCompat; @@ -24,17 +22,14 @@ import android.support.v7.preference.PreferenceManager; import android.support.v7.preference.PreferenceScreen; import android.support.v7.preference.SwitchPreferenceCompat; import android.view.MenuItem; -import android.widget.ProgressBar; -import android.widget.SeekBar; import android.widget.Toast; import com.github.axet.androidlibrary.widgets.AppCompatSettingsThemeActivity; import com.github.axet.androidlibrary.widgets.NameFormatPreferenceCompat; -import com.github.axet.androidlibrary.widgets.OpenFileDialog; import com.github.axet.androidlibrary.widgets.SeekBarPreference; import com.github.axet.androidlibrary.widgets.SilencePreferenceCompat; import com.github.axet.androidlibrary.widgets.StoragePathPreferenceCompat; -import com.github.axet.androidlibrary.widgets.ThemeUtils; +import com.github.axet.audiolibrary.app.Sound; import com.github.axet.audiolibrary.encoders.Factory; import com.github.axet.audiolibrary.widgets.RecordingVolumePreference; import com.github.axet.audiorecorder.R; @@ -204,6 +199,12 @@ public class SettingsActivity extends AppCompatSettingsThemeActivity implements if (key.equals(MainApplication.PREFERENCE_STORAGE)) { Storage.migrateLocalStorageDialog(this, handler, new Storage(this)); } + if (key.equals(MainApplication.PREFERENCE_RATE)) { + int sampleRate = Integer.parseInt(sharedPreferences.getString(MainApplication.PREFERENCE_RATE, "")); + if (sampleRate != Sound.getValidRecordRate(Sound.getInMode(this), sampleRate)) { + Toast.makeText(this, "Not supported Hz", Toast.LENGTH_SHORT).show(); + } + } } @Override @@ -273,7 +274,7 @@ public class SettingsActivity extends AppCompatSettingsThemeActivity implements s.setStorageAccessFramework(this, RESULT_STORAGE); AudioManager am = (AudioManager) context.getSystemService(AUDIO_SERVICE); - Preference bluetooth = pm.findPreference(MainApplication.PREFERENCE_BLUETOOTH); + Preference bluetooth = pm.findPreference(MainApplication.PREFERENCE_SOURCE); if (!am.isBluetoothScoAvailableOffCall()) { bluetooth.setVisible(false); } diff --git a/app/src/main/java/com/github/axet/audiorecorder/app/MainApplication.java b/app/src/main/java/com/github/axet/audiorecorder/app/MainApplication.java index 637461a..a52bace 100644 --- a/app/src/main/java/com/github/axet/audiorecorder/app/MainApplication.java +++ b/app/src/main/java/com/github/axet/audiorecorder/app/MainApplication.java @@ -5,6 +5,8 @@ import android.content.SharedPreferences; import android.os.Build; import android.support.v7.preference.PreferenceManager; +import com.github.axet.audiolibrary.encoders.FormatFLAC; +import com.github.axet.audiolibrary.encoders.FormatM4A; import com.github.axet.audiolibrary.encoders.FormatOGG; import com.github.axet.audiorecorder.R; @@ -13,7 +15,7 @@ public class MainApplication extends com.github.axet.audiolibrary.app.MainApplic public static final String PREFERENCE_CONTROLS = "controls"; public static final String PREFERENCE_TARGET = "target"; public static final String PREFERENCE_FLY = "fly"; - public static final String PREFERENCE_BLUETOOTH = "bluetooth"; + public static final String PREFERENCE_SOURCE = "bluetooth"; public static final String PREFERENCE_VERSION = "version"; @@ -31,9 +33,9 @@ public class MainApplication extends com.github.axet.audiolibrary.app.MainApplic SharedPreferences shared = PreferenceManager.getDefaultSharedPreferences(this); SharedPreferences.Editor edit = shared.edit(); if (Build.VERSION.SDK_INT >= 18) - edit.putString(MainApplication.PREFERENCE_ENCODING, "m4a"); + edit.putString(MainApplication.PREFERENCE_ENCODING, FormatM4A.EXT); else - edit.putString(MainApplication.PREFERENCE_ENCODING, "flac"); + edit.putString(MainApplication.PREFERENCE_ENCODING, FormatFLAC.EXT); edit.commit(); } SharedPreferences shared = PreferenceManager.getDefaultSharedPreferences(this); diff --git a/app/src/main/java/com/github/axet/audiorecorder/services/BluetoothReceiver.java b/app/src/main/java/com/github/axet/audiorecorder/services/BluetoothReceiver.java index c49d0ac..742b178 100644 --- a/app/src/main/java/com/github/axet/audiorecorder/services/BluetoothReceiver.java +++ b/app/src/main/java/com/github/axet/audiorecorder/services/BluetoothReceiver.java @@ -140,7 +140,7 @@ public class BluetoothReceiver extends BroadcastReceiver { public boolean isRecordingReady() { final SharedPreferences shared = PreferenceManager.getDefaultSharedPreferences(context); - if (shared.getString(MainApplication.PREFERENCE_BLUETOOTH, context.getString(R.string.source_mic)).equals(context.getString(R.string.source_bluetooth))) { + if (shared.getString(MainApplication.PREFERENCE_SOURCE, context.getString(R.string.source_mic)).equals(context.getString(R.string.source_bluetooth))) { bluetoothSource = true; if (!startBluetooth()) return false; diff --git a/app/src/main/res/values-de/strings.xml b/app/src/main/res/values-de/strings.xml index 4c4fca8..3e7bfcc 100644 --- a/app/src/main/res/values-de/strings.xml +++ b/app/src/main/res/values-de/strings.xml @@ -13,6 +13,8 @@ Mic + Default + Unprocessed Bluetooth diff --git a/app/src/main/res/values-el/strings.xml b/app/src/main/res/values-el/strings.xml index e25cd2a..1503839 100644 --- a/app/src/main/res/values-el/strings.xml +++ b/app/src/main/res/values-el/strings.xml @@ -11,6 +11,8 @@ Μικρόφωνο + Default + Unprocessed Bluetooth diff --git a/app/src/main/res/values-fr/strings.xml b/app/src/main/res/values-fr/strings.xml index 60d7470..bbda5cb 100644 --- a/app/src/main/res/values-fr/strings.xml +++ b/app/src/main/res/values-fr/strings.xml @@ -13,6 +13,8 @@ Mic + Default + Unprocessed Bluetooth diff --git a/app/src/main/res/values-it/strings.xml b/app/src/main/res/values-it/strings.xml index 4a5c8ae..8ee0566 100644 --- a/app/src/main/res/values-it/strings.xml +++ b/app/src/main/res/values-it/strings.xml @@ -13,6 +13,8 @@ Mic + Default + Unprocessed Bluetooth diff --git a/app/src/main/res/values-ja/strings.xml b/app/src/main/res/values-ja/strings.xml index 4965e2b..641aade 100644 --- a/app/src/main/res/values-ja/strings.xml +++ b/app/src/main/res/values-ja/strings.xml @@ -13,6 +13,8 @@ Mic + Default + Unprocessed Bluetooth diff --git a/app/src/main/res/values-pl/strings.xml b/app/src/main/res/values-pl/strings.xml index 4c1e787..adb51cb 100644 --- a/app/src/main/res/values-pl/strings.xml +++ b/app/src/main/res/values-pl/strings.xml @@ -13,6 +13,8 @@ Mikrofon + Default + Unprocessed Bluetooth diff --git a/app/src/main/res/values-pt-rBR/strings.xml b/app/src/main/res/values-pt-rBR/strings.xml index a335cb0..5f5a018 100644 --- a/app/src/main/res/values-pt-rBR/strings.xml +++ b/app/src/main/res/values-pt-rBR/strings.xml @@ -13,6 +13,8 @@ Mic + Default + Unprocessed Bluetooth diff --git a/app/src/main/res/values-ru/strings.xml b/app/src/main/res/values-ru/strings.xml index e3db2e5..f279664 100644 --- a/app/src/main/res/values-ru/strings.xml +++ b/app/src/main/res/values-ru/strings.xml @@ -18,6 +18,8 @@ Микрофон + По умолчанию + Необработанный Bluetooth diff --git a/app/src/main/res/values-sk/strings.xml b/app/src/main/res/values-sk/strings.xml index 8cd5fe2..7f6e2ec 100644 --- a/app/src/main/res/values-sk/strings.xml +++ b/app/src/main/res/values-sk/strings.xml @@ -13,6 +13,8 @@ Mikrofón + Default + Unprocessed Bluetooth diff --git a/app/src/main/res/values/attrs.xml b/app/src/main/res/values/attrs.xml index 768035a..97c23de 100644 --- a/app/src/main/res/values/attrs.xml +++ b/app/src/main/res/values/attrs.xml @@ -3,5 +3,7 @@ mic + default + raw bluetooth diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml index acfe787..790d109 100644 --- a/app/src/main/res/values/strings.xml +++ b/app/src/main/res/values/strings.xml @@ -23,11 +23,15 @@ Mic + Default + Unprocessed Bluetooth @string/source_mic + @string/source_default + @string/source_raw @string/source_bluetooth From b37ce1f62a77576045ffa7b4cde9b0119d6a5eb5 Mon Sep 17 00:00:00 2001 From: Alexey Kuznetsov Date: Wed, 15 Aug 2018 18:22:13 +0300 Subject: [PATCH 2/2] Bump version audiorecorder-3.2.16 --- app/build.gradle | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/app/build.gradle b/app/build.gradle index bb8c257..25be5a9 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -10,8 +10,8 @@ android { applicationId "com.github.axet.audiorecorder" minSdkVersion 9 targetSdkVersion 23 // 24+ file:// unable to open - versionCode 273 - versionName "3.2.15" + versionCode 274 + versionName "3.2.16" } signingConfigs { release {