mirror of
https://github.com/xdsopl/robot36.git
synced 2026-01-06 00:09:57 +01:00
Merge branch 'v2' into adding-hffax
# Conflicts: # app/src/main/java/xdsopl/robot36/MainActivity.java
This commit is contained in:
commit
e29f5728e3
|
|
@ -4,12 +4,12 @@ plugins {
|
|||
|
||||
android {
|
||||
namespace 'xdsopl.robot36'
|
||||
compileSdk 35
|
||||
compileSdk = 36
|
||||
|
||||
defaultConfig {
|
||||
applicationId "xdsopl.robot36"
|
||||
minSdk 24
|
||||
targetSdk 35
|
||||
targetSdk 36
|
||||
versionCode 65
|
||||
versionName "2.15"
|
||||
|
||||
|
|
|
|||
|
|
@ -15,7 +15,6 @@ import android.content.SharedPreferences;
|
|||
import android.content.pm.PackageManager;
|
||||
import android.content.res.Configuration;
|
||||
import android.graphics.Bitmap;
|
||||
import android.graphics.Color;
|
||||
import android.media.AudioFormat;
|
||||
import android.media.AudioRecord;
|
||||
import android.media.MediaRecorder;
|
||||
|
|
@ -44,7 +43,6 @@ import androidx.appcompat.app.AppCompatDelegate;
|
|||
import androidx.appcompat.widget.ShareActionProvider;
|
||||
import androidx.core.app.ActivityCompat;
|
||||
import androidx.core.content.ContextCompat;
|
||||
import androidx.core.graphics.ColorUtils;
|
||||
import androidx.core.graphics.Insets;
|
||||
import androidx.core.os.LocaleListCompat;
|
||||
import androidx.core.view.MenuItemCompat;
|
||||
|
|
@ -74,7 +72,6 @@ public class MainActivity extends AppCompatActivity {
|
|||
private ImageView peakMeterView;
|
||||
private PixelBuffer imageBuffer;
|
||||
private ShortTimeFourierTransform stft;
|
||||
private final int binWidthHz = 10;
|
||||
private short[] shortBuffer;
|
||||
private float[] recordBuffer;
|
||||
private AudioRecord audioRecord;
|
||||
|
|
@ -92,6 +89,8 @@ public class MainActivity extends AppCompatActivity {
|
|||
private int tintColor;
|
||||
private boolean autoSave;
|
||||
private boolean showSpectrogram;
|
||||
private final int binWidthHz = 10;
|
||||
private final int[] freqMarkers = { 1100, 1300, 1500, 2300 };
|
||||
|
||||
private void setStatus(int id) {
|
||||
setTitle(id);
|
||||
|
|
@ -226,22 +225,12 @@ public class MainActivity extends AppCompatActivity {
|
|||
double lowest = Math.log(1e-9);
|
||||
double highest = Math.log(1);
|
||||
double range = highest - lowest;
|
||||
int lowestBin = 14;
|
||||
int minFreq = 140;
|
||||
int minBin = minFreq / binWidthHz;
|
||||
for (int i = 0; i < stride; ++i)
|
||||
waterfallPlotBuffer.pixels[line + i] = rainbow((Math.log(stft.power[i + lowestBin]) - lowest) / range);
|
||||
|
||||
int[] markerFrequencies = new int[] {
|
||||
(int)Demodulator.syncPulseFrequency,
|
||||
(int)Demodulator.blackFrequency,
|
||||
(int)Demodulator.whiteFrequency,
|
||||
};
|
||||
for (int freq: markerFrequencies) {
|
||||
int marker = freq / binWidthHz - lowestBin;
|
||||
waterfallPlotBuffer.pixels[line + marker - 1] = Color.BLACK;
|
||||
waterfallPlotBuffer.pixels[line + marker] = ColorUtils.blendARGB(waterfallPlotBuffer.pixels[line + marker], Color.GREEN, 0.8f);
|
||||
waterfallPlotBuffer.pixels[line + marker + 1] = Color.BLACK;
|
||||
}
|
||||
|
||||
waterfallPlotBuffer.pixels[line + i] = rainbow((Math.log(stft.power[i + minBin]) - lowest) / range);
|
||||
for (int freq : freqMarkers)
|
||||
waterfallPlotBuffer.pixels[line + (freq - minFreq) / binWidthHz] = fgColor;
|
||||
System.arraycopy(waterfallPlotBuffer.pixels, line, waterfallPlotBuffer.pixels, line + stride * (waterfallPlotBuffer.height / 2), stride);
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,9 +1,9 @@
|
|||
[versions]
|
||||
agp = "8.9.0"
|
||||
agp = "8.12.1"
|
||||
junit = "4.13.2"
|
||||
junitVersion = "1.2.1"
|
||||
espressoCore = "3.6.1"
|
||||
appcompat = "1.7.0"
|
||||
junitVersion = "1.3.0"
|
||||
espressoCore = "3.7.0"
|
||||
appcompat = "1.7.1"
|
||||
material = "1.12.0"
|
||||
activity = "1.10.1"
|
||||
constraintlayout = "2.2.1"
|
||||
|
|
|
|||
2
gradle/wrapper/gradle-wrapper.properties
vendored
2
gradle/wrapper/gradle-wrapper.properties
vendored
|
|
@ -1,6 +1,6 @@
|
|||
#Fri Apr 12 11:35:07 CEST 2024
|
||||
distributionBase=GRADLE_USER_HOME
|
||||
distributionPath=wrapper/dists
|
||||
distributionUrl=https\://services.gradle.org/distributions/gradle-8.11.1-bin.zip
|
||||
distributionUrl=https\://services.gradle.org/distributions/gradle-8.14.3-bin.zip
|
||||
zipStoreBase=GRADLE_USER_HOME
|
||||
zipStorePath=wrapper/dists
|
||||
|
|
|
|||
Loading…
Reference in a new issue