MCPCapital / HarmonizeProject

Harmonize Project lets you sync HDMI video with Philips Hue lights using a Raspberry Pi!
238 stars 35 forks source link
entertainment-api hue hue-api hue-bridge hue-entertainment philips philips-hue python video-sync

Harmonize Project for Philips Hue

Pull Requests Welcome Open Source Love Python 3.12

Harmonize Project connects Philips Hue lights and lightstrips to your TV screen content, creating an amazing ambient lighting effect! This application utilizes a low-latency video and color analysis algorithm developed with Python and OpenCV.

Check out our Reddit thread here and watch the demo below! Electromaker explains how our application works at a high level in his podcast here!

Harmonize Project Demo Video

Harmonize Project (formerly known as Harmonize Hue) has no affiliation with Signify or Philips Hue. Hue and Philips Hue are trademarks of Signify.

New Features

Thank you to all those who have contributed to this project. Please keep your pull requests coming!

Features

Requirements

Lights:

Minimum Hardware:

Example Hardware configuration (tested successfully unless otherwise noted below):

Setup

Software Setup:

Ubuntu Desktop 24.04 LTS 64-bit with Python v3.12 (most recent version tested)

Legacy Software Setup (currently unsupported and not maintained):

Download the latest scripts and install all dependencies via the following commands. Be sure to watch for errors! You will need about 1GB of free space. The script can run for up to an hour.

git clone https://github.com/MCPCapital/HarmonizeProject.git
cd HarmonizeProject
sudo ./setup.sh

Hardware Setup Example A:

Hardware Setup Example B (for A/V receivers with 2 or more HDMI outputs):

Entertainment Area Configuration:

First-Time Run Instructions:

Usage

To start the program:

Command line arguments:

Configurable values within the script: (Advanced users only)

Troubleshooting

Contributions & License

Pull requests are encouraged and accepted! Whether you have some code changes or enhancements to the readme, feel free to open a pull request. Harmonize Project is licensed under The Creative Commons Attribution-NonCommercial 4.0 International Public License.

Development credits to Matthew C. Pilsbury (MCP Capital LLC), Ares N. Vlahos, and Brad Dworak.

licensebuttons by-nc