View Issue Details
ID | Project | Category | View Status | Date Submitted | Last Update |
---|---|---|---|---|---|
0009872 | ardour | bugs | public | 2024-12-28 17:03 | 2024-12-29 17:31 |
Reporter | florianb | Assigned To | |||
Priority | normal | Severity | major | Reproducibility | always |
Status | new | Resolution | open | ||
Platform | PC x64 | OS | Slackware64 15.0 | OS Version | 6.7.8-preempt |
Product Version | 8.10 | ||||
Summary | 0009872: No MIDI data makes it through 2 tracks routed from one to another | ||||
Description | When external MIDI data (e.g. physical MIDI keyboard) arrives to a MIDI track, if that track is then connected to a second MIDI track, nothing makes it to the second one. See screenshot attached, we can see that: * "MIDI_KBD" track receives data from a midisport interface (I have a piano there) * Its vu-meter metering point is "Out" so we know by that vu-meter that the MIDI data makes it out of that first track. * "piano" track has its MIDI input connected to the first track ("MIDI_KBD"), and MIDI is green (active). * The metering point of that "piano" track is "In", yet nothing on the vu-meter (despite correct In/Disk/Rec states). NOTES: * If the second "track" is a MIDI *BUS* (instead of a track) it works. * if the first one is a BUS while the second is a track, it also fails. * Please don't get distracted by the fact that in my screenshot, "MIDI_KBD" goes to 2 tracks ("piano" and "choir_eric"). I also tried with a single track and it also fails. Thanks! | ||||
Steps To Reproduce | Create 2 MIDI tracks (Track1, Track2). Connect some MIDI keyboard to Track1's input. Connect Track1's output to Track2. Make sure In/Disk/Rec and metering points all make sense. Nothing from the MIDI keybaord makes it to Track2. | ||||
Additional Information | I'm using rev 8.5-4-g44610c7877, but I assume nothing about that has changed since. But let me know if you cannot reproduce I'll go install the latest version to confirm. | ||||
Tags | Midi | ||||
|
|
|
The project directory of this session to help reproduce (3.2MB extracted - No Audio/Midi files). |
|
More info I discovered: * You absolutely need my project (above) to reproduce. * If you create 2 NEW midi tracks in that project and connect them to each other the same way described earlier, they work... * The problem is with the tracks "piano" and "choir_eric". If the input of these tracks comes from ardour, nothing comes in. If it comes from the outside (e.g. midisport) then it works. * Trying to create a new MIDI track to reproduce the same scenario as "piano" or "choir_eric" (same connections, same instrument, etc) works. So now the question is: What is so special about MIDI tracks "piano" and "choir_eric" that makes them different from a newly created track? |
|
Confirmed using Ardour 8.10 and the session posted above, both using pipewire-jack and jack2. Before that, I had tested with a news ession of just 3 midi tracks without any plugins, and got the MIDI notes passing through just fine (this was created and run using a self-compiled Ardour 9 from current github, and again, both with pipewire-jack and jack2). In the latter case, I didn't even engage any of the "rec-enable" or "In" buttons. |
|
First you need to fix the feedback issue, otherwise Ardour will not pass any signals at all after reloading as session. I've disconnected "Insert" "WIDTH_M" and "WIDTH_S" After that I can use Ardour's Virtual Keyboard to connected to "MIDI_KBD" and the signal reaches both downstream tracks. Tested with Ardour/ALSA (to rule out any issues with JACK or pipewire) |
|
I followed your instructions: * Create 2 MIDI tracks (Track1, Track2). On track1 I used no instrument, Track2 I used Ardour's default General MIDI Synth, * Connect some MIDI keyboard to Track1's input. I used Ardour's Virtual keyboard * Connect Track1's output to Track2. * Make sure In/Disk/Rec and metering points all make sense. I left everything at default with default preferences both In/Disk are implicitly active. * Nothing from the MIDI keybaord makes it to Track2. Here the MIDI synth on track 2 plays notes just fine. |
|
x42: "I followed your instructions: ... Here the MIDI synth on track 2 plays notes just fine." > Yes because as I mentioned afterwards, "You absolutely need my project (above) to reproduce." and "If you create 2 NEW midi tracks ... they work" x42: "First you need to fix the feedback issue" > The Feedback indicator lights up but I cannot see any feedback at all. WIDTH_M and WIDTH_S mono tracks are only connected to "INS_MS" (the insert of the "WIDTH" stereo track) I don't see anything from the width* tracks connected to itself. I suspect that the feedback indicator is wrong. THEN, maybe based on that feedback detection being wrong the data isn't passed due to incorrect feedback detection? |
|
> The Feedback indicator lights up but I cannot see any feedback at all. As discussed on IRC, the issue is that three busses are 'inserted' into track's signal flow: "inserts" are used to send to an Ardour bus and return a result to the source track. This constitutes a feedback loop: the signal of a track depends on data from the same track. inserts are only to be used with external hardware (and are latency compensated); for a track with an insert the following happens: The track is processed in one go (atomically): send data to external device; receive data from external device from previous cycle. This works with external device; but not with Ardour internal busses. For that to work the track would have to stop processing halfway, send data to the bus, wait for the bus to finish processing, receive data from the bus, and then continue. |
Date Modified | Username | Field | Change |
---|---|---|---|
2024-12-28 17:03 | florianb | New Issue | |
2024-12-28 17:03 | florianb | Tag Attached: Midi | |
2024-12-28 17:03 | florianb | File Added: Screenshot_20241226_073204-ardour-midi-bug.png | |
2024-12-28 17:19 | florianb | Note Added: 0029166 | |
2024-12-28 17:19 | florianb | File Added: ardour-midi-bug-project.tgz | |
2024-12-28 19:27 | florianb | Note Added: 0029167 | |
2024-12-28 19:34 | edogawa | Note Added: 0029168 | |
2024-12-28 23:07 | x42 | Note Added: 0029169 | |
2024-12-28 23:07 | x42 | File Added: bug-9872.png | |
2024-12-28 23:10 | x42 | Note Added: 0029170 | |
2024-12-29 01:42 | florianb | Note Added: 0029171 | |
2024-12-29 17:31 | x42 | Note Added: 0029172 |