Fedora 34 VirtualBox: Mixxx stalls during start

Bug #1920083 reported by Daniel Schürmann
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
Mixxx
Invalid
Critical
Unassigned

Bug Description

I have installed a fresh Fedora 34 + mixxx 2.3

After the fist start Mixxx stalls during start up when initializing the Sound hardware.
It defaults to Jack.

Now, after restarting the machine, it starts up, but there is no transport with the default Jack setting.

When I select the ALSA API Mixxx immediately stalls.

When I edit the config file Manually, the ALSA devices are enumerated.
But now Mixxx stalls when pressing OK after selecting the internal sound card.

I can select the pipewire ALSA device Unfortunately this has no transport.

Other media players are working.

Revision history for this message
Jan Holthuis (holthuis-jan) wrote :

What is the output of pw-jack jack_lsp? Maybe the device name is long (https://gitlab.freedesktop.org/pipewire/pipewire/-/issues/788) or contains special characters (https://github.com/PortAudio/portaudio/pull/504)?

Be (be.ing)
Changed in mixxx:
importance: Undecided → Critical
Revision history for this message
Be (be.ing) wrote :

This is why it is so urgent for PortAudio to merge and release https://github.com/PortAudio/portaudio/pull/504

Revision history for this message
Jan Holthuis (holthuis-jan) wrote :

Let's not jump to conclusions before daschuer gavd more info.

Changed in mixxx:
status: New → Incomplete
Revision history for this message
Be (be.ing) wrote :

I cannot confirm this in a fresh Fedora 34 VM. All I did was install Mixxx and run it from GNOME Shell applications launcher. It automatically just worked with the JACK PortAudio backend and PipeWire.

Revision history for this message
Be (be.ing) wrote :

My RME Babyface Pro is however not available as an option with the JACK sound API in Mixxx because of the PortAudio bug. As expected, my Babyface Pro only works for the first 2 channels with PortAudio's ALSA backend due to https://github.com/PortAudio/portaudio/issues/353

Revision history for this message
Be (be.ing) wrote :

The virtualized HDA Intel audio interface just works with ALSA as well, but of course this grabs exclusive access to the device and Rhythmbox does not work until Mixxx is closed. With the JACK default it finally Just Works.

Revision history for this message
Be (be.ing) wrote :

There is no need to suspend PipeWire to use the PortAudio ALSA backend. PipeWire seems to yield the ALSA device automatically and use it again when Mixxx quits or is reconfigured. There is no need for anything like pasuspender. \o/

Revision history for this message
Daniel Schürmann (daschuer) wrote :

> What is the output of pw-jack jack_lsp? Maybe the device name is long

daniel@fedora ~]$ pw-jack jack_lsp
/usr/bin/pw-jack: Zeile 74: exec: jack_lsp: Nicht gefunden.

Revision history for this message
Daniel Schürmann (daschuer) wrote :

The very first start stalls with theses last log lines:

Warning [Main]: Could not read sampler bank file "/home/daniel/.mixxx/samplers.xml"
Warning [Controller]: USB permissions problem (or device error.) Your account needs write access to USB HID controllers.

Even though it hangs within the audio stack. This made me first digging into the other issues.
How can we improve the situation? Maybe a Info that the audio is initialized now, that is printed on any debug level?

I just did the following:

* Restart system
* Start mixxx
* ALSA pipewire was selected
* not transport
* select intel 82801AA-ICH: - (hw:0,0)
* OK
* Mixxx stalls
* Force exit (system pop up)
* Start Mixxx again
* same as before
* switch to jack
* select "Build-In Audio Analog Stereo"
* Mixxx stalls
* Wait looong > 1 min
* Preferenced diaspear
* No transport
* kill Mixxx
* Start firefox + youtube
* Play a video including sound

This was done with a fresh install + the recommended packages from rpmFusion free + nonFree

Revision history for this message
Be (be.ing) wrote :

The jack_lsp tool is provided by the jack-audio-connection-kit-example-clients package which depends on jack-audio-connection-kit which conflicts with pipewire-jack-audio-connection-kit so that can't be used to test PipeWire's JACK reimplementation from Fedora packages.

Revision history for this message
Daniel Schürmann (daschuer) wrote :

2.3.0-beta (build beta r20210126gitf009e06)

Revision history for this message
Be (be.ing) wrote :

I cannot reproduce the issue you encountered. Maybe it is an artifact of your VM setup. If you want to keep testing, you could run Fedora 34 from a live USB drive to eliminate the complexity of using a VM.

Revision history for this message
Uwe Klotz (uklotzde-deactivatedaccount) wrote :

Please report which additional runtime dependencies are needed for Fedora 34 and PipeWire.

https://github.com/rpmfusion/mixxx/blob/e14dc422bf9027b3c47bb1abf88e81be20355ea5/mixxx.spec#L88

We might also need to patch the desktop launcher and remove pasuspender.

Revision history for this message
Daniel Schürmann (daschuer) wrote :

Started over with a fresh install and the new shell command for installing Mixxx, and no external sound card. No updates installed.
Same results.

@Be can you confirm this?

Revision history for this message
Be (be.ing) wrote :

I do not think the mixxx.desktop file should be modified. It runs
sh -c "pasuspender -- mixxx -platform xcb || mixxx -platform xcb"
so it falls back to running mixxx by itself if pasuspender is not installed. If we removed the pasuspender call, if the user chooses to switch to PulseAudio instead of PipeWire for whatever reason, Mixxx would not be able to access the ALSA devices.

Revision history for this message
Be (be.ing) wrote :

> Started over with a fresh install

In a VM? Please try from a live USB drive.

Revision history for this message
Daniel Schürmann (daschuer) wrote :

I have installed Fedora 34 on a live stick now and I can confirm that the issues are gone now.

I can play via PipeWire and ALSA. Piepwire frees the device up if Firefox nor any other application is not playing anything.

summary: - Fedora 34: Mixxx stalls during start
+ Fedora 34 VirtualBox: Mixxx stalls during start
Revision history for this message
Be (be.ing) wrote :

I am closing this as Invalid because the problem here was VirtualBox.

Changed in mixxx:
status: Incomplete → Invalid
Revision history for this message
Swiftb0y (swiftb0y) wrote :

Mixxx now uses GitHub for bug tracking. This bug has been migrated to:
https://github.com/mixxxdj/mixxx/issues/10357

lock status: Metadata changes locked and limited to project staff
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.