Update documentation, standardize on WAV audio format, and improve attribution (#19)

* Remove MP3 sound files and update documentation to reflect WAV-only support

* Fix stale strings
This commit is contained in:
Jatin K Malik
2025-04-19 00:02:52 -05:00
committed by GitHub
parent a33c0d1b4c
commit 076ea78b4b
8 changed files with 34 additions and 19 deletions
+1 -1
View File
@@ -1,7 +1,7 @@
GNU GENERAL PUBLIC LICENSE
Version 3, 29 June 2007
Copyright (C) 2025 Vocalinux Team
Copyright (C) 2025 Vocalinux Team | @jatinkrmalik
Everyone is permitted to copy and distribute verbatim copies
of this license document, but changing it is not allowed.
+29 -10
View File
@@ -41,9 +41,9 @@ vocalinux/
│ └── USER_GUIDE.md # User guide with command reference
├── resources/ # Resource files
│ └── sounds/ # Audio notification sounds
│ ├── start_recording.mp3 # Sound when recording starts
│ ├── stop_recording.mp3 # Sound when recording stops
│ └── error.mp3 # Sound when an error occurs
│ ├── start_recording.wav # Sound when recording starts
│ ├── stop_recording.wav # Sound when recording stops
│ └── error.wav # Sound when an error occurs
├── src/ # Source code
│ ├── __init__.py # Package initialization
│ ├── main.py # Main entry point
@@ -61,7 +61,17 @@ vocalinux/
│ ├── keyboard_shortcuts.py # Keyboard shortcut handling
│ └── tray_indicator.py # System tray UI
├── tests/ # Test suite
│ └── test_basic.py # Basic unit tests
│ ├── conftest.py # Pytest configuration
│ ├── test_audio_feedback.py
│ ├── test_command_processor.py
│ ├── test_config_manager.py
│ ├── test_keyboard_shortcuts.py
│ ├── test_main.py
│ ├── test_recognition_manager.py
│ ├── test_speech_recognition.py
│ ├── test_text_injector.py
│ └── test_tray_indicator.py
├── activate-vocalinux.sh # Script to activate the environment
├── install.sh # Installation script
├── LICENSE # GPLv3 license
├── README.md # This file
@@ -74,7 +84,7 @@ vocalinux/
### Prerequisites
- Ubuntu 22.04 or newer (may work on other Linux distributions)
- Python 3.6 or newer
- Python 3.8 or newer
- X11 or Wayland desktop environment
### Quick Install
@@ -114,6 +124,9 @@ vocalinux --engine whisper
# With a specific model size
vocalinux --model medium
# Force Wayland compatibility mode
vocalinux --wayland
```
### Using Voice Dictation
@@ -171,11 +184,11 @@ Configuration is stored in `~/.config/vocalinux/config.json` and includes:
You can customize the audio feedback by replacing the sound files in the `resources/sounds/` directory:
- `start_recording.mp3` - Played when recording starts
- `stop_recording.mp3` - Played when recording stops
- `error.mp3` - Played when an error occurs
- `start_recording.wav` - Played when recording starts
- `stop_recording.wav` - Played when recording stops
- `error.wav` - Played when an error occurs
Both MP3 and WAV formats are supported, with MP3 being the primary format.
WAV format is used for all audio notifications.
## Development
@@ -186,6 +199,10 @@ Both MP3 and WAV formats are supported, with MP3 being the primary format.
git clone https://github.com/jatinkrmalik/vocalinux.git
cd vocalinux
# Create a virtual environment (recommended)
python3 -m venv venv
source venv/bin/activate
# Install development dependencies
pip install -e ".[dev]"
@@ -235,7 +252,7 @@ The following checks are performed by pre-commit:
4. **Audio Feedback** (`src/ui/audio_feedback.py`)
- Provides audio cues for application states
- Supports both MP3 and WAV formats
- Uses WAV format for sound files
- Uses system audio players (PulseAudio/ALSA)
5. **Tray Indicator** (`src/ui/tray_indicator.py`)
@@ -275,6 +292,8 @@ Future development plans include:
Contributions are welcome! Please feel free to submit a Pull Request.
For contribution guidelines, please see [CONTRIBUTING.md](CONTRIBUTING.md).
## License
This project is licensed under the GNU General Public License v3.0 - see the [LICENSE](LICENSE) file for details.
Binary file not shown.
Binary file not shown.
Binary file not shown.
+1 -1
View File
@@ -9,7 +9,7 @@ setup(
name="vocalinux",
version="0.1.0",
description="A seamless voice dictation system for Linux",
author="Vocalinux Team",
author="@jatinkrmaik",
author_email="jatinkrmalik@gmail.com",
packages=find_packages(where="src"),
package_dir={"": "src"},
+1 -6
View File
@@ -18,7 +18,7 @@ PACKAGE_DIR = os.path.dirname(MODULE_DIR)
RESOURCES_DIR = os.path.join(os.path.dirname(PACKAGE_DIR), "resources")
SOUNDS_DIR = os.path.join(RESOURCES_DIR, "sounds")
# Sound file paths - prioritize WAV files
# Sound file paths
START_SOUND = os.path.join(SOUNDS_DIR, "start_recording.wav")
STOP_SOUND = os.path.join(SOUNDS_DIR, "stop_recording.wav")
ERROR_SOUND = os.path.join(SOUNDS_DIR, "error.wav")
@@ -70,11 +70,6 @@ def _play_sound_file(sound_path):
if not player:
return False
file_ext = os.path.splitext(sound_path)[1].lower().lstrip(".")
if file_ext not in formats:
logger.warning(f"Format {file_ext} not supported by {player}")
return False
try:
if player == "paplay":
subprocess.Popen(
+2 -1
View File
@@ -216,7 +216,8 @@ class TrayIndicator:
about_dialog = Gtk.AboutDialog()
about_dialog.set_program_name("Vocalinux")
about_dialog.set_version("0.1.0")
about_dialog.set_copyright("© 2025 Vocalinux Team")
about_dialog.set_copyright("© 2025 | @jatinkrmalik")
about_dialog.set_authors(["Jatin K Malik"])
about_dialog.set_comments("A seamless voice dictation system for Ubuntu")
about_dialog.set_website("https://github.com/jatinkrmalik/vocalinux")
about_dialog.set_website_label("GitHub Repository")