VoiceDistanceTracker is an Android application that calculates the distance of speaking using sound propagation principles. This project is primarily written in Java with some shell scripts.
The VoiceDistanceTracker is an Android application that calculates the speaking distance using sound propagation. The application primarily consists of the following components:
- UI Layer: Handles the user interface and user interactions.
- Business Logic Layer: Contains the logic for calculating the distance based on sound propagation.
- Data Layer: Manages the data input and output, including sound data acquisition.
-
UI Layer
- Activities: MainActivity, SettingsActivity
- Fragments: DistanceFragment, SettingsFragment
- Views: Custom views for displaying distance and settings
-
Business Logic Layer
- DistanceCalculator: Core logic for calculating the distance based on sound propagation.
- SoundProcessor: Processes the sound input to extract relevant data for distance calculation.
-
Data Layer
- SoundRecorder: Manages the recording of sound input.
- PreferencesManager: Handles saving and retrieving user preferences.
-
Sound Recording:
- The
SoundRecordercomponent captures sound input from the microphone. - The recorded sound data is passed to the
SoundProcessor.
- The
-
Sound Processing:
- The
SoundProcessoranalyzes the sound data to extract relevant metrics. - The processed data is sent to the
DistanceCalculator.
- The
-
Distance Calculation:
- The
DistanceCalculatoruses the sound propagation formula to calculate the distance. - The calculated distance is then updated in the UI.
- The
-
User Interface Update:
- The UI components (Activities, Fragments, Views) display the calculated distance to the user.
- User preferences are managed by the
PreferencesManagerand can be adjusted in the Settings section.
+-------------------+ +-------------------+ +-------------------+ +-------------------+
| User Interface | | Sound Recorder | | Sound Processor | | DistanceCalculator|
+-------------------+ +-------------------+ +-------------------+ +-------------------+
| | | |
| 1. Start Recording | | |
|----------------------------->| | |
| | | |
| | 2. Capture Sound Data | |
| |----------------------------->| |
| | | |
| | | 3. Process Sound Data |
| | |----------------------------->|
| | | |
| | | | 4. Calculate Distance
| | |<-----------------------------|
| | | |
| 5. Update UI with Distance | | |
|<-----------------------------| | |
| | | |
- Machine Learning Integration: Implement machine learning algorithms to improve the accuracy of distance calculation.
- Cloud Storage: Add cloud storage options for saving user data and preferences.
- Multi-language Support: Support additional languages for a wider user base.
You can add this architecture design to your README.md or create a new file named ARCHITECTURE.md in the root of your repository and link to it from the README.md.
Would you like to proceed with adding this to your README.md file or create a new ARCHITECTURE.md file?
- Calculate speaking distance using sound propagation
- User-friendly interface
- Real-time distance calculation
- Android Studio
- Java Development Kit (JDK) 8 or higher
- Android device or emulator
-
Clone the repository:
git clone https://github.com/kodesam/VoiceDistanceTracker.git