A beautiful, modern binaural beat generator built with Python and Qt/QML. Create custom binaural beats for meditation, focus, sleep, and more with an intuitive glass-morphism interface.
- 🎵 High-Quality Audio Generation: Generate professional binaural beats with customizable frequencies
- 🎨 Beautiful UI: Modern glass-morphism design with smooth animations
- 💾 Custom Presets: Save and manage your own preset configurations
- ⚡ Real-time Preview: Instantly preview your settings before generating
- 🔧 Full Control: Adjust duration, frequencies, fade in/out times
- 📱 Cross-Platform: Works on macOS, Linux, and Windows
- Delta (2 Hz): Deep sleep and meditation
- Theta (6 Hz): Deep relaxation and meditation
- Alpha (10 Hz): Relaxed focus and creativity
- Beta (18 Hz): Alertness and concentration
- Gamma (40 Hz): High-level cognitive processing
- Astral (6.3 Hz): Astral projection and deep meditation
- Python 3.8 or higher
- pip package manager
-
Clone or download the application
git clone <repository-url> cd v6_qml-main
-
Create a virtual environment (recommended)
python -m venv venv source venv/bin/activate # On Windows: venv\Scripts\activate
-
Install dependencies
pip install -r requirements.txt
-
Run the application
python python/main.py
Or use the provided script:
./run_app.sh
- Select a preset from the built-in options or create your own
- Adjust parameters:
- Duration: Length of the audio (1-3600 seconds)
- Beat Frequency: Difference between left/right ear frequencies (0.5-50 Hz)
- Carrier Frequency: Base frequency for both ears (100-1000 Hz)
- Padding Frequency: Background frequency layer
- Fade In/Out: Smooth transition times
- Preview your settings with the play button
- Generate the full audio file when satisfied
- Configure your desired settings
- Click "Save as Custom Preset"
- Enter a name (max 48 characters, letters/numbers/spaces/hyphens)
- Your preset will be saved and available in future sessions
- Audio files are saved in the
generated_audio/directory - Files are named with your chosen filename and timestamp
- Custom presets are stored in
custom_presets.json
- Sample Rate: 44100 Hz
- Bit Depth: 32-bit float
- Format: WAV
- Channels: Stereo (binaural)
- Backend: Python with PyQt6
- Frontend: QML with Qt Quick Controls
- Audio Processing: NumPy, SciPy, SoundDevice
- Storage: JSON for custom presets
python run_tests.pyv6_qml-main/
├── main.qml # Main UI file
├── python/
│ ├── main.py # Application entry point and backend
│ └── generator.py # Audio generation logic
├── components/ # QML UI components
├── assets/ # Application assets
├── generated_audio/ # Output directory (created automatically)
└── requirements.txt # Python dependencies
-
"Qt plugin not found" on macOS
- The application automatically sets Qt plugin paths
- Ensure PyQt6 is properly installed
-
Audio device errors
- Check that your audio device is working
- Try restarting the application
-
Preset not saving
- Ensure write permissions in the application directory
- Check that
custom_presets.jsonis not read-only
If you see console warnings about shaders or style customization, these are cosmetic and don't affect functionality. The application uses the Basic Qt style to ensure cross-platform compatibility.
[License to be added]
v0.1.0 - Initial release with core functionality
[Contributing guidelines to be added]
For issues and questions, please check the troubleshooting section or create an issue in the repository.