UltraStar-Deluxe / USDX

The free and open source karaoke singing game UltraStar Deluxe, inspired by Sony SingStar™
https://usdx.eu
GNU General Public License v2.0
812 stars 160 forks source link

Singstar USB microphones cause usdx to crash with pulseaudio #496

Open hackerb9 opened 4 years ago

hackerb9 commented 4 years ago

Actual behaviour

I have a SingStar USB converter and microphones for the PlayStation 2 which works fine for adding microphones to any computer. However, if I have plugged in when I first start Ultrastar Deluxe, it dies with the following message:

An unhandled exception occurred at $00007F877BC4C4B3:
EAccessViolation: Access violation
  $00007F877BC4C4B3

Expected behaviour

It ought to work. In fact, if I plug in the mics after UltrastarDX has started, I'm able to play the game using them. In order to do that I have to do a workaround: I first use pavucontrol to set the SingStar mics to be the system default for recording and then change UltrastarDX's recording option to use "default" as the microphone input.

Note: The microphone are not listed in UltraStar Deluxe's "Soundcards" although they should be. I believe UltraStarDX only probes the available mics at startup. (Which is probably also why it only dies at startup.)

Steps to reproduce

  1. Plug in SingStar USB Converter
  2. Run Ultrastar Deluxe
  3. It dies with an error message on the console.

Details

Provide some additional information:

batrique commented 4 years ago

I have the same problem on Ubuntu 19.10 but not on my older computer running Ubuntu 19.04. I tried with a 4 months old version and a fresh version (Jan. 11 2020). I'm using a USB audio card.

EccoB commented 3 years ago

I can confirm that this problem also happens on Ubuntu 20.04.1 LTS with 5.4.0-58-generic kernel when plugged in the SingStar USB-Converter. It will crash with:

ALSA lib pcm_dmix.c:1089:(snd_pcm_dmix_open) unable to open slave ALSA lib pcm.c:2642:(snd_pcm_open_noupdate) Unknown PCM cards.pcm.rear ALSA lib pcm.c:2642:(snd_pcm_open_noupdate) Unknown PCM cards.pcm.center_lfe <ALSA lib pcm.c:2642:(snd_pcm_open_noupdate) Unknown PCM cards.pcm.side <ALSA lib pcm_route.c:869:(find_matching_chmap) Found no matching channel map <ALSA lib pcm_oss.c:377:(_snd_pcm_oss_open) Unknown field port <ALSA lib pcm_oss.c:377:(_snd_pcm_oss_open) Unknown field port ALSA lib pcm_usb_stream.c:486:(_snd_pcm_usb_stream_open) Invalid type for card ALSA lib pcm_usb_stream.c:486:(_snd_pcm_usb_stream_open) Invalid type for card <ALSA lib pcm_dmix.c:1089:(snd_pcm_dmix_open) unable to open slave An unhandled exception occurred at $00007FDE64178623: EAccessViolation: Access violation $00007FDE64178623

I read the other issues like #396 , recommending for a ./configure --without-portaudio to built USDX, but the result is

configure: WARNING: unrecognized options: --without-portaudio [...] configure: error:

Alternatively, you may set --with-portaudio=nocheck and the environment variables portaudio_[...] (see configure --help)

When I configure with debug option and compile it, the start is successfull (I did not test whether the microphones work in the end):

[...] ERROR: no texture type for ScoreDownloadPopupProgressWeb found. [TTheme.ThemeLoadStatic] ALSA lib pcm_dmix.c:1089:(snd_pcm_dmix_open) unable to open slave ALSA lib pcm.c:2642:(snd_pcm_open_noupdate) Unknown PCM cards.pcm.rear ALSA lib pcm.c:2642:(snd_pcm_open_noupdate) Unknown PCM cards.pcm.center_lfe ALSA lib pcm.c:2642:(snd_pcm_open_noupdate) Unknown PCM cards.pcm.side ALSA lib pcm_route.c:869:(find_matching_chmap) Found no matching channel map ALSA lib pcm_oss.c:377:(_snd_pcm_oss_open) Unknown field port ALSA lib pcm_oss.c:377:(_snd_pcm_oss_open) Unknown field port ALSA lib pcm_usb_stream.c:486:(_snd_pcm_usb_stream_open) Invalid type for card ALSA lib pcm_usb_stream.c:486:(_snd_pcm_usb_stream_open) Invalid type for card ALSA lib pcm_dmix.c:1089:(snd_pcm_dmix_open) unable to open slave ERROR: Image-File does not exist "" [LoadImage] ERROR: Could not load texture: "" with type "Transparent" [TTextureUnit.LoadTexture] [...]

s09bQ5 commented 3 years ago

configure: WARNING: unrecognized options: --without-portaudio

Use the master branch, not the last release.