Midi track to audio track

So, I have this midi track that I recorded in ardour. Made some little edit, quantization and velocity and whatever and now I’m satisfied enough to make it audio.
So I connect the output of my track to the input of some audio track, I record, everything’s fine.
But when I listen to the audio file, I feel it’s a little different. It’s not out of sync but it seems some notes last shorter on on the audio file, and stuff like that.
I use ardour in windows with asio4all.
As a test, I’ve made 3 different recording.
1, same settings than previously (midi track -> audio track) but in the audio engine I select Jack instead.
2, I connect my midi track to the master output and I select session-> export -> export to audio file (my midi channels) with asio4all as the audio engine
3, same but with jack as the audio engine.

No I’m left with 4 different audio files, all different. :open_mouth:
subtles differences but differences all the same. I can even tell by comparing the waveform in audacity

(note: the tracks are stereo but I selected only the left track of each, to make the picture smaller)

So, now for my question.
Which method is supposed to be the more closer to midi track? Because I don’t trust my ears anymore.

Hi, export audio with midi-track solo
Sorry mi bad english

1 Like

Thank you. :slight_smile:
You recommand using asio or jack for the audio engine?

the process is internal so both alsa and jack are the same

1 Like

The simple explanation would be that it’s due to the synth plugin. Some generate the sound of a complete cycle ignoring sample accurate timestamps. So the can sound slightly different depending in buffer-size settings.

ASIO usually has block-sizes in milliseconds, while jack uses power-of-two blocks.

Make sure that the audio track has no other input and the MIDI track’s output isn’t also connected to some other destination. Like:

NO INPUT || MIDI track -> Audio track -> Master-bus -> out

If the MIDI track also has an input assigned. Ardour assumes you play live and compensates for the input latency. So the audio will be recorded early.

Alternatively you can override this in the Audio track, pick “existing material” when bouncing:
image

I assume this happened, and the difference ASIO vs JACK are different hardware I/O latencies.

When exporting with JACK, jack disconnects from the hardware and reports zero latency. So there is a difference (usually 1 cycle) when exporting vs when play live. This has already been fixed in upcoming Ardour6.

2 Likes

Yes, it’s all good.

If the MIDI track also has an input assigned.

There’s nothing connected but the “enable/disable midi entry” button was on.
I’ll disable it.

I use daichi Synth1 plugin. On several different tracks actually.

The asio buffer is on 1024. There’s 1 or 2 xrun but usually it’s only when I start or stop the audio engine, so I guess it’s ok.

By the way, I understand the midi clock is important when you plug an external keyboard to ardour, or when you want to send midi data from ardour to other instruments/apps, but surely it’s not important when you convert a midi track to audio track, right?

Thanks for the detailed explanation. :sunglasses:

MIDI Clock has almost no effect on anything whatsoever. It’s basically a metronome that counts quarter notes. Nothing more (or less). There are associated messages that also define position, but lots of things send MIDI Clock without sending those.

1 Like

This topic was automatically closed 91 days after the last reply. New replies are no longer allowed.