A sophisticated Python application that revolutionizes your video call experience with real-time background replacement, voice control, AR effects, and audio visualization. Perfect for virtual meetings, content creation, and streaming.
- Real-time Background Replacement: Seamless background switching during live video
- Multiple Background Types:
- Static image backgrounds
- Video backgrounds
- Blur effect
- Portrait mode with depth effect
- Voice Control: Change backgrounds using voice commands
- "Next" - Switch to next background
- "Previous" - Switch to previous background
- Real-time Head Tracking: AR props follow your head movements
- Customizable Props: Support for custom AR overlay elements
- Size Controls: Adjust AR prop size in real-time
- Position Tracking: Natural movement and positioning
- Voice Command Recognition: Hands-free control
- Real-time Audio Visualization: See your microphone input levels
- Integrated Audio Processing: Clean audio recording capabilities
- High-Quality Recording: Combined audio/video recording
- Screenshot Function: Capture moments instantly
- Multiple Output Formats: Support for various video codecs
- Customizable Quality: Adjustable recording parameters
- Core Technologies:
- Python 3.8+
- OpenCV
- MediaPipe
- PyQt5
- Speech Recognition
- PyAudio
- NumPy
# Required software
- Python 3.8 or higher
- pip package manager
- Webcam
- Microphone
- Clone the repository:
git clone https://github.com/officialjwise/VoiceControlled-BackgroundChanger.git
cd VoiceControlled-BackgroundChanger
- Install dependencies:
pip install -r requirements.txt
- Set up project structure:
project_folder/
├── backgrounds/ # Background images (.jpg/.png)
├── video_backgrounds/ # Video files (.mp4/.avi)
├── ar_props/ # AR props (.png with transparency)
├── screenshots/ # Generated screenshots
├── recordings/ # Saved recordings
└── main.py # Application entry point
- Add background images to
backgrounds/
- Add video files to
video_backgrounds/
- Add AR props to
ar_props/
python main.py
- Background Selection: Use dropdown menu or voice commands
- AR Effects: Toggle button in control panel
- Recording: Start/Stop button for video capture
- Screenshots: Capture button for still images
- Say "Next" to switch to next background
- Say "Previous" to return to previous background
Esc
- Exit applicationSpace
- Toggle AR effectsS
- Take screenshotR
- Start/Stop recording
src/
├── main.py # Entry point
├── background_handler.py # Background processing
├── ar_effects.py # AR implementation
├── audio_handler.py # Audio processing
└── ui/ # UI components
├── main_window.py
├── controls.py
└── previews.py
-
Camera Access
- Ensure no other applications are using the camera
- Check camera permissions
- Try restarting the application
-
Voice Commands
- Verify microphone permissions
- Check internet connection
- Speak clearly and maintain proper distance
-
Video Playback
- Ensure video codec compatibility (H.264 recommended)
- Check video file integrity
- Verify supported format (.mp4/.avi)
We welcome contributions! See our Contributing Guidelines for details.
- Fork the repository
- Create your feature branch (
git checkout -b feature/AmazingFeature
) - Commit changes (
git commit -m 'Add AmazingFeature'
) - Push to branch (
git push origin feature/AmazingFeature
) - Open a Pull Request
This project is open source and available under the MIT License. See LICENSE file for details.
- OpenCV Team: For computer vision capabilities
- MediaPipe: For face detection and segmentation
- PyQt: For the GUI framework
- Python Community: For various helpful resources
- All Contributors: Who help improve this project
- Developer: Official J-Wise
- Twitter/X: @daniel4_kodua
- Project Repository: VoiceControlled-BackgroundChanger
- Additional voice commands
- More AR effects
- Custom background filters
- Stream integration
- Multi-language support
⌨️ with ❤️ by Official J-Wise 🚀
If you found this project helpful, please consider giving it a ⭐️!