rowak / nanoleaf-desktop

A modern desktop application for the Nanoleaf Aurora and Canvas
MIT License
166 stars 13 forks source link

Spotify Integration Brightness #26

Open NathanTheLegend opened 3 years ago

NathanTheLegend commented 3 years ago

Love the Spotify integration but my Nanoleaf Auroras are really dim when using this feature. It's as if they are set at 50% brightness. Is there a reason for this, or any way to change the brightness when using this feature specifically?

rowak commented 3 years ago

This is actually a "feature" I added in v0.5.1, which dynamically changes the brightness based on how loud the music is. I figured this would be a cool thing to add, but I can see why some people might want to disable it. The streaking notes effect is a bit different; it actually does has a max brightness of 50% for some reason. I'm not too sure why I chose to do this though. There is currently no way to change this at the user level, but I could add a checkbox that enables/disables dynamic brightness, then the master brightness could be changed normally under the "control" tab. I'll add this to the todo list.

In the meantime I compiled a quick fix that removes the loudness restriction and the 50% restriction. You can download it here.

NathanTheLegend commented 3 years ago

Java 1 Java 2

Thanks for the quick response however I'm getting the attached errors when opening the debug .jar file. Any ideas?

NathanTheLegend commented 3 years ago

Spotify Error

Okay it looks like you used Java 11 to compile the file you sent. I've installed that and the app is able to open now, however I'm getting the above when using the Spotify integration. It doesn't load the site like it normally does.

rowak commented 3 years ago

Yup haha nice catch. The new error is strange though because I don't seem to be getting it on my end. Does v0.8.6 (normal release) still allow you to authenticate properly? Can you open the url that is posted in the terminal in your web browser manually? (note that the url is unique to each session). I'll upload a new version compiled with java 8 to see if that makes a difference as well.

Edit: by the way I just realized that I actually DIDN'T remove the code from the .jar I sent you because I had two instances of the code open. Anyway, I'll actually remove the code now and recompile it with java 8.

NathanTheLegend commented 3 years ago

Hmm it might have fixed itself now actually. Looks like it might have been Windows firewall blocking the connections as the path to Java (11 rather than 8) had updated. It didn't prompt me the first few times but now it has and it's allowing me to auth to Spotify.

Let me know once you've removed the code and I'll re-test. Thanks again!

rowak commented 3 years ago

Ah firewalls... Nice one again, I wouldn't have guessed that. Well here's the updated build. It may or may not be compiled with java 8 because my machine seems to automatically switch to java 11 even if I tell it not to.

NathanTheLegend commented 3 years ago

Hmm. It's the same brightness. Ever since reporting this, I've had my Spotify and PC volume at 100% and changing the volume doesn't seem to change the brightness. I wonder if I'm having another issue? Really want to get this working on a brighter setting because it'll look awesome :(

rowak commented 3 years ago

That's odd. It is possible that I screwed something up and sent the wrong .jar or something, but I'm pretty sure I noticed a brightness improvement on my end after removing the restrictions. The "loudness" is actually not based on spotify/system volume at all, but it is a value calculated at different points in the track based on how much noise is going on (calculated on spotify's end so I have little control over it). This means that something like heavy metal would always output higher loudness values than something like piano.

By the way, are you not noticing a difference in any of the four effects or just one specifically? Each of the four effects is very different, so they may react differently based on the types of music because brightness is also affected by the duration of beats for example (shorter/faster beats will appear less-bright). In particular, you should notice that the pulse beats effect gets very bright, as well as the soundbar effect.

I don't really have much time left this week to look into this more, but I'll see if I can figure it out on the weekend. Keep me updated if you find anything else out.

NathanTheLegend commented 3 years ago

Thanks for clarifying, that makes much more sense now. I think I was just misunderstanding how the volume was detected. I was mainly testing on the fireworks effect, which does still seem dim but I have noticed that it does in fact go brighter with certain sounds/genres, and it definitely wasn't doing before. All of the other effects are much brighter, so I'm happy that this is working now.

Thanks again for your help, and for developing this!

rowak commented 3 years ago

Well, if you're happy I'm happy :)

I will still take a look at some point to see if there is something I can do to improve the brightness with the fireworks effect with a wider variety of music types. I'm actually planning on eventually completely rewriting/reworking the spotify visualizer at some point, so all the effects should hopefully see an improvement in the future.

I'm also going to keep this issue open just as a future reminder to myself to actually add a dynamic brightness checkbox into the app (mentioned in my first comment).