newsAdvanced Gtk+ Sequencer - News: Got segfault after a while of recording

 
 
Latest News
Advanced Gtk+ Sequencer version 6.5.x posted by jkraehemann, Sun 11 Feb 2024 05:06:15 PM UTC
Advanced Gtk+ Sequencer version 6.3.5 posted by jkraehemann, Fri 19 Jan 2024 11:53:24 AM UTC
Advanced Gtk+ Sequencer v6.1.0 released posted by jkraehemann, Thu 28 Sep 2023 04:55:19 AM UTC
Advanced Gtk+ Sequencer v6.0.0 released posted by jkraehemann, Mon 21 Aug 2023 11:48:52 AM UTC
Advanced Gtk+ Sequencer v5.5.0 released posted by jkraehemann, Sat 05 Aug 2023 10:21:52 AM UTC

Got segfault after a while of recording

Item posted by Joël Krähemann <jkraehemann> on Thu 20 Sep 2018 03:04:31 PM UTC.

Capturing sound works good. However gsequencer crashed once, from my `journalctl -b`:


Sep 20 14:22:27 deb-halen kernel: gsequencer[3841]: segfault at 7f44548ba000 ip 00007f44c261a8cb sp 00007f447a755528 error 6 in libags_audio.so.2.0.0[7f44c2600000+133000]
Sep 20 14:22:27 deb-halen kernel: Code: 29 f5 48 8d 34 09 48 89 44 24 b0 48 89 d1 48 89 74 24 a8 4d 01 ed 48 89 f8 31 f6 0f 1f 40 00 0f b7 11 48 8b 7c 24 b8 83 c6 08 <66> 01 10 42 0f b7 14 21 66 42 01 14 10 48 8b 54 24 c0 0f b7 14 11


I think it is a bad file descriptor. Since the scheduling of IO makes trouble. In GSequencer you usually have this order:

  1. ... idle
  2. read input from soundcard
  3. compute audio data
  4. write output to soundcard
  5. idle ...


The problem now, is there is no hint where in attacks in the order. Ideally it would start during idle but there is no guarantee to it. One more problem is the library could yet have been starting playback and then you decide to do capture sound. One more is communication between GUI and audio layer happens async and non-blocking.

Anyhow, even as it would do proper order. Reading soundcard first is believed to be bad for ALSA because it expects output.

You should think about it. I tell you as figured out a solution.



by Joël

 

Back to the top

Powered by Savane 3.13-3230.
Corresponding source code