tlecomte / friture

Real-time audio visualizations (spectrum, spectrogram, etc.)
http://friture.org
GNU General Public License v3.0
916 stars 159 forks source link

Pulse memblockq assertion failure on start when microphone is plugged in, Ubuntu 20.04 #188

Open baluke opened 3 years ago

baluke commented 3 years ago

$ ./friture-0.47-20210725.AppImage (Many GTK-WARNING Theme parsing error lines omitted) Assertion 'uchunk->index % bq->base == 0' failed at pulsecore/memblockq.c:289, function pa_memblockq_push(). Aborting. zsh: abort (core dumped) ./friture-0.47-20210725.AppImage

Platform: Ubuntu 20.04.2 LTS, x86_64. Package where the assert fails: pulseaudio/focal-updates,now 1:13.99.1-1ubuntu3.11 amd64 [installed] Microphone: Elgato Wave:3 . Driver: snd-usb-audio, kernel 5.4.0-80-generic

The same error occurs when I compile the latest version of Friture from source (tag v0.47).

Both the AppImage and the source version launch when I unplug my microphone. The source version then runs stably. The appImage runs for several seconds, then fails with a core dump but no other message/assertion: zsh: segmentation fault (core dumped) ./friture-0.47-20210725.AppImage

When I plug the microphone back in and set it to a "Mono Input" profile in pulseaudio, this problem reproduces.

I'm reporting this as a Friture bug as other programs, such as audacity, successfully record from this microphone.

altineller commented 1 year ago

Hello @baluke I have experienced the same problem when I wanted to try friture with 2nd microphone. It works ok for the first microphone, but when there is a second microphone, it has a problem with bq->base being greater than 0. This is probably a bug, and can be solved, but meanwhile, maybe you can disable your internal soundcard, and use the aux sound card as your main sound card.