tylerszabo / RGB-Fusion-Tool

A command line tool for calling Gigabyte's RGB Fusion SDK
GNU General Public License v3.0
184 stars 21 forks source link

Add LED audio support #29

Open adamheffernan opened 6 years ago

tylerszabo commented 6 years ago

The LED music mode is a little bit interesting. The way it seems to work is that you set the LED to mode 2 (Music Mode) where you can set min/max brightness and a color. Then call dllexp_BeatInput with either 0 (off) or 1 (on). This means that you need run a daemon that can pulse the beat on and off. This daemon will also need to monitor audio somehow.

It's pretty involved and while I'd like to do it I think it's out of scope for this particular tool. I've thought about having an RGBFusionToolD that can run in the background and speed up execution by doing a single initialization and potentially allowing various uses of the "Music" Mode. If there's as lot of demand I'll certainly look into doing it sooner :)

adamheffernan commented 6 years ago

Hey I would love to help on my spare time, I’m an ee student and anything I can do to speed up the process only helps me in the end!

Cheers, Adam Heffernan

On Jun 15, 2018, at 9:41 PM, Tyler Szabo notifications@github.com<mailto:notifications@github.com> wrote:

The LED music mode is a little bit interesting. The way it seems to work is that you set the LED to mode 2 (Music Mode) where you can set min/max brightness and a color. Then call dllexp_BeatInput with either 0 (off) or 1 (on). This means that you need run a daemon that can pulse the beat on and off. This daemon will also need to monitor audio somehow.

It's pretty involved and while I'd like to do it I think it's out of scope for this particular tool. I've thought about having an RGBFusionToolD that can run in the background and speed up execution by doing a single initialization and potentially allowing various uses of the "Music" Mode. If there's as lot of demand I'll certainly look into doing it sooner :)

— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHubhttps://github.com/tylerszabo/RGB-Fusion-Tool/issues/29#issuecomment-397777775, or mute the threadhttps://github.com/notifications/unsubscribe-auth/AgO1-exmME3-3DEkHDAKwmn6LIbIYAQ-ks5t9GI0gaJpZM4UqTbB.

tylerszabo commented 6 years ago

If you know a good way to do beat detection of other applications then that'd be the biggest help. The beat detection part does involve some math but what I see as the hard part is figuring out what audio is playing and then getting the beat from that audio. I think the best place for this behavior would be as a plugin for a media player (especially because you'd be able to do beats from just the music and not mix with other things like system sounds). I'm not familiar enough with the audio APIs to know how to find out what sounds are playing on the system at a given moment. If you know where to get that data I could certainly look into it.

Grippy98 commented 6 years ago

This might be something to look at:

https://github.com/naudio/NAudio/blob/master/Docs/WasapiLoopbackCapture.md

tylerszabo commented 6 years ago

@Grippy98 thanks! That does indeed look like something that I could use.

adamheffernan commented 6 years ago

https://github.com/naudio/NAudio this will be even more helpful, this is what Emily Maxwell has used for the Corsair Effects Engine