djhexx Posted March 29, 2019 Share Posted March 29, 2019 (edited) I just wanted to showcase something I'm working on using @DarthAffe's RGB.net library. It's basically a program to emulate the functionality of the Phillips Hue Sync on Corsair devices. For those who don't know, this will pick the dominant color from the screen and set the led lights to the color it finds. It will work with any app, video, or game with low latency and relatively low CPU. So far its coming along very well. Although it's still in very early stages, I couldn't help but to show you guys what I have accomplished so far. There is still tons of work to be done. I have a lot of plans to do a lot of pretty cool things with this. Next features will be a richer color palette, color fading transitions, and the ability to split the screen into multiple regions and assign the appropriate LED lights to capture the color in the corresponding area of the screen. It's just the beginning! Enjoy! UPDATE (4/1): added gradient fading between color transitions. Also did A LOT of code cleanup / refactoring. No this is not an April Fool's joke :) UPDATE: Added multi-part lighting zones. See Part 2 demo below. Demo (PART 2): [ame] [/ame] Demo (PART 1): [ame] [/ame] Hope you guys enjoy. Edited September 7, 2019 by djhexx Link to comment Share on other sites More sharing options...
Zotty Posted March 29, 2019 Share Posted March 29, 2019 ohh... nice.... i will have a play buddy :).. been using hue Sync my self, which only works with my Hue equipment, i have 3 hue play bars behind my screen.. [ame] [/ame] Link to comment Share on other sites More sharing options...
TackDaniels Posted March 29, 2019 Share Posted March 29, 2019 I just wanted to showcase something I'm working on using @DarthAffe's RGB.net library. It's basically a program to emulate the functionality of the Phillips Hue Sync on Corsair devices. For those who don't know, this will pick the dominant color from the screen and set the led lights to the color it finds. It will work with any app, video, or game with low latency and relatively low CPU. So far its coming along very well. Although it's still in very early stages, I couldn't help but to show you guys what I have accomplished so far. There is still tons of work to be done. I have a lot of plans to do a lot of pretty cool things with this. Next features will be a richer color palette, color fading transitions, and the ability to split the screen into multiple regions and assign the appropriate LED lights to capture the color in the corresponding area of the screen. It's just the beginning! Enjoy! Demo: Code: https://github.com/MetalHexx/iHue Hope you guys enjoy. This is awesome! I'm using Hue Sync, too. IMO iCue should have that functionality by itself. Keep on! Link to comment Share on other sites More sharing options...
djhexx Posted March 29, 2019 Author Share Posted March 29, 2019 ohh... nice.... i will have a play buddy :).. been using hue Sync my self, which only works with my Hue equipment, i have 3 hue play bars behind my screen.. I've seen your setup man and it's one of the videos that inspired me to work on this code. Really nice work. Maybe you'll be able to dump the Hue soon. I just realized that the Hue sync app for iPhone is called iHue, so I guess I need to change the name of my project haha. Link to comment Share on other sites More sharing options...
TackDaniels Posted March 29, 2019 Share Posted March 29, 2019 Actually there is no Hue Sync App for iPhone. The Hue Sync App is for PC and Mac only. The Hue App for iPhone is just called "Hue". Link to comment Share on other sites More sharing options...
Zotty Posted March 29, 2019 Share Posted March 29, 2019 Will be watching and waiting buddy :).. exciting times Link to comment Share on other sites More sharing options...
djhexx Posted March 30, 2019 Author Share Posted March 30, 2019 Actually there is no Hue Sync App for iPhone. The Hue Sync App is for PC and Mac only. The Hue App for iPhone is just called "Hue". Good to know. However iHue does exist even if its not the official app. Maybe it doesn't matter. We'll see. =P https://www.google.com/search?q=ihue&oq=ihue&aqs=chrome..69i57j69i61l2j69i60j35i39j0.1775j0j7&sourceid=chrome&ie=UTF-8 Link to comment Share on other sites More sharing options...
djhexx Posted March 30, 2019 Author Share Posted March 30, 2019 Got screen splitting working. You can split the screen in as many equal size parts as desired in a 2 dimensional matrix. Here I am arbitrarily splitting the LEDs across the surface into 2 zones and it looks like that resulted in my strips being blue and the peripherals red. Nice thing is, the CPU utilization wasn't affected even if I go as high as 10x10 (currently hitting around 10%) and latency seems unaffected. Shouln't take too long to figure out how to fine tune the led addressing and get some sort of configuration scheme working. Ignore that direct x exception. It doesn't seem to affect anything. Bigger fish to fry. :) (See attached screenshot) Link to comment Share on other sites More sharing options...
djhexx Posted March 30, 2019 Author Share Posted March 30, 2019 I'm burning the midnight oil again tonight. I got the screen split into multple parts and assigning appropriate LEDs in the office space to correlate. :D: [ame] [/ame] Link to comment Share on other sites More sharing options...
Zotty Posted March 30, 2019 Share Posted March 30, 2019 thats working real well Link to comment Share on other sites More sharing options...
TackDaniels Posted April 1, 2019 Share Posted April 1, 2019 I wonder why Philips and/or Corsair don't get the multiple screen parts thing working Link to comment Share on other sites More sharing options...
djhexx Posted April 1, 2019 Author Share Posted April 1, 2019 I wonder why Philips and/or Corsair don't get the multiple screen parts thing working Oh does the phillips hue sync not do this? When watching demos on YouTube, I was under the assumption that it did... Link to comment Share on other sites More sharing options...
djhexx Posted April 1, 2019 Author Share Posted April 1, 2019 By the way folks, I got the fading between color transitions working as well which mitigates / eliminates the flashyness depending on many colors it's configured to generate between the transition. It seems 250 colors between color transitions is a nice sweet spot for fast moving video and games. 1000 (or whatever the max between colors is) is a nicer experience for chilling on the web and such. This setting will be configurable when I release binaries... Link to comment Share on other sites More sharing options...
Gronar Posted April 2, 2019 Share Posted April 2, 2019 Awesome work man! Link to comment Share on other sites More sharing options...
TackDaniels Posted April 6, 2019 Share Posted April 6, 2019 (edited) Oh does the phillips hue sync not do this? When watching demos on YouTube, I was under the assumption that it did... Actually not. It only recognizes the "major" color in the middle of the display. Not with the Sync App definitely. The Philips Ambilight TVs have a 2x2 partition (as far from what I've seen, no proof for that). Edited April 6, 2019 by TackDaniels Link to comment Share on other sites More sharing options...
djhexx Posted April 7, 2019 Author Share Posted April 7, 2019 (edited) Actually not. It only recognizes the "major" color in the middle of the display. Not with the Sync App definitely. The Philips Ambilight TVs have a 2x2 partition (as far from what I've seen, no proof for that). I see. Well as of right now, we've one upped them. As of the latest commit, you can now configure any arbitrarty partition(s) you want from a configuration file. This will lead to some very interesting applications. Example: Rocket League I have included a configuration profile that will change the color of your lighting to match the team you're on. This is done by creating a 1 pixel screen detection area on your teams score (which changes color depending on the team you're on. Now your lighting can match that. Config: { "ConfigurationType": 1, "ScreenAreaDimensions": [ { "FromTop": "20px", "FromLeft": "1065px", "Height": "1px", "Width": "1px" } ], "ColorChoices": [ "Blue", "OrangeRed" ] } Future updates: Color choices per screen area: Currently, I support configuring color choices across all screen areas. Soon you'll be able to assign a list of color choices PER area.Configurable Devices: Device/Screen area assignments so you can customize to your own lighting setup. Edited April 7, 2019 by djhexx Link to comment Share on other sites More sharing options...
djhexx Posted April 8, 2019 Author Share Posted April 8, 2019 Devices are now dynamically configurable and assignable to screen areas via json configuration file. :) Getting close to something we can beta! Link to comment Share on other sites More sharing options...
Zotty Posted April 8, 2019 Share Posted April 8, 2019 exciting times dude Link to comment Share on other sites More sharing options...
djhexx Posted April 9, 2019 Author Share Posted April 9, 2019 device and screen area configurations have been split out into seperate files. Much cleaner. Specific color choices can be made per screen area. Think about this. You can split the entire game screen in to functional color choices per game element (health bar, score box, map, getting shot). Lots of creativity can go into this. I'm thinking about getting saucy and have it select different profiles depending on whether your in game mode or the menu screen, etc. Maybe I'm going overboard haha. Link to comment Share on other sites More sharing options...
djhexx Posted April 10, 2019 Author Share Posted April 10, 2019 Have a gui going. Getting close. Link to comment Share on other sites More sharing options...
TackDaniels Posted April 10, 2019 Share Posted April 10, 2019 I see. Well as of right now, we've one upped them. As of the latest commit, you can now configure any arbitrarty partition(s) you want from a configuration file. This will lead to some very interesting applications. Example: Rocket League I have included a configuration profile that will change the color of your lighting to match the team you're on. This is done by creating a 1 pixel screen detection area on your teams score (which changes color depending on the team you're on. Now your lighting can match that. Config: { "ConfigurationType": 1, "ScreenAreaDimensions": [ { "FromTop": "20px", "FromLeft": "1065px", "Height": "1px", "Width": "1px" } ], "ColorChoices": [ "Blue", "OrangeRed" ] } Future updates: Color choices per screen area: Currently, I support configuring color choices across all screen areas. Soon you'll be able to assign a list of color choices PER area.Configurable Devices: Device/Screen area assignments so you can customize to your own lighting setup. Nice, love it! Link to comment Share on other sites More sharing options...
djhexx Posted April 11, 2019 Author Share Posted April 11, 2019 (edited) How about we skip the manual text file configuration and just build it into the UI? Right now, I can snag a single screenshot, display and draw rectangles. Next I want to make the rectangles selectable and resizeable. When you select a screen area, you'll be able to select a list of devices from your device configuration that you want to assign to that area. :) Edited April 11, 2019 by djhexx Link to comment Share on other sites More sharing options...
Zotty Posted April 11, 2019 Share Posted April 11, 2019 Love watching your work dude! Link to comment Share on other sites More sharing options...
djhexx Posted April 15, 2019 Author Share Posted April 15, 2019 Love watching your work dude! Thanks man, I appreciate that! Link to comment Share on other sites More sharing options...
djhexx Posted April 15, 2019 Author Share Posted April 15, 2019 Ok so I did a lot of work this weekend and we now have a working version of the device configuration UI. It's a bit rough looking, but we'll improve that. Next up, I need to go back to the screen configuration page so we can link the device groups up to a screen area, and then we're ready to rock a beta test. Link to comment Share on other sites More sharing options...
Recommended Posts