Native Android DSP Audio Control App
Budget / Salary£3,000–5,000
TypeFreelance project
LocationRemote
Posted1 hour ago
SOFTWARE REQUIREMENT SPECIFICATIONS (SRS)
Project: Native Android Application for Real-Time DSP Audio Synthesis, Hardware Bluetooth Licensing, GPS/Wi-Fi Actuator Auto-Control, and Cloud Services
1.
PROJECT OVERVIEW & GENERAL ARCHITECTURE A high-performance, native Android application built using Kotlin and Jetpack Compose, engineered for specialized fishing audio control with a multi-layered technical ecosystem:
•
Real-time DSP Mathematical Audio Synthesizer (16-bit PCM at 44.1 kHz) + Encrypted Studio MP3 Audio Player.
•
Hardware Security & Bluetooth A2DP Amplifier Licensing (3-step Offline/Online verification via Firebase).
•
GPS & Wi-Fi Actuator Auto-Control Module (1-second Fused GPS speed monitoring, anti-GPS jumping filters, offline Wi-Fi SoftAP process binding to 192.168.4.1 ESP32 module, screen-off foreground service).
•
Remote Control & BLE Pedal Key Event Interception (Strict 12-char hex MAC address authorization, unauthorized remote blocking, system key override).
•
C++ Native Security (JNI/NDK): AES-256 CTR in-memory media decryption without writing unencrypted files to disk.
•
Operational Hours Tracking & Cloud Warranty Service (Firebase Realtime Database & Storage with offline pending_sync.json buffer).
2.
DETAILED MODULE SPECIFICATIONS
MODULE A: User Interface (UI/UX) & Dynamic 14-Language Localization
•
Design & Theme: Premium Dark UI (Pure Black background, Neon Green #00FF00, Neon Red #FF0000, Gold #FFD700, Info Blue #0099FF).
•
Dynamic 14-Language Localization: Instant runtime switching without app restart for 14 languages: English (EN), Romanian (RO), German (DE), French (FR), Italian (IT), Spanish (ES), Hungarian (HU), Bulgarian (BG), Turkish (TR), Polish (PL), Serbian (SR), Croatian (HR), Czech (CZ), Slovak (SK). Automated fallback hierarchy: Firebase Cloud Database -> Local JSON Cache -> In-App Hardcoded Fallbacks.
•
3 Main Navigation Tabs (Bottom Navigation Bar):
i.
SONGS (Player): Main MP3/WAV loop playback, secondary sound list with programmable repeat intervals (1-60s or random pauses), remote control mode badge, fast song selector.
ii.
MIXER (Synthesizer): Real-time mathematical generator with 8 tactile parameters, dynamic 32-frequency Canvas oscilloscope visualizer, profile name text field, JSON profile saving button.
iii.
ACTUATOR: Digital speedometer, GPS accuracy indicator, ESP32 Wi-Fi SoftAP connection status, Auto-Lift toggle switch, manual Lift Up and Lower Down command buttons.
iv.
EQUALIZER & VOLUME: Unified bottom bar volume control (0-10) bound directly to Android hardware stream volume, and 6-band hardware Equalizer (60Hz, 230Hz, 910Hz, 3.6kHz, 14kHz, 20kHz).
MODULE B: Real-Time Mathematical Audio DSP Synthesizer
•
16-bit PCM Real-Time Audio Synthesis at 44.1 kHz (Mono/Stereo).
•
Frequency Generation: Mathematical calculation over 32 independent frequencies with exponential frequency sliding (Pitch Drop).
•
Amplitude Envelope Modeling: Sustained 40ms attack punch at 0 dBFS and customizable exponential decay.
•
Tonal Balance & Gaussian Notch Filter: Lows/highs exponential tonal balance (deep attenuation up to -35dB). High-Q Gaussian Notch Filter with -34dB attenuation at target frequency.
•
Noise Gate Fade-Out Filter: 100% elimination of tail quantization noise and background hiss during pause intervals.
•
Hardware Routing & Equalizer Session Binding: Playback via AudioTrack.Builder() with AudioAttributes.USAGE_MEDIA and direct session binding to Android Hardware Equalizer (+12 dB sub-bass boost on 60Hz and 230Hz bands).
MODULE C: Hardware Security, Bluetooth A2DP Licensing & MAC Verification
•
3-Step Startup License Verification:
i.
Step 1 (Local Disk Check): Verifies if audio files and JSON cache exist on local storage.
ii.
Step 2 (Local MAC Memory Check): Verifies if the connected Bluetooth A2DP audio device MAC address exists in encrypted local memory (KEY_ALLOWED_MACS). If matched, opens main screen instantly (0.001s, offline or online).
iii.
Step 3 (Firebase Verification): If connected amplifier is a new MAC and internet is available, fetches authorized MAC list from Firebase, saves authorized MAC locally, and allows access. If offline and MAC is unrecognized, blocks app startup with error screen.
•
2-Second Runtime Connection Monitor: Periodically monitors Bluetooth A2DP amplifier connection every 2 seconds. If disconnected at runtime, stops all audio playback immediately and transitions to paired Bluetooth device list error screen.
MODULE D: Bluetooth Remote Control & BLE Pedal Interception
•
Strict 12-Character Hex MAC Validation: Strictly validates remote control MAC addresses matching 12-char hexadecimal format (e.g. 657c318b3e19).
•
OS-Level Key Event Interception (dispatchKeyEvent): Intercepts media key events from Bluetooth remotes, BLE pedals, or D-Pad gamepads. Blocks unauthorized remotes and overrides system key events (e.g. prevents screen sleep on POWER key or exiting app on HOME/BACK keys).
•
Remote Navigation Mode Badge: Toggle between Songs Mode and Sounds Mode on short/long keypress, with dynamic translation into all 14 supported languages.
MODULE E: Actuator Auto-Control Module (GPS Speed Monitoring & ESP32 Wi-Fi SoftAP)
•
100% Offline Screen-Off Operation: Runs as an Android Foreground Service (foregroundServiceType="location") with a persistent notification. Employs Partial WakeLock to keep CPU active while screen is off.
•
Fused GPS Provider & Anti-GPS Jumping Filters: Reads GPS speed every 1000ms using Google FusedLocationProviderClient (PRIORITY_HIGH_ACCURACY). Accuracy Gate: Ignores readings where location.accuracy > 10.0m. Sanity Check: Ignores physically impossible boat acceleration jumps (> 15 km/h per second). Configurable Speed Threshold: Speed threshold adjustable between 5 km/h and 15 km/h (preset default 10 km/h, saved in preferences, defaults to Auto-Lift ON at every app startup).
•
Forced Wi-Fi SoftAP Routing Without Internet (192.168.4.1): Binds process network traffic to ESP32 Wi-Fi SoftAP via ConnectivityManager.bindProcessToNetwork(), ignoring cellular data.
•
HTTP Retry Loop: Sends GET http://192.168.4.1/ridica (or /coboara) with a 1-second retry loop until ESP32 returns HTTP 200 OK. Wi-Fi Protection: Immediately halts HTTP requests if Wi-Fi disconnects from ESP32 to prevent background CPU waste.
MODULE F: C++ Native Security (JNI/NDK) & Encrypted Media Decryption
•
Native C++ Library (native-lib.cpp): Obfuscates and generates AES-256 cryptographic keys inside compiled C++ native code.
•
In-Memory Encrypted Media Decryption (SecureMediaSource): Audio MP3 files stored encrypted on disk (AES-256 CTR) and decrypted directly into memory streams during playback.
•
Encrypted Preferences: Sensitive configuration stored using EncryptedSharedPreferences with AES-256 GCM.
3.
REQUIRED TECHNOLOGIES & LIBRARIES
•
Language: 100% Native Kotlin & C++ JNI/NDK.
•
UI Framework: Jetpack Compose (Material3, Custom Canvas Drawing).
•
Audio Framework: Android AudioTrack, MediaPlayer, AudioFX Equalizer, AudioAttributes.
•
Location & Services: Google Play Services Location (FusedLocationProviderClient), Android Foreground Services (Android 14 Compatible), PowerManager WakeLocks.
•
Networking: Android ConnectivityManager Network Binding, Java HttpURLConnection, Firebase Realtime Database, Firebase Storage, Firebase Anonymous Auth.
•
Build System: Gradle, Android SDK 34 (Android 14 Target).
Project: Native Android Application for Real-Time DSP Audio Synthesis, Hardware Bluetooth Licensing, GPS/Wi-Fi Actuator Auto-Control, and Cloud Services
1.
PROJECT OVERVIEW & GENERAL ARCHITECTURE A high-performance, native Android application built using Kotlin and Jetpack Compose, engineered for specialized fishing audio control with a multi-layered technical ecosystem:
•
Real-time DSP Mathematical Audio Synthesizer (16-bit PCM at 44.1 kHz) + Encrypted Studio MP3 Audio Player.
•
Hardware Security & Bluetooth A2DP Amplifier Licensing (3-step Offline/Online verification via Firebase).
•
GPS & Wi-Fi Actuator Auto-Control Module (1-second Fused GPS speed monitoring, anti-GPS jumping filters, offline Wi-Fi SoftAP process binding to 192.168.4.1 ESP32 module, screen-off foreground service).
•
Remote Control & BLE Pedal Key Event Interception (Strict 12-char hex MAC address authorization, unauthorized remote blocking, system key override).
•
C++ Native Security (JNI/NDK): AES-256 CTR in-memory media decryption without writing unencrypted files to disk.
•
Operational Hours Tracking & Cloud Warranty Service (Firebase Realtime Database & Storage with offline pending_sync.json buffer).
2.
DETAILED MODULE SPECIFICATIONS
MODULE A: User Interface (UI/UX) & Dynamic 14-Language Localization
•
Design & Theme: Premium Dark UI (Pure Black background, Neon Green #00FF00, Neon Red #FF0000, Gold #FFD700, Info Blue #0099FF).
•
Dynamic 14-Language Localization: Instant runtime switching without app restart for 14 languages: English (EN), Romanian (RO), German (DE), French (FR), Italian (IT), Spanish (ES), Hungarian (HU), Bulgarian (BG), Turkish (TR), Polish (PL), Serbian (SR), Croatian (HR), Czech (CZ), Slovak (SK). Automated fallback hierarchy: Firebase Cloud Database -> Local JSON Cache -> In-App Hardcoded Fallbacks.
•
3 Main Navigation Tabs (Bottom Navigation Bar):
i.
SONGS (Player): Main MP3/WAV loop playback, secondary sound list with programmable repeat intervals (1-60s or random pauses), remote control mode badge, fast song selector.
ii.
MIXER (Synthesizer): Real-time mathematical generator with 8 tactile parameters, dynamic 32-frequency Canvas oscilloscope visualizer, profile name text field, JSON profile saving button.
iii.
ACTUATOR: Digital speedometer, GPS accuracy indicator, ESP32 Wi-Fi SoftAP connection status, Auto-Lift toggle switch, manual Lift Up and Lower Down command buttons.
iv.
EQUALIZER & VOLUME: Unified bottom bar volume control (0-10) bound directly to Android hardware stream volume, and 6-band hardware Equalizer (60Hz, 230Hz, 910Hz, 3.6kHz, 14kHz, 20kHz).
MODULE B: Real-Time Mathematical Audio DSP Synthesizer
•
16-bit PCM Real-Time Audio Synthesis at 44.1 kHz (Mono/Stereo).
•
Frequency Generation: Mathematical calculation over 32 independent frequencies with exponential frequency sliding (Pitch Drop).
•
Amplitude Envelope Modeling: Sustained 40ms attack punch at 0 dBFS and customizable exponential decay.
•
Tonal Balance & Gaussian Notch Filter: Lows/highs exponential tonal balance (deep attenuation up to -35dB). High-Q Gaussian Notch Filter with -34dB attenuation at target frequency.
•
Noise Gate Fade-Out Filter: 100% elimination of tail quantization noise and background hiss during pause intervals.
•
Hardware Routing & Equalizer Session Binding: Playback via AudioTrack.Builder() with AudioAttributes.USAGE_MEDIA and direct session binding to Android Hardware Equalizer (+12 dB sub-bass boost on 60Hz and 230Hz bands).
MODULE C: Hardware Security, Bluetooth A2DP Licensing & MAC Verification
•
3-Step Startup License Verification:
i.
Step 1 (Local Disk Check): Verifies if audio files and JSON cache exist on local storage.
ii.
Step 2 (Local MAC Memory Check): Verifies if the connected Bluetooth A2DP audio device MAC address exists in encrypted local memory (KEY_ALLOWED_MACS). If matched, opens main screen instantly (0.001s, offline or online).
iii.
Step 3 (Firebase Verification): If connected amplifier is a new MAC and internet is available, fetches authorized MAC list from Firebase, saves authorized MAC locally, and allows access. If offline and MAC is unrecognized, blocks app startup with error screen.
•
2-Second Runtime Connection Monitor: Periodically monitors Bluetooth A2DP amplifier connection every 2 seconds. If disconnected at runtime, stops all audio playback immediately and transitions to paired Bluetooth device list error screen.
MODULE D: Bluetooth Remote Control & BLE Pedal Interception
•
Strict 12-Character Hex MAC Validation: Strictly validates remote control MAC addresses matching 12-char hexadecimal format (e.g. 657c318b3e19).
•
OS-Level Key Event Interception (dispatchKeyEvent): Intercepts media key events from Bluetooth remotes, BLE pedals, or D-Pad gamepads. Blocks unauthorized remotes and overrides system key events (e.g. prevents screen sleep on POWER key or exiting app on HOME/BACK keys).
•
Remote Navigation Mode Badge: Toggle between Songs Mode and Sounds Mode on short/long keypress, with dynamic translation into all 14 supported languages.
MODULE E: Actuator Auto-Control Module (GPS Speed Monitoring & ESP32 Wi-Fi SoftAP)
•
100% Offline Screen-Off Operation: Runs as an Android Foreground Service (foregroundServiceType="location") with a persistent notification. Employs Partial WakeLock to keep CPU active while screen is off.
•
Fused GPS Provider & Anti-GPS Jumping Filters: Reads GPS speed every 1000ms using Google FusedLocationProviderClient (PRIORITY_HIGH_ACCURACY). Accuracy Gate: Ignores readings where location.accuracy > 10.0m. Sanity Check: Ignores physically impossible boat acceleration jumps (> 15 km/h per second). Configurable Speed Threshold: Speed threshold adjustable between 5 km/h and 15 km/h (preset default 10 km/h, saved in preferences, defaults to Auto-Lift ON at every app startup).
•
Forced Wi-Fi SoftAP Routing Without Internet (192.168.4.1): Binds process network traffic to ESP32 Wi-Fi SoftAP via ConnectivityManager.bindProcessToNetwork(), ignoring cellular data.
•
HTTP Retry Loop: Sends GET http://192.168.4.1/ridica (or /coboara) with a 1-second retry loop until ESP32 returns HTTP 200 OK. Wi-Fi Protection: Immediately halts HTTP requests if Wi-Fi disconnects from ESP32 to prevent background CPU waste.
MODULE F: C++ Native Security (JNI/NDK) & Encrypted Media Decryption
•
Native C++ Library (native-lib.cpp): Obfuscates and generates AES-256 cryptographic keys inside compiled C++ native code.
•
In-Memory Encrypted Media Decryption (SecureMediaSource): Audio MP3 files stored encrypted on disk (AES-256 CTR) and decrypted directly into memory streams during playback.
•
Encrypted Preferences: Sensitive configuration stored using EncryptedSharedPreferences with AES-256 GCM.
3.
REQUIRED TECHNOLOGIES & LIBRARIES
•
Language: 100% Native Kotlin & C++ JNI/NDK.
•
UI Framework: Jetpack Compose (Material3, Custom Canvas Drawing).
•
Audio Framework: Android AudioTrack, MediaPlayer, AudioFX Equalizer, AudioAttributes.
•
Location & Services: Google Play Services Location (FusedLocationProviderClient), Android Foreground Services (Android 14 Compatible), PowerManager WakeLocks.
•
Networking: Android ConnectivityManager Network Binding, Java HttpURLConnection, Firebase Realtime Database, Firebase Storage, Firebase Anonymous Auth.
•
Build System: Gradle, Android SDK 34 (Android 14 Target).
Apply on Freelancer →
Project sourced from Freelancer.com. Applications happen directly on the original platform — we never collect your data.