The WiZ Volume Audio Visualizer Program is a dynamic application that synchronizes your WiZ smart lights with audio input to create stunning, real-time lighting effects. Featuring a user-friendly GUI and extensive customization options, this program empowers users to control their lights effortlessly.
This README provides a detailed guide to the program's features, setup, and configuration.
- Captures audio from the system and translates volume and frequency data into vivid lighting patterns.
- Includes dynamic brightness and smooth color transitions.
- Audio Settings:
- Select audio devices from a dropdown menu.
- Enable manual input for device indices.
- Adjust advanced audio processing settings such as sample rate and buffer size.
- Light Configuration:
- Add, remove, or auto-detect WiZ light IP addresses.
- Set UDP port for communication.
- Visualization Settings:
- Adjust thresholds for beat and drum break detection.
- Configure intensity and smoothing settings for effects.
- Brightness Settings:
- Set user-defined and minimum brightness levels.
- Enable or disable dynamic brightness adjustment.
- Feature Toggles:
- Toggle options like color reversal, beat detection, and tempo-based intensity.
- Color Profiles:
- Define vivid, beat, and drum break colors using a color picker.
- Preview RGB values and adjust dynamically.
- Automatically saves configurations to
volume_config.json
, eliminating the need for manual file edits.
- Drum Break Detection: Recognizes sudden audio spikes to trigger visual bursts.
- Beat Detection: Synchronizes rhythmic patterns with detected beats.
- Sends UDP commands to one or multiple WiZ lights seamlessly.
- Optional debug logging to identify and resolve issues.
- Run the installer provided to set up the program.
- Launch the application using the installed shortcut or executable.
- Open the application.
- Navigate to the audio settings in the GUI.
- Select your desired audio input device from the dropdown menu or enable manual input to specify the device index.
- Click Save to apply the changes.
- Enter the IP address of your WiZ light(s) in the provided field.
- For multiple lights, enter each IP address individually or use auto-detect.
- Use the auto-detect feature to discover lights on your network and add them to the list.
- Remove any lights you do not wish to be used from the list.
- Click Save to confirm.
- Adjust brightness, thresholds, and other settings directly in the GUI.
- Enable or disable features like:
- Dynamic brightness
- Interpolation
- Beat and drum break detection
- Configure vivid, beat, and drum break color profiles using the color picker.
- Click Apply to save and activate your settings.
- Enable Stereo Mix:
- Right-click the sound icon in your system tray and select Sounds.
- Navigate to the Recording tab.
- Locate Stereo Mix, right-click, and select Enable.
- Set Stereo Mix as the Default Device:
- Right-click Stereo Mix and choose Set as Default Device.
- Select Stereo Mix in the GUI as your audio device. (Select the Stereo Mix with the correct device index and configurations.)
If Stereo Mix is unavailable, follow these steps:
- Download VB Audio Cable from VB Audio Cable.
- Run the installer and follow the prompts.
- Download Voicemeeter from Voicemeeter.
- Run the installer and restart your computer.
- Set VB Cable as Default Output:
- Go to Sound Settings and set VB-Cable Input as the default output device.
- Route Audio Through Voicemeeter:
- Open Voicemeeter and configure:
- Hardware Input 1: Your microphone or preferred input device.
- Virtual Input: System audio.
- Hardware Out (A1): Your speakers or headphones.
- Open Voicemeeter and configure:
- Select Voicemeeter as Input:
- In the GUI, choose Voicemeeter Output as the audio device.
- Play audio and verify that the program detects and visualizes the input. If you notice the program processing audio when no audio is present please adjust your audio volume in Voicemeeter or Stereo Mix audio levels in 'properties'.
Enable debug logging in the GUI to save detailed logs to wiz_vis_debug_log.txt
. These logs can help diagnose issues with audio input, light communication, or configuration.
- PortAudio: Audio processing.
- Boost.Asio: UDP communication.
- nlohmann/json: JSON parsing.
- PyQt5: GUI framework.
- pywizlight: WiZ light control.
This program is provided "as-is" without warranty. Please ensure compliance with local laws when using this program.
If you have questions or need assistance, raise an issue on the GitHub repository.