View Issue Details

IDProjectCategoryView StatusLast Update
0003989ardourbugspublic2020-04-19 20:15
Reporteradi Assigned Tocth103  
PrioritynormalSeveritycrashReproducibilityalways
Status closedResolutionno change required 
Product Version3.0-alpha4 
Target Version3.0-beta1 
Summary0003989: External MIDI keyboard crashes ardour
DescriptionHi!

When switching (recalling) a preset on my external Korg microX, ardour crashes with the following message:


ardour-3.0: ../libs/evoral/evoral/midi_util.h:92: int Evoral::midi_event_size(const uint8_t*): Assertion `(buffer[end] & 0x80) == 0' failed.
Aborted

Version is Ardour3.0alpha4 (built using ['9362'] and GCC version 4.5.2)

jack_midi_dump looks like this:

[more f8 events before]
0: f8
0: f8
0: f8
0: f8
0: f8
0: f8
[now switching the preset]
0: b0 0 3f control change (channel 0): controller 0, value 63
0: b0 20 3 control change (channel 0): controller 32, value 3
0: c0 11
0: 0 0 f7
0: f8
0: f8
0: f8
0: f8
[more f8 events afterwards]

I've also attached the raw MIDI capture done with amidi, JFTR.


Cheers
TagsNo tags attached.

Activities

2011-04-17 22:33

 

ardour.crash (713 bytes)

paul

2011-06-11 17:12

administrator   ~0010855

adi: is this still an issue with alpha5?

adi

2011-06-12 13:38

reporter   ~0010868

Just checked with the alpha5 tarball from the ardour website: Yep, it's exactly the same behaviour.

adi

2011-06-14 19:54

reporter   ~0010880

(gdb) bt
#0 0xffffe424 in __kernel_vsyscall ()
0000001 0xb4593911 in raise (sig=6) at ../nptl/sysdeps/unix/sysv/linux/raise.c:64
#2 0xb4596d42 in abort () at abort.c:92
#3 0xb458cb28 in __assert_fail (assertion=0xb7314506 "(buffer[end] & 0x80) == 0",
    file=0xb73144e4 "../libs/evoral/evoral/midi_util.h", line=92,
    function=0xb73148c0 "int Evoral::midi_event_size(const uint8_t*)") at assert.c:81
0000004 0xb6d22039 in Evoral::midi_event_size (buffer=0xaca31ca0 "\360B0zI") at ../libs/evoral/evoral/midi_util.h:92
0000005 0xb6d220c9 in Evoral::midi_event_is_valid (buffer=0xaca31ca0 "\360B0zI", len=256)
    at ../libs/evoral/evoral/midi_util.h:111
#6 0xb6d22ee3 in ARDOUR::MidiBuffer::push_back (this=0xb232fa98, ev=...) at ../libs/ardour/midi_buffer.cc:212
#7 0xb6d70b19 in ARDOUR::MidiPort::get_midi_buffer (this=0xa8f0018, nframes=1024) at ../libs/ardour/midi_port.cc:89
0000008 0xb6d714b8 in ARDOUR::MidiPort::get_buffer (this=0xa8f0018, nframes=1024) at ../libs/ardour/ardour/midi_port.h:50
0000009 0xb6e74f60 in ARDOUR::Route::passthru (this=0xa8c5490, start_frame=0, end_frame=1024, nframes=1024, declick=0)
    at ../libs/ardour/route.cc:546
0000010 0xb6fe7607 in ARDOUR::Track::no_roll (this=0xa8c5490, nframes=1024, start_frame=0, end_frame=1024,
    session_state_changing=false, can_record=false) at ../libs/ardour/track.cc:278
0000011 0xb6d89eb3 in ARDOUR::MidiTrack::no_roll (this=0xa8c5490, nframes=1024, start_frame=0, end_frame=1024,
    state_changing=false, can_record=false, rec_monitors_input=false) at ../libs/ardour/midi_track.cc:392
0000012 0xb6cd3b08 in ARDOUR::Graph::process_one_route (this=0xa62b968, route=0xa8c5490) at ../libs/ardour/graph.cc:607
0000013 0xb6cd8aff in ARDOUR::GraphNode::process (this=0xa8c555c) at ../libs/ardour/graphnode.cc:69
0000014 0xb6cd20b6 in ARDOUR::Graph::run_one (this=0xa62b968) at ../libs/ardour/graph.cc:406
#15 0xb6cd25f5 in ARDOUR::Graph::main_thread (this=0xa62b968) at ../libs/ardour/graph.cc:479
0000016 0xb6cd8009 in boost::_mfi::mf0<void, ARDOUR::Graph>::operator()(ARDOUR::Graph*) const ()
   from /tmp/Ardour_32bit-3.0alpha6_9711-dbg/Ardour_x86-3.0alpha6_9711-dbg/lib/libardour.so.3
#17 0xb6cd7aac in void boost::_bi::list1<boost::_bi::value<ARDOUR::Graph*> >::operator()<boost::_mfi::mf0<void, ARDOUR::Graph>, boost::_bi::list0>(boost::_bi::type<void>, boost::_mfi::mf0<void, ARDOUR::Graph>&, boost::_bi::list0&, int) ()
   from /tmp/Ardour_32bit-3.0alpha6_9711-dbg/Ardour_x86-3.0alpha6_9711-dbg/lib/libardour.so.3
0000018 0xb6cd7676 in boost::_bi::bind_t<void, boost::_mfi::mf0<void, ARDOUR::Graph>, boost::_bi::list1<boost::_bi::value<ARDOUR::Graph*> > >::operator()() () from /tmp/Ardour_32bit-3.0alpha6_9711-dbg/Ardour_x86-3.0alpha6_9711-dbg/lib/libardour.so.3
0000019 0xb6cd71d0 in boost::detail::function::void_function_obj_invoker0<boost::_bi::bind_t<void, boost::_mfi::mf0<void, ARDOUR::Graph>, boost::_bi::list1<boost::_bi::value<ARDOUR::Graph*> > >, void>::invoke(boost::detail::function::function_buffer&) ()
   from /tmp/Ardour_32bit-3.0alpha6_9711-dbg/Ardour_x86-3.0alpha6_9711-dbg/lib/libardour.so.3
0000020 0x08b4cd85 in boost::function0<void>::operator()() const ()
0000021 0xb6b67279 in ARDOUR::AudioEngine::_start_process_thread (arg=0xa62c448) at ../libs/ardour/audioengine.cc:1525
0000022 0xb5869c39 in start_thread (arg=0xb1aeeb70) at pthread_create.c:304
0000023 0xb463593e in clone () at ../sysdeps/unix/sysv/linux/i386/clone.S:130

adi

2011-06-14 21:14

reporter   ~0010881

24:0 Clock
 24:0 Clock
 24:0 Clock
 24:0 Clock
 24:0 Control change 0, controller 0, value 63
 24:0 Control change 0, controller 32, value 1
 24:0 Program change 0, program 25
 24:0 System exclusive F0 42 30 7A 49 00 00 57 49 44 45 20 53 74 00 72 69 6E 67 50 61 64 00 20 20 00 50 0A 00 00 08 00 03 00 76 64 00 00 00 05 00 64 00 08 50 00 00 00 40 00 40 7F 2B 08 00 1E 00 00 64 01 00 3C 11 19 00 00 00 64 48 00 00 33 50 00 00 1E 0F 3C 00 14 00 00 64 00 00 14 00 13 14 00 00 00 00 35 00 50 00 00 7F 7F 10 7F 00 10 05 0B 03 1D 4B 05 00 00 00 10 00 00 78 06 08 3E 04 64 00 00 02 7F 40 00 7F 01 3B 04 64 00 00 00 0B 7F 00 7F 01 03 20 00 00 00 01 03 01 02 00 03 04 43 03 10 00 00 02 64 67 00 00 00 00 01 60 00 00 5B 68 02 7F 7F 02 00 7F 7F 00 00 7F 01 00 00 00 03 01 10 00 00 02 64 67 00 00 00 00 40 60 00 00 5B 68 02 7F 7F 02 10 7F 7F 00 00 7F 01 00 00 00 29 02 10 00 00 02 64 67 00 00 00 00 7F 60 14 1E 5B 68 01 7F 7F 02 20 7F 7F 00 00 7F 01 00 00 00 00 00 30 00 00 02 7F
 24:0 System exclusive 67 00 00 00 00 40 60 00 00 5B 68 01 7F 7F 02 00 7F 7F 00 00 7F 01 00 00 00 00 00 30 00 00 02 7F 67 00 00 00 00 40 60 00 00 5B 68 01 7F 7F 02 00 7F 7F 00 00 7F 01 00 00 00 00 00 30 00 00 02 7F 67 00 00 00 00 40 60 00 00 5B 68 01 7F 7F 02 00 7F 7F 00 00 7F 01 00 00 00 00 00 30 00 00 02 7F 67 00 00 00 00 40 60 00 00 5B 68 01 7F 7F 02 00 7F 7F 00 00 7F 01 00 00 00 00 00 30 00 00 02 7F 67 00 00 00 00 40 60 00 00 5B 68 01 7F 7F 02 00 7F 7F 00 00 7F 01 00 00 00 00 00 00 00 01 00 00 00 00 02 00 00 00 00 04 00 00 00 05 00 00 00 00 07 00 00 00 00 00 00 00 00 01 00 00 00 02 00 00 00 00 04 00 00 00 00 05 00 00 00 07 00 00 00 00 00 00 00 00 01 00 00 00 00 02 00 00 00 04 00 00 00 00 05 00 00 00 00 07 00 00 00 00 00 00 00 00 01 00 00 00 02 00 00 00 00 04 00 00 00 05 00 00
 24:0 System exclusive 00 00 07 00 00 00 00 00 00 00 00 01 00 00 00 00 02 00 00 00 04 00 00 00 00 05 00 00 00 07 00 00 00 00 00 00 00 00 00 01 00 00 00 02 00 00 00 00 04 00 00 00 05 00 00 00 00 07 00 00 00 00 00 00 00 00 01 00 00 00 00 02 00 00 00 04 00 00 00 00 05 00 00 00 07 00 00 00 00 00 00 00 00 01 00 00 00 00 02 00 00 00 00 04 00 00 00 05 00 00 00 00 07 00 00 00 F7
 24:0 Clock
 24:0 Clock
 24:0 Clock
 24:0 Clock
 24:0 Clock

adi

2011-06-14 21:27

reporter   ~0010882

aseqdump:

 24:0 Clock
 24:0 Clock
 24:0 Clock
 24:0 Clock
 24:0 Clock
 24:0 Control change 0, controller 0, value 63
 24:0 Control change 0, controller 32, value 1
 24:0 Program change 0, program 92
 24:0 System exclusive F0 42 30 7A 49 00 00 2A 50 61 64 20 54 72 00 6F 70 6F 6C 69 73 2A 08 20 20 19 67 14 32 08 00 00 00 00 64 00 00 00 00 00 00 00 00 04 50 00 40 00 40 00 29 2D 49 35 24 2F 3A 1C 10 32 09 32 4C 20 72 05 5D 77 12 0E 02 2E 50 00 00 19 1E 3C 10 14 32 50 64 7C 00 4B 00 13 4B 00 00 00 00 36 00 50 00 00 7F 7F 10 7F 00 0E 08 24 03 53 5B 05 00 00 00 10 00 00 50 03 00 06 05 64 4E 00 01 7F 00 00 7F 01 00 00 00 01 00 00 00 7F 00 7F 01 08 20 00 00 00 01 00 07 0A 00 03 04 39 04 10 00 00 02 7F 67 00 00 00 00 26 60 00 00 5B 68 02 7F 7D 02 08 7F 7F 00 00 7F 01 00 00 00 59 05 10 00 00 06 58 67 74 00 00 00 5A 60 00 00 5B 68 02 7F 7D 02 00 7F 7F 00 00 7F 01 00 00 00 49 02 10 00 00 02 37 67 00 00 00 00 40 60 7F 7F 5B 68 01 7F 7E 02 14 7F 7F 00 00 7F 01 00 00 00 00 00 30 00 00 02 7F
 24:0 System exclusive 67 00 00 00 00 40 60 00 00 5B 68 01 7F 7F 02 00 7F 7F 00 00 7F 01 00 00 00 00 00 30 00 00 02 7F 67 00 00 00 00 40 60 00 00 5B 68 01 7F 7F 02 00 7F 7F 00 00 7F 01 00 00 00 00 00 30 00 00 02 7F 67 00 00 00 00 40 60 00 00 5B 68 01 7F 7F 02 00 7F 7F 00 00 7F 01 00 00 00 00 00 30 00 00 02 7F 67 00 00 00 00 40 60 00 00 5B 68 01 7F 7F 02 00 7F 7F 00 00 7F 01 00 00 00 00 00 30 00 00 02 7F 67 00 00 00 00 40 60 00 00 5B 68 01 7F 7F 02 00 7F 7F 00 00 7F 01 00 00 00 00 00 00 00 01 00 00 00 00 02 00 00 00 00 04 00 00 00 05 00 00 00 00 07 00 00 00 00 00 00 00 00 01 00 00 00 02 00 00 00 00 04 00 00 00 00 05 00 00 00 07 00 00 00 00 00 00 00 00 01 00 00 00 00 02 00 00 00 04 00 00 00 00 05 00 00 00 00 07 00 00 00 00 00 00 00 00 01 00 00 00 02 00 00 00 00 04 00 00 00 05 00 00
 24:0 System exclusive 00 00 07 00 00 00 00 00 00 00 00 01 00 00 00 00 02 00 00 00 04 00 00 00 00 05 00 00 00 07 00 00 00 00 00 00 00 00 00 01 00 00 00 02 00 00 00 00 04 00 00 00 05 00 00 00 00 07 00 00 00 00 00 00 00 00 01 00 00 00 00 02 00 00 00 04 00 00 00 00 05 00 00 00 07 00 00 00 00 00 00 00 00 01 00 00 00 00 02 00 00 00 00 04 00 00 00 05 00 00 00 00 07 00 00 00 F7
 24:0 Clock
 24:0 Clock
 24:0 Clock
 24:0 Clock
 24:0 Clock


jack_midi_dump:

204: f8
142: f8
126: f8
107: f8
91: f8
75: f8
59: f8
1019: f8
427: b0 0 3f control change (channel 0): controller 0, value 63
428: b0 20 1 control change (channel 0): controller 32, value 1
428: c0 5c
765: f0 42 30 7a 49 0 0 2a 50 61 64 20 54 72 0 6f 70 6f 6c 69 73 2a 8 20 20 19 67 14 32 8 0 0 0 0 64 0 0 0 0 0 0 0 0 4 50 0 40 0 40 0 29 2d 49 35 24 2f 3a 1c 10 32 9 32 4c 20 72 5 5d 77 12 e 2 2e 50 0 0 19 1e 3c 10 14 32 50 64 7c 0 4b 0 13 4b 0 0 0 0 36 0 50 0 0 7f 7f 10 7f 0 e 8 24 3 53 5b 5 0 0 0 10 0 0 50 3 0 6 5 64 4e 0 1 7f 0 0 7f 1 0 0 0 1 0 0 0 7f 0 7f 1 8 20 0 0 0 1 0 7 a 0 3 4 39 4 10 0 0 2 7f 67 0 0 0 0 26 60 0 0 5b 68 2 7f 7d 2 8 7f 7f 0 0 7f 1 0 0 0 59 5 10 0 0 6 58 67 74 0 0 0 5a 60 0 0 5b 68 2 7f 7d 2 0 7f 7f 0 0 7f 1 0 0 0 49 2 10 0 0 2 37 67 0 0 0 0 40 60 7f 7f 5b 68 1 7f 7e 2 14 7f 7f 0 0 7f 1 0 0 0 0 0 30 0 0 2 7f
28: 67 0 0 0 0 40 60 0 0 5b 68 1 7f 7f 2 0 7f 7f 0 0 7f 1 0 0 0 0 0 30 0 0 2 7f 67 0 0 0 0 40 60 0 0 5b 68 1 7f 7f 2 0 7f 7f 0 0 7f 1 0 0 0 0 0 30 0 0 2 7f 67 0 0 0 0 40 60 0 0 5b 68 1 7f 7f 2 0 7f 7f 0 0 7f 1 0 0 0 0 0 30 0 0 2 7f 67 0 0 0 0 40 60 0 0 5b 68 1 7f 7f 2 0 7f 7f 0 0 7f 1 0 0 0 0 0 30 0 0 2 7f 67 0 0 0 0 40 60 0 0 5b 68 1 7f 7f 2 0 7f 7f 0 0 7f 1 0 0 0 0 0 0 0 1 0 0 0 0 2 0 0 0 0 4 0 0 0 5 0 0 0 0 7 0 0 0 0 0 0 0 0 1 0 0 0 2 0 0 0 0 4 0 0 0 0 5 0 0 0 7 0 0 0 0 0 0 0 0 1 0 0 0 0 2 0 0 0 4 0 0 0 0 5 0 0 0 0 7 0 0 0 0 0 0 0 0 1 0 0 0 2 0 0 0 0 4 0 0 0 5 0 0
172: 0 0 7 0 0 0 0 0 0 0 0 1 0 0 0 0 2 0 0 0 4 0 0 0 0 5 0 0 0 7 0 0 0 0 0 0 0 0 0 1 0 0 0 2 0 0 0 0 4 0 0 0 5 0 0 0 0 7 0 0 0 0 0 0 0 0 1 0 0 0 0 2 0 0 0 4 0 0 0 0 5 0 0 0 7 0 0 0 0 0 0 0 0 1 0 0 0 0 2 0 0 0 0 4 0 0 0 5 0 0 0 0 7 0 0 0 f7
940: f8
381: f8
844: f8
332: f8

paul

2011-06-14 22:01

administrator   ~0010883

after more testing and discussion on IRC, we've established that the problem here is that neither a2jmidid nor the -X seq backend correctly handles the way that the ALSA sequencer breaks apart sysex messages longer than 256 kB. so the fix for this is in those two blocks of code, rather than Ardour.

system

2020-04-19 20:15

developer   ~0022550

Issue has been closed automatically, by Trigger Close Plugin.
Feel free to re-open with additional information if you think the issue is not resolved.

Issue History

Date Modified Username Field Change
2011-04-17 22:33 adi New Issue
2011-04-17 22:33 adi File Added: ardour.crash
2011-04-17 23:12 cth103 cost => 0.00
2011-04-17 23:12 cth103 Target Version => 3.0-beta1
2011-06-11 17:12 paul Note Added: 0010855
2011-06-12 13:38 adi Note Added: 0010868
2011-06-14 19:54 adi Note Added: 0010880
2011-06-14 21:14 adi Note Added: 0010881
2011-06-14 21:27 adi Note Added: 0010882
2011-06-14 22:01 paul Note Added: 0010883
2011-06-14 23:08 cth103 Status new => resolved
2011-06-14 23:08 cth103 Resolution open => no change required
2011-06-14 23:08 cth103 Assigned To => cth103
2020-04-19 20:15 system Note Added: 0022550
2020-04-19 20:15 system Status resolved => closed