Details
-
Suggestion
-
Resolution: Done
-
Not Evaluated
-
None
-
None
-
Linux, especially embedded on a not-state-of-the-art hardware.
Description
QAlsaAudioDeviceInfo::availableDevices(...) in QAlsaAudioOutput::open() takes a non-negligible time to complete, especially on an embedded system. Do we really need to check if the opened device is listed in it, or could we just trust the caller and / or the fact that the subsequent calls to snd_pcm_open() will fail (although it will try 5 times)?
I raise this issue / suggestion because, for example, the SoundEffect QML object opens the device each time it plays a sound, and this delay could increase the response time, mostly when there are more than one sound playing at the same time. Moreover, this delay sits in the main / gfx thread, and that slows down graphics (re-) drawing.
The fix one immediately thinks of is the most obvious: comment or remove the lines testing for this (lines 319 / 320 of the file).
Attachments
For Gerrit Dashboard: QTBUG-63007 | ||||||
---|---|---|---|---|---|---|
# | Subject | Branch | Project | Status | CR | V |
213442,4 | ALSA: Don't check the device name in open() | 5.10 | qt/qtmultimedia | Status: MERGED | +2 | 0 |