jack_mixer
jack_mixer copied to clipboard
Occasional "Segmentation fault" when jackd runs at fps<1024
Goodday dear jack_mixer maintainer(s).
Help?! I'm using jack_mixer in an application where low-latency is a must. Platform: Ubuntu 20.04.5 LTS FocalFossa. Jack_mixer: 17. Hardware: Lenovo Tiny M92P (Intel(R) Core(TM) i5-3470T CPU @ 2.90GHz), 4GB RAM, 128GB SSD.
Once every 10 - 15 times jack_mixer is invoked with jackd configured for any value less than fps=1024 jack_mixer crashes upon start-up. When invoked
- without a configuration-file (so without the -c <filename.xml>) or
- with Jackd running at fps >= 1024 all works well.
When invoked with the "-d" option, the debug-trail shows the following upon an occurring crash: "** (jack_mixer:27544): CRITICAL **: 11:11:20.025: g_type_info_get_tag: assertion 'GI_IS_TYPE_INFO (info)' failed /usr/lib/python3.8/site-packages/jack_mixer/channel.py:207: Warning: cannot retrieve class for invalid (unclassed) type '(null)' self.volume_digits = Gtk.Entry()" followed by "./cycle_jack_mixer.sh: line 16: 27544 Segmentation fault (core dumped) jack_mixer -d -c $HOME/.local/share/jack_mixer/2ch-mixer.xml"
The problem can be easily reproduced and does not seem to be related to the size of the mixer in terms of number of sliders and/or controls. To reproduce this issue I wrote a small bash- script:
musician@Testbox2:~$ cat cycle_jack_mixer.sh #!/bin/bash
jackd -ddummy -p512 -r48000 & sleep 3
jack_mixer & sleep 2 while [ $? = 0 ] do mixer_pid=$(pgrep python3) kill $mixer_pid
jack_mixer -d -c $HOME/.local/share/jack_mixer/2ch-mixer.xml & sleep 2 done
The .xml config-file used: musician@Testbox2:~$ cat 2ch-mixer.xml
<jack_mixer geometry="1340x420" paned_position="1219" visible="True"> <input_channel name="RP1" type="stereo" direct_output="False" volume="0.000000" balance="0.000000" wide="True" meter_prefader="False" out_mute="False" volume_midi_cc="1" balance_midi_cc="21" mute_midi_cc="31" solo_midi_cc="41"/> <input_channel name="RP2" type="stereo" direct_output="False" volume="0.000000" balance="0.000000" wide="True" meter_prefader="False" out_mute="False" volume_midi_cc="2" balance_midi_cc="22" mute_midi_cc="32" solo_midi_cc="42"/> <output_channel name="Headphones" type="stereo" solo_buttons="true" color="rgb(246,206,35)" volume="0.000000" balance="0.000000" wide="True" meter_prefader="False" out_mute="False" volume_midi_cc="0" balance_midi_cc="14" mute_midi_cc="12"/> <gui_factory confirm-quit="False" default_meter_scale="K20" default_project_path="" default_slider_scale="linear_30dB" midi_behavior_mode="0" use_custom_widgets="False" vumeter_color="#ccb300" vumeter_color_scheme="default" auto_reset_peak_meters="False" auto_reset_peak_meters_time_seconds="2.0" meter_refresh_period_milliseconds="33"/> </jack_mixer>
Please note: the issue does not seem to be related to this specific .xml file though.
Any help appreciated!
Christiaan PA3FUN
Addendum February 7: Jack_mix_box, build from the same sources (v 17) using the "-Dgui=disabled" option, shows the same behavior. It too crashes once every 10 - 20 times it is invoked when jackd running at 64fps. With jackd running at 1024 it occasionally crashes too, but apparently less frequent.