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:
@@ -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.
|
||||
|
||||
|
||||
@@ -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.
@@ -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"},
|
||||
|
||||
@@ -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(
|
||||
|
||||
@@ -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")
|
||||
|
||||
Reference in New Issue
Block a user