erikrichardlarson / unbox

Log and display your rekordbox / Serato / Traktor / VirtualDJ / DJUCED / Mixxx / djay Pro tracks as they're played
MIT License
257 stars 20 forks source link

[djay pro - Trouble Connecting - Resolved (Album Art Update)] #123

Open clarityam opened 9 months ago

clarityam commented 9 months ago

OS: Windows 11 Pro - 23H2 - 22631.3085 djay pro: 5.1.77.18.0 Unbox: Latest (90ab1b8)

App initialization works as expected for Unbox and djay pro, unfortunately no connection is being established between djay pro and unbox, there was a recent update to add Apple Music to djay pro which may have caused some changes in communication.

Thanks!

erikrichardlarson commented 9 months ago

Thanks for sending this over and sorry that you're running into issues here, will take a look at this today and get a new release out.

clarityam commented 9 months ago

Absolutely! After VSCode'ing your src, it looks like my instance of djay may not be spawning the instance of NowPlaying.txt that is required to pull the track information. Not sure if this is due to the recent update or it likely could be an isolated issue with my machine

erikrichardlarson commented 9 months ago

This looks like something related to the Windows version, used procmon to check for file writes and didn't see track data being written to any files. Going to keep looking into this and see what else can be done, in the meantime I'll refund your subscription.

clarityam commented 9 months ago

No worries on this at all! Also no need to refund anything, I am completely happy with supporting you!

clarityam commented 9 months ago

This looks like something related to the Windows version used procmon to check for file writes and didn't see track data being written to any files. Going to keep looking into this and see what else can be done, in the meantime I'll refund your subscription.

I was able to replicate the same thing you described, I tried switching tracks against different platforms for music just to make sure it was not a random fluke but I was unable to find any process that would spawn the NowPlaying file (using procmon as well). My friend utilizing a Mac couldn't seem to locate the file on his side either but we are yet to test using Unbox on the device, so it may be just an isolated Windows issue. I have in the meantime put in a request to Algoriddim to see if that file is still being created by a process in the software.

Update: Tested it on Mac with the same results, I believe that Djay Pro is not writing the file meant to be read, your code looks fine to me, it's how I would've done the implementation.

erikrichardlarson commented 9 months ago

Good to know, I was actually able to parse the WAL file to get the artist / track / isrc as records are written to the db so I'll update the poller to use this code this week. Will keep you updated here.

clarityam commented 9 months ago

Fantastic! I will be looking forward to it!

erikrichardlarson commented 9 months ago

Just pushed a new release that uses a combination of the WAL file and db to get the history updates on Windows, let me know if you run into any issues: https://github.com/erikrichardlarson/unbox/releases/download/11.3/unbox-win.zip

clarityam commented 9 months ago

At the moment, the client reports a successful connection, although I am unable to utilize the local overlay (http://localhost:8001/unbox_overlay.html) on my current computer, it reports "Cannot GET /unbox_overlay.html", in addition, album art (http://localhost:8001/album_art.html) shows nothing.. I have djay installed on another device as well so I am going to test that and get back to you.

erikrichardlarson commented 9 months ago

Are you accessing the overlay html on the same machine that unbox is running on?

clarityam commented 9 months ago

Indeed. I am attempting to use the localhost URL, I would test the external but it got assigned 192.168.1.x (I am assuming because of the Virtual Machine adapters in windows)

erikrichardlarson commented 9 months ago

Hmm does the external also fail?

clarityam commented 9 months ago

Let me spin up a VM real quick and I'll take a look. I tested internal on a different computer and had the same issue.

erikrichardlarson commented 9 months ago

Album art isn't working yet btw, will get an update out for that and will work when an isrc can be resolved.

clarityam commented 9 months ago

No worries. I just tested it on a VM (external IP 192.168.x.x) and I'm having the same issue with "Cannot GET /unbox_overlay.html"

erikrichardlarson commented 9 months ago

Ah try changing the overlay color to see if that copies over the file needed.

clarityam commented 9 months ago

Haha! Funny enough, that is the solution, works perfectly!

erikrichardlarson commented 9 months ago

Great glad it's working, I'll fix that too. There is another issue where the first track played isn't picked up sometimes so might need a dummy first track before starting actual set.

clarityam commented 9 months ago

Ah yes, I know that's certainly an issue if unbox is started after Djay as well. (Which is not the way it's to be used anyway) It has that issue til another track is loaded on a deck then it resolves that change in the db. Overall, excellent work though!

erikrichardlarson commented 9 months ago

Thanks! Where are you playing your tracks from btw? Beatport provides the isrc, but not sure if other track sources do

clarityam commented 9 months ago

I have a few to experiment with, unfortunately, Beatport isn't one of them, however, I have Apple Music, Tidal, and Soundcloud+ available to test! (I've tried Apple Music so far and it reports the Artist and the Track perfectly, Tidal resolves same information, Soundcloud as well!)

erikrichardlarson commented 9 months ago

Awesome, will post here when the album art release is up

clarityam commented 9 months ago

Perfect! Thank you for your hard work on this! It's a fantastic app! (It certainly makes me want to dive more into electron too lol)