[Problem, or bug?] Detect USB microphone when reconnecting

R3.1 x64, Windows 10, a USB microphone (device in), and a Sound Blaster ZxR PCIe (device out)

I have a problem a little silly, but annoying enough to write this topic.For some reason, Renoise does not correctly detect if a USB microphone (in my case “Trust Emita”) is connected or disconnected and causes some conflict with the output device.

Steps to detect the problem:

  1. Connect the USB microphone to a USB 2.0/3.0 port on the motherboard
  2. Turn the microphone on by “predetermined” in the Windows 10 recording device control panel (if you have more microphones connected).
  3. Run Renoise
  4. Preferences/Audio In device: select the Microphone (in my case, “Microphone Trust Emita”). In Audio Out is selected the Primary Sound Device (Sound Blaster ZxR PCIe)
  5. Okay, now I can use the Sample Recording windowto record sounds. By the way, it works great!!!The microphone records great, and the audio plays through the sound card, all good.
  6. I try to change the input and output devices. Everything works well.
  7. Now, I disconnect the USB connector of microphone from the motherboard. I wait 5 seconds and I reconnect it on the same port (or a different one, the same thing happens).
  8. Change the output device…
  9. What happens:

7555 usb-microphone-fail-to-reconnect.png

A warning window appears, warning that the Out device fail or is disabled (the sound card).And it is not possible to select it again if Renoise does not restart.What? what is happening here?The sound card continues to function and generates sound with other programs, for example a audio player.

For some reason, reconnecting a USB microphone causes Renoise to detect that the output sound card is turned off, when it is not. The sound card has nothing to do with the microphone, it is another device, which works at all times.

It’s like I do not update the correct state. What is expected is that if I reconnect the microphone, Renoise will detect it again without disabling the sound card, being possible to change the input and output devices again.This causes that it is very dangerous to disconnect the USB microphone, since it will be necessary to restart Renoise and it is very annoying.

Renoise behaves strangely with this subject, and should not work like that.Can this be an important bug?

Does anyone else have a USB microphone and an internal sound card to test this problem?

Thanks!

Note: The interesting thing about this warning window is that it can be funny ^_^. If you only have one output device, and Renoise is not able to use it, touch Reboot Renoise.

The error of log.txt file:

Error Message: Failed to initialize the audio device 'Primary Sound Device'. Audio is disabled. Please try to choose a different device or samplerate.

DirectSound: Initializing...
DirectSound: DirectSoundCreate failed with the error:-2005401480
DirectSound: CreateObjects ... FAILED

error:-2005401480 ???

I have tested Renoise 3.1.1 with a USB Microphone.

I came to similar conclusions.

  • The USB Microphone is not detected when hotplugged when Renoise is running.

  • The USB Microphone is not removed from the device list when unplugged when Renoise is running

This causes addressing problems to (nonexisting) devices, and the error posted above was a result of that.

Below is an image of the Renoise in devices AFTER THE USB MIC WAS UNPLUGGED

attachicon.gifbug_USB_Microphone_devices_not_updated_microphone_is_disconnected.jpg

Clearly a bug on USB microphone device detection. Maybe it’s only implemented that MIDI devices can be hotplugged so far.

Thanks EatME for the confirmation! Definitely Renoise 3.1 (v3.1.0, v3.1.1) has problems here with USB devices. Something similar may happen with external USB sound cards?? It looks like a serious bug. I’m afraid that users can not do anything until they fix it for the next version. I hope this problem has some solution, or at least someone communicate something.

I am using my USB microphone uncomfortably (which, by the way, records great).This topic pisses me off a lot…

Something that Really Needs Implementation. USB sound device / microphone hotplug and removal detection.

danoise never said that, but now maybe he will get attention to this post.

I am sure that those responsible will have taken note, even without answering here.I guess they’ll review it as soon as they can solved it.

Even with this config node (within AudioIO)

<AutoRescanHotPluggedDevices>true</AutoRescanHotPluggedDevices>

it doesn’t seem to refresh the audio devices on change with macOS (maybe the config switch is for midi, I don’t know).

Perhaps, the only viable solution is for the “Reinitialize” button to check the available devices and correctly update the drop-down lists of the input and output devices. Currently, the “Reinitialize” button completely ignores this scenario, so it is possible that there are unconnected devices crossed with devices that are connected.

If this solution were possible, the reasonable steps would be:

  1. The user wishes to connect or disconnect a hot device (for example, a microphone).
  2. The user connects or disconnects the device.
  3. The user must press the “Reinitialize” button so that Renoise correctly detects all available devices again, for input and output devices, both. It is another manual step that the user should do, not an “automatic” Renoise check when connecting or disconnecting a device (which would be ideal).

If the Reinitialize button cannot execute this operation, there should be an “Update Devices” button, if it is feasible.

Hm, I kind of remember that this used to work in Renoise in an older version, but I could be wrong. Maybe it was removed once I reported a bug about Renoise crashing when powering off the audio device while rendering…?

I have no idea, but honestly, I always believed that the Reinitialize button served precisely for this scenario. That is, any change of state of the connected devices (input and output devices).

I have a Sound Blaster ZxR sound card. When I change the setting from “Surround 5.1” to “Stereo Direct” the card changes an internal switch, which makes a click noise. Then, I must press the Reinitialize button in the Renoise preferences. Otherwise, Renoise crashes. Moreover, I must have the preferences window ready to do so safely.

Reinitialize: Shut down and then reopen all connections to the soundcard/driver. May be useful for troubleshooting.

Renoise should be shielded from these scenarios, which are quite common.

At this point in the thread, it is necessary to discuss among all of us whether Direct Sound supports hot detection of the devices (both connect and disconnect).

Apparently, Direct Sound prevents hot detection, and therefore, it is not possible to update the input and output lists of devices, even with the “Reinitialize” button.

Can anyone try Direct Sound with the connection and disconnection of USB devices (such as a microphone), in other software (another DAW or audio recording program)?

I have tried Adobe Audition myself, but it uses MME and it works correctly. When you disconnect the USB microphone, it appears in parentheses automatically: Trust Emita microphone (does not work).

But MME is not Direct Sound. I think I remember that FL Studio uses ASIO for input. It is not possible to use Direct Sound to use a USB microphone. Studio One use WASAPI audio device for Windows as I have read in your user’s manual.

I don’t understand very well what a difference there is between all this.