System-wide sound crash caused by mAirlist

In mAirlist 4.4.x and all the latests builds until 2039 (from what I have experienced), I am having the following problem:

Whenever I player music, streaming or not streaming, for a while in mAirlist, after a while when pressing the button start on my DX2000 mixer the sound completely stops. I can’t play new songs on mAirlist, but I can’t even play music on Spotify or Youtube, so it’s a system wide failure. Everything is solved as soon as I quit mAirlist. I might have been thinking it could be a deadlock caused anywhere. Sometimes the music also starts to play in slow motion. To me it occured very random until I start pressing the button starts I connected or when I used the cartwall player buttons I have connected myself using a USB game controller. There are 4 buttons. These events sometimes seem to trigger the problem.

My setup is the following:

I have an Behringer DX2000 mixer, whom I have connected 2 players to my mixer by using an ESI Gigaport HD+. I have tried reinstalling/installing the latest drivers but this doesn’t seem to fix anything. Also I am using Windows 7 with 4GB of memory (although no memory leaks are indicated when this problem occurs). I have an Intel i2 processor which I think should be sufficient. The buffer settings on my Gigaport are default. I also return the sound from my DX2000 back to mAirlist with the DX2000 build-in USB interface. I really have no idea what’s happening!

First of all, can you please enter your license serial number in the forum profile, thanks!

I forgot mentioning I am still using the demo license. It is only possible for me to use mAirlist with a Home License if this problem stops arising. It happens within 10 minutes or so for me. I haven’t been able to trial really effectively yet.

Ok, I see.

First things to try:

  • Switch from DirectSound to WASAPI (mAirListConfig -> Audio Devices)
  • Increase buffer sizes (mAirListConfig -> Audio Settings -> WASAPI, or DirectSound, then select device from list and adjust buffer)

Thanks for your assistance Torben, though it didn’t seem to fix it. But again when I tested the sound crashed as soon as I pressed a button connected to my USB game controller. Could it be that something within the USB gamepad crashes it? It’s such an odd problem and it’s driving me crazy…

EDIT:

I found out it also still crashed when using the serial connection. Also, before it crashed this time the sound went all cracky and with a noise through it. The sound continued until I pressed the start button, then it crashed!

I suspect something is wrong with the USB bus or one of the devices. Have you tried using a different USB port for any of them?

Is there a possibility or a tool to debug the USB busses? So I can see what maybe possibly goes wrong?

Quick Google search for “USB event logger”:

http://msdn.microsoft.com/en-us/library/windows/hardware/jj151577(v=vs.85).aspx

Hello Torben, thanks for the links. I continued testing and it seems it really is the USB controller that doesn’t work. Too bad it doesn’t work in any of my ports. Debugging with Windows’ joy.cpl program, the controller itself still seems to get the input from the button presses meaning the driver itself doesn’t crash…? Maybe? Also, when instantly pressing the controller buttons won’t crash mAirlist. It only causes a crash after 10 - 15 minutes of playing music. It’s an really odd problem. Any ideas maybe?

I have succesfully run out the trial time with the USB controller disconnected. So it’s definitely that. Very odd that this still only occurs within mAirlist. Do you have any idea Torben?

What kind of game controller is that anyway?

I have seen strange effects when using cheap USB-to-gameport adapters running in “Joystick” mode. When no potentiometers are connected to the analog inputs, the adapter keeps sending “noise” to the software, flooding mAirList with hundres and thousands of messages per seconds, which eventually leads to a crash. It took us weeks to find out what was happening…

It’s a pretty old one indeed, is there a debug mode where I can test if any of this is happening? Would there be something I can do to fix this? (like soldering?) Also, Windows’ joy.cpl doesn’t show any buttons pressed when I’m not pressing anything.

I’ve tried polling the controller input using C# and DirectX and it didn’t detect any noise, just the button presses. Using the Raw Input API didn’t work out though. I bet you aren’t using DirectX?

I’m using DirectInput.

In that particular case I mentioned, we used ProcessExplorer and were able to see that one thread - the one receiving the gamepad events - was consuming a lot of CPU.

Yep, I seem to have the same result. Is there a certain solution that I can solder to the gamepad?

To verify that the CPU load is actually caused by the game controller:

  • In ProcessExplorer, identify and double-click the thread that you think is causing the CPU, and make a screenshot so that I can see the Thread ID.

  • While mAirList is running, create and send a bug report from the About menu (click the small arrow next to the mAirList button). The report will also contain a list of all threads, their IDs, and the current call stack.

Don’t close/restart mAirList in between these two steps! The thread IDs will change everytime you restart the application.

I’ve made the following screenshot of my ProcessExplorer:

I also sent the bug report without closing inbetween, so the Thread ID’s are fine!

Have you discovered a potential fix yet?

Sorry, I did not receive the bug report at all :frowning: Can you please repeat the steps, and this time perhaps save the bug report manually (bugreport.txt) and send me both files by e-mail, info@mairlist.com.

I sent another one from mAirlist itself, but also sent you an email this time.