erikrichardlarson / unbox

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

Unboxed 10 crashing - no error, no log output, no connectivity to Denons #71

Open cosine83 opened 2 years ago

cosine83 commented 2 years ago

OS: Windows 11 Pro x64 GPU: GTX 970 w/ current drivers CPU: Intel i7-4790 RAM: 16GB

This is a fresh version, not overwriting/merging the 9.2 (which was mostly working with the 2.x firmware with some foibles) directory I was using. Very bare software install on the machine itself as I only use it for streaming and pretty much default config for a lot.

Upon opening, after 5-20 seconds the program will generally close out automatically with no user input or error dialog and there's no logging folder in the program directory to see what's going on. I have gotten it to stay open longer than that exactly once with the same lack of connectivity to the devices.

If I can get it to stay open longer or I'm fast enough, it will not connect to my SC5000/X1800 setup. The SC5000s are connected to the X1800 internal switch and the X1800 and the computer are connected to the same switch so it's unlikely a connectivity issue. I've both added exceptions to the Windows Firewall and turned it off with no change to further prove that.

Is there any way to turn on some verbose logging to see why it's just suddenly closing with no warning?

cosine83 commented 2 years ago

Renaming the "unbox_output" folder so it can be regenerated (just in case that data may be corrupted for some reason) nets the same results.

Are there new dependencies (.net core, redists, node, etc.) for version 10 that wouldn't be present on a fresh Windows system?

djbartos93 commented 2 years ago

Im also having this same issue, however I am running on mac. I've tried both intel and M1 macs, running Big Sur, Monterey, and Catalina. All having the same crashing issue.

djbartos93 commented 2 years ago

An interesting update I should add, I am running this on a (probably very outdated) windows 10 virtual machine and it is ROCK SOLID.

erikrichardlarson commented 2 years ago

@djbartos93 @cosine83 yoo thanks for using unbox, I migrated the Denon mode over to a new library which has caused some issues connecting to Denon gear / caused the crashing issues you're seeing. For now I would use the versions linked in the README, these are previous releases that should work until I'm able to debug / update the latest version:

https://github.com/erikrichardlarson/unbox/releases/download/9.2/unbox_windows.zip https://github.com/erikrichardlarson/unbox/releases/download/9.0/unbox_mac.zip

@djbartos93 What version of unbox are you running on your VM that is working?

djbartos93 commented 2 years ago

@erikrichardlarson I am running what was released under the version 10 tag here on github. It doesn't crash, but it does do the thing where it stops reading denon data. I noticed there is another issue open for that as well, going back down to version 9.x presented the same issues.

cosine83 commented 2 years ago

So, update on this! @erikrichardlarson

Updated my decks to the 2.1.2 firmware that recently released. Have installed the windows 11 Feb. '22 CUs. Deleted the unbox folder. Re-extracted the zip to desktop. Ran unbox and the denon poller executable prompted for firewall exception (which it never did before). Program is no longer crashing and connecting to my decks as expected.

Can @djbartos93 or someone else sanity check the 2.1.2 firmware update and Windows 10/11 with or without current patches? Wondering if there was an undocumented StagelinQ bug in the 2.1.0 or 2.1.1 firmwares.

djbartos93 commented 2 years ago

I am planning on upgrading my players tonight to 2.1.2. I'll give it a shot with Unbox 10 to see what happens. I'll also test 9.x to see what works and what doesn't.

( I guess I did never try to find out what the root cause of the crash was before attempting to modify things @erikrichardlarson

Edit: but i havent been building for windows i suppose )

cosine83 commented 2 years ago

The good and bad is that Unbox 10 is "working" but in the same way that 9.x was working with the 2.x firmware. Getting stuck on songs or showing the wrong song after long blends often requiring a reload of the program or, if lucky, a quick fader down then up.

djbartos93 commented 2 years ago

@cosine83 something to note however, in version 10 there is no multiple device support (probably what caused the crash) As far as i know the stagelinq library that is being used only will connect to the first device it sees and then stop.

armoredmeat commented 2 years ago

The good and bad is that Unbox 10 is "working" but in the same way that 9.x was working with the 2.x firmware. Getting stuck on songs or showing the wrong song after long blends often requiring a reload of the program or, if lucky, a quick fader down then up.

@cosine83 i have been having the same issue. When i first start to use it, unbox seems to work for about 5 or 6 tracks then stops receiving info from the Prime 4 that results in having to close and reopen the app. I noticed that it takes less transitions to fail, taking only as little as 2 mixes before not responding after I reopen the app.

At first I thought it might have been Windows Defender's Real-Time Protection as I had a camera app, DroidCam OBS, get killed until I placed an Exclusion for it. I tried running unbox with Real-Time turned off and that did not fix it.

I have also replaced a wifi router i was using in AP mode with a switch thinking... well knowing, i had an issue with at least the wifi part of it. That also failed to keep the app connected.

armoredmeat commented 2 years ago

attached my latest log from tonight. log.txt

---edit--- i went and downloaded @MarByteBeep's node.js library and ran that on my local machine. Ran the main.js and it connected and displayed the info being sent without issue. What i did notice is the unbox log says i connect to 3 devices. The node.js library shows I only have the one.

---unbox--- Unbox StagelinQ Log: 2022/03/14 20:26:03 Listening for devices for 5s Unbox StagelinQ Log: 2022/03/14 20:26:03 Added this device: 192.168.1.29 "prime4" "JC11" "2.1.2" Unbox StagelinQ Log: 2022/03/14 20:26:03 Added this device: 192.168.1.29 "prime4" "OfflineAnalyzer" "1.0.0" Unbox StagelinQ Log: 2022/03/14 20:26:03 Added this device: 192.168.1.29 "prime4" "OfflineAnalyzer" "1.0.0" Unbox StagelinQ Log: 2022/03/14 20:26:08 192.168.1.29 "Found StageLinQ Device on Network" Unbox StagelinQ Log: 2022/03/14 20:26:08 192.168.1.29 "Found StageLinQ Device on Network" Unbox StagelinQ Log: 2022/03/14 20:26:08 192.168.1.29 "Found StageLinQ Device on Network" Unbox StagelinQ Log: 2022/03/14 20:26:08 attempting to connect to this device… Unbox StagelinQ Log: 2022/03/14 20:26:08 attempting to connect to this device… Unbox StagelinQ Log: 2022/03/14 20:26:08 attempting to connect to this device… Unbox StagelinQ Log: 2022/03/14 20:26:08 requesting device data services… Unbox StagelinQ Log: 2022/03/14 20:26:08 requesting device data services… Unbox StagelinQ Log: 2022/03/14 20:26:08 requesting device data services… Unbox StagelinQ Log: 2022/03/14 20:26:08 offers FileTransfer at port 39631 Unbox StagelinQ Log: 2022/03/14 20:26:08 offers StateMap at port 40971 Unbox StagelinQ Log: 2022/03/14 20:26:08 offers FileTransfer at port 38299 Unbox StagelinQ Log: 2022/03/14 20:26:08 State logged: /Client/Librarian/DevicesController/CurrentDevice State value: map[string:/media/Prime4 type:8]

---node.js--- PS D:\Programming\StageLinq-main> node ./dist/main.js [22:44:37] [INFO] Found 'prime4' Controller at '192.168.1.29:46097' with following software: { name: 'JC11', version: '2.1.2' } [22:44:37] [LOG] TCP connection to '192.168.1.29:46097' local port: 62255 [22:44:38] [INFO] Discovered the following services: [22:44:38] [INFO] port: 32781 => StateMap [22:44:38] [INFO] port: 39445 => Broadcast [22:44:38] [INFO] port: 41015 => TimeSynchronization [22:44:38] [INFO] port: 34515 => BeatInfo [22:44:38] [INFO] port: 42813 => FileTransfer [22:44:38] [LOG] TCP connection to '192.168.1.29:42813' local port: 62256 [22:44:38] [INFO] Connected to service 'FileTransfer' at port 42813 [22:44:39] [INFO] downloaded: '/DRIVE (USB 2)/Engine Library/Database2/m.db' and stored in './localdb/DRIVE (USB 2)/Engine Library/Database2/m.db' [22:44:39] [INFO] dumped 205 albums arts in './localdb/DRIVE (USB 2)/Album Art/' [22:44:40] [INFO] downloaded: '/Prime4 (Internal)/Engine Library/Database2/m.db' and stored in './localdb/Prime4 (Internal)/Engine Library/Database2/m.db' [22:44:41] [INFO] dumped 623 albums arts in './localdb/Prime4 (Internal)/Album Art/' [22:44:41] [LOG] TCP connection to '192.168.1.29:32781' local port: 62262 [22:44:41] [INFO] Connected to service 'StateMap' at port 32781

MarByteBeep commented 2 years ago

Hi all,

This is a known problem and I will address it once I have some time. But currently I'm completely swamped with renovating my house. Feel free to keep adding more information and tracelogs to this thread, so it'll be easier for me to fix.

Thanks!

armoredmeat commented 2 years ago

i did some experimenting this evening. i started unbox like it is supposed to do after getting the prime 4 started up and played until the app no longer updated the track playing. Instead of restarting the app or closing and reopening i went into the denon folder and ran the poller exe and left it open.

This worked for the next hour without issue. It never bugged out or crashed. Only until the last mix which was somewhere between 1 and 2mins long, did i have to bring the channel fader up on the faded out track from zero just enough to register and back down for it to update to the other now playing track.

i dont know if there is anyone else that is having the same issue that would want to try the same thing.

cosine83 commented 2 years ago

So @erikrichardlarson have you figured this one out? Dying for an update to the software. Happy to help how I can.

erikrichardlarson commented 2 years ago

Hey haven't sat down and worked on this in a bit, and on vacation right now, but planning to pick this back up when I'm back in a week or two.