mirror of
https://github.com/xdsopl/robot36.git
synced 2025-12-06 07:12:07 +01:00
Compare commits
2 commits
1a722d5289
...
5e2d28ee7f
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
5e2d28ee7f | ||
|
|
1502f20af1 |
|
|
@ -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"
|
||||
|
||||
|
|
|
|||
|
|
@ -89,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);
|
||||
|
|
@ -223,8 +225,12 @@ public class MainActivity extends AppCompatActivity {
|
|||
double lowest = Math.log(1e-9);
|
||||
double highest = Math.log(1);
|
||||
double range = highest - lowest;
|
||||
int minFreq = 140;
|
||||
int minBin = minFreq / binWidthHz;
|
||||
for (int i = 0; i < stride; ++i)
|
||||
waterfallPlotBuffer.pixels[line + i] = rainbow((Math.log(stft.power[i + 14]) - lowest) / range);
|
||||
waterfallPlotBuffer.pixels[line + i] = rainbow((Math.log(stft.power[i + minBin]) - lowest) / range);
|
||||
for (int freq : freqMarkers)
|
||||
waterfallPlotBuffer.pixels[line + (freq - minFreq) / binWidthHz] = 0;
|
||||
System.arraycopy(waterfallPlotBuffer.pixels, line, waterfallPlotBuffer.pixels, line + stride * (waterfallPlotBuffer.height / 2), stride);
|
||||
}
|
||||
}
|
||||
|
|
@ -315,7 +321,7 @@ public class MainActivity extends AppCompatActivity {
|
|||
if (rateChanged) {
|
||||
decoder = new Decoder(scopeBuffer, imageBuffer, getString(R.string.raw_mode), recordRate);
|
||||
decoder.setMode(currentMode);
|
||||
stft = new ShortTimeFourierTransform(recordRate / 10, 3);
|
||||
stft = new ShortTimeFourierTransform(recordRate / binWidthHz, 3);
|
||||
}
|
||||
startListening();
|
||||
} else {
|
||||
|
|
|
|||
|
|
@ -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