Deviation Actions

WyzzyMoon's avatar

MusiColor - Add sound generated color to any skin

By
52 Comments
33K Views
THIS IS NOT A SKIN
this is just the code you can implement into any rainmeter skin that uses color values.
skin in the preview is Pulsweb (Hexpulse) with MusiColor Enabled.


Let your music decide the color of your skin!

MusiColor is a piece of code that makes the color of your skin react to your music, even if the skin itself is not an audio visualizer.
It can be used in any code and will be available as an option in most of my own skins.

To use it:
1.     Place "MusiColor.inc" in the Resources folder inside your skin folder.
        If you don't have one yet, create a new folder and name it "resources"

2.    Include "MusiColor.inc" in your skin file.
        Do this by adding "@include0=#@#MusiColor.inc" at the top of the file
        If there are already more "@ include" lines in the code, change the "0" to a number that in not used yet.
        For most skins "@include6" will be more than enough and it wont hurt if 0 would have been fine too.

3.    Use it!
        Now you can use the variables "MusiColor", "MusiColorO", "MusicolorX" and all the RGBCMY colors in place of any RGB or RGBA code, and "MusiColorA" for any A chanel.
        As an example:

        Color=255,255,255                ( white )                                        ->          Color=#MusiColorO#         (MusiColor changing color)  

        Color=255,255,255                ( white )                                        ->          Color=#MusiColor#         (MusiColor changing color and transparency)  

        Color=255,255,255,100         (semi transparent white )             ->          Color=#MusiColorO#,100         (MusiColor changing color but keeping the original transparency) 

        Color=255,255,255,100         (semi transparent white )             ->          Color=255,255,255,#MusiColorA#         (Static Color with MusiColor Transparenty) 





*** CHANGELOG ***

-1.4        01-03-2017
Added: MusiColorR, MusiColorG, MusiColorB, MusiColorC, MusiColorM, MusiColorY
New colors that only fade between shades of that color and white.

-1.3.2    11-02-2017
Added: a simple test skin I once made but never released. It makes the edge of your screen pulse and glow to the music.

-1.3.1    22-01-2017
Fixed: Description

-1.3    20-12-2016
Added: MusiColorX
Added: MusiColorA

-1.2     21-06-2016
Default MusiColor now with transparency
MusiColorO now white if no music.
Red and Blue colors are a little bit more present now.

-1.1    17-06-2016
Fixed: Flickering problem

-1.0    15-06-2016
MusiColor Release


Archive available on GitHub
github.com/WyzzyMoon/Rainmeter…
Published:
Comments52
Join the community to add your comment. Already a deviant? Log In

So I'm using Fizzualizer and I was wondering if MusiColor can be integrated into it, since the color format for Fizzualizer is in HSV. Any way to integrate MusiColor into Fizzualizer?

WyzzyMoon's avatar

Sure, HSV is still a value with a 0-255 range. So you can use any of the variables and they will work. But probably pick specific ones since they'll be behaving differently. So you might need to experiment a bit.

I've been thinking about rebuilding MusiColor to use HSV anyway so there might be an easier way in the future.

R0KGod4021's avatar

For some reason its nearly transparent when I use the variables and when I use MusiColor0 the transparency number is acting like the blue amount


Edit: I think I figured it out (sort of) the alpha was measuring too low for it to actually show up, although the colors don't seem to be measuring properly for me either as even after (sort of) fixing the alpha it's pretty much permanently red.

WyzzyMoon's avatar

That sounds like it has to do with the kind of music, but mostly the internal volume that you listen to it.

Red is low's but the higher the fidelity music you listen to, the brighter the colors. (local files give way brighter colors than streamed music)

R0KGod4021's avatar
That's interesting, I had my pc on max volume but I was streaming, so I'll check that out with a local file, thx.
WyzzyMoon's avatar

it should cause the full problem, but it might be intresting. I've noticed it responding to youtube less to to files

scrocle's avatar

looks awesome but it's not working for me. i checked everything and it still shows solid white color. i tried with TriSound and it shows the same white color.

WyzzyMoon's avatar

open the rainmeter app and click on "open log" and see if there are any errors.

It's already included in TriSounds so it should be as simple as entering "#MusiColorX#" as a color value.

But you have to be playing music to have the collors change

Blisteringsyko's avatar
Is there a way to invert the value of #MusiColorA# so that with no sound it is opaque ie:255 then with sound it drops to 0 ?So becoming more transparent with more sound?
Blisteringsyko's avatar
Ah nvm.. I just made a new variable MusiColorAN and MCTAN which uses MeasureCalcAN which is the same as MeasureCalcA except i added 255 - to the start. So it looks like (255-Clamp(Trunc((MCAudio*600)),0,255))
kenji490's avatar
awesome. thanks
also can this be used on the experimental punk one
WyzzyMoon's avatar
Yes, MusiColor is already include in pulseweb so just enter a musicolor value as a color and it works!
protato117's avatar
I'm using this for clockstellation and as wondering if there was a way to have a full RGB spectrum cycle? One full with vivid colors, not diffused with some sort of transparency or somewhat a white overlay to the color.

Something that could potentially imitate the vivid color on the lines and dots as shown on the encircled part of my wallpaper? MusiColorO jst doesn't cut it enough for me... 
  Sketch by protato117
WyzzyMoon's avatar
Well, that is a difficult one. Right now MusiColorX is the most vivid one there is.
The problem is that it is all dependent on the music. The more vivid I make it, the less responsive it will be. I have been working on a version however that would probably solve it. Right now it's RGB resposive but I am trying to make a HSL, than it would be possible to just change the hue without altering brightness or saturation. 
protato117's avatar
ohh, well since that's the case, keep up it up! I'll patiently wait! Booze is on me when it's done! 
Hey! I was trying to add this to Frost but for some reason, after following all the steps, I ended up with some weird blue static color which meant something clearly went wrong. Hope you can look into it, or find out if i missed anything out. I added the @include4=#@#MusiColor.inc into the frost.ini and changed the rgb code in the variables file. Thanks in advance!
WyzzyMoon's avatar
You're almost there, first: place MusiColor.inc in the Resources folder within frost. Than add @include4=#@#MusiColor.inc to frost.ini like you did.
Change Color in the variavles.inc file to #MusiColorO# (this has to be MusiColorO, it can't be MusiColor or MusiColorX) and than as a final step edit Frost.inc and at the top change DefaultUpdateDivider=-1 to DefaultUpdateDivider=1.
Than MusiColor should work... This is far from ideal though since it is now refreshing the entire skin and that makes it very heavy to run. It should be possible to just refresh the things you have to but I did not find all of them yet. If I do, I'll get back to you.

If you want to use a MusiColor that includes then Alpha chanel (like MusiColor or MusiColorX) you have to edit SetMeterOptions.lua and change the color there. Replace #Color#,255 and #Color#,0 with the desired colors.
Let me know if it works!
Dunklmer's avatar
I'm confused. I'm new to Rainmeter...How do I use the Variables?
WyzzyMoon's avatar
if you followed all steps than you can just place the word "MusiColor" (or any of the variations) with a  "#" sign on both sides in place of any color
Dunklmer's avatar
Is there an example? And Thank you for the response!
WyzzyMoon's avatar
Yes, the skin includes a testskin, very simple code with just blocks of color so you can see how it works.
Dunklmer's avatar
lleonnardo's avatar
And when I use it on Hexpulse it's just a solid color
Join the community to add your comment. Already a deviant? Log In