Posted
Using Transient MIDI Drones, I'm getting an issue with the recorded notes being about an 8th late (see attached). I'm not brilliant but I'm not that bad! If I do the same thing directly in my DAW or using the Synfire Audio Engine, it's only a few ticks out.
The recording is done using a simple MIDI keyboard that is connected through my Audio Interface. I've tried changing the buffer size on the interface but it doesn't help.
I've also tried changing various settings in Synfire, e,g.:
- Inputs -> Compensate Latency During Record
- Playback -> External Synchronisation -> Transport -> Render Ahead
However, none of the changes seem to make a difference. Is there another setting somewhere that I have missed, or is there another problem?
Pagination
Sun, 2014-10-12 - 11:55 Permalink
Actually it should be ON to eliminate the recording latency.
It looks like your playback sound comes late, which makes you play late too. I'd suggest there is playback latency involved rather than recording latency.
Check with a dry metronome click hosted on the same host as the arrangement.
Sun, 2014-10-12 - 13:55 Permalink
I don't understand why the 'Use Audio Engine for MIDI Input' option should be ON when the engine is not being used (it's disabled). Anyway, it makes no difference whether it's on or off, the results are the same.
Check with a dry metronome click hosted on the same host as the arrangement
I'm not sure what you mean by this. If I turn on the Cubase metronome during playback, it is perfectly synced. If I enable the Synfire metronome (that's linked to a transient drone) and start recording (you can't just turn it on during playback) it is also perfectly synced.
So I've just been testing again with some more recording, using either the Cubase or Synfire metronome (or both at the same time) and now sometimes the recording is way early, and sometimes late as originally reported. Very frustrating.
Mon, 2014-10-13 - 14:00 Permalink
I've uploaded a video here http://youtu.be/_yycWIIU5n0
It's the first video I've done so I apologise for the crudeness, however I think it highlights some of the problems I'm having and hopefully there is a simple resolution.
Mon, 2014-10-13 - 18:03 Permalink
I don't understand why the 'Use Audio Engine for MIDI Input' option should be ON when the engine is not being used (it's disabled).
Of course this option can only work if the Audio Engine is started. You should start the Engine (it does not matter if you're using the Engine as audio output device or not, just start it) and give it a try again with "Use Audio Engine for MIDI input". This option was specifically introduced to reduce Midi recording latency (after an elongated discussion in an old thread that I unfortunately can not find now).
Mon, 2014-10-13 - 20:06 Permalink
Why was the 32 bit version drone working in Cubase 7.5-32 bit and why it is now not working the cognitone drone in Cubase 64 bit ?
In the 32 bit version the audio engine was used, because i used the asio server software for multiple audio outputs, but in the 64 bit version the audio engine is put off
I did not even install a rewire transport in the cubase 32 bit and there was synchronisation between the two programs for transportcontrols, somehow synfire detect it by itself
Mon, 2014-10-13 - 20:55 Permalink
I don't understand why the 'Use Audio Engine for MIDI Input' option should be ON when the engine is not being used (it's disabled).
It's for timestamping the input received from the MIDI keyboard. However, as you noted, your're not using the Engine, so this won't help.
Your issue is because MIDI messages don't have a timestamp when they arrive in Synfire. Please enable one of your Cubase drones for MIDI input (or add one specifically for that purpose). Be sure your MIDI input arrives at that Cubase track. This will timestamp the messages and it will no longer matter how long they take to arrive in Synfire.
Mon, 2014-10-13 - 22:21 Permalink
Juergen, it was a good idea but unfortunately it made no difference.
Andre, I have tried this but now it's even worse. Not only are the notes still recorded late, but now I get no sound during recording. The idea sounds promising though and we're probably on the right track, but maybe there's something else I need to do as well?
Tue, 2014-10-14 - 12:49 Permalink
First, if the DAW is used for input and recording, disable other regular MIDI ports for input in Synfire. The same MIDI input might come in on multiple ports with different timing, which is bad.
To get sound during recording, the DAW must handle this. Check our input monitoring setting in the DAW.
Tue, 2014-10-14 - 19:38 Permalink
disable other regular MIDI ports for input in Synfire
I only have the drone and the keyboard enabled for input in Synfire so this should be ok.
Check out input monitoring setting in the DAW
Input monitoring is normally a term associated with audio recording I thought? However, I have the 'Monitor' button enabled on the MIDI track in Cubase. This is to allow MIDI Thru to be active and without it, it doesn't even sound on playback let alone record. I don't know of any other monitoring options in Cubase for MIDI tracks.
So just to reiterate, setting the input button on the drone in Synfire means there is no sound during record. However the notes do record (still late) and there is still sound on playback.
Wed, 2014-10-15 - 09:46 Permalink
setting the input button on the drone in Synfire means there is no sound during record
All MIDI input to the drone that it receives from the DAW is passed on to its guest plugin. If not, please check the drone's playback mode. It should be set to 'Merged' (the default). If that still doesn't work, there's a bug.
As for the timing, it should be near perfect when recording this way. The drone receives notes from the DAW, which are already timestamped (the same way it records its own MIDI tracks). Synfire processes the notes a bit later, however since it knows their exact timestamps, the small delay is not an issue.
If you still see timing shifts, MIDI input is not going the correct route yet.
Wed, 2014-10-15 - 19:21 Permalink
please check the drone's playback mode. It should be set to 'Merged' (the default). If that still doesn't work, there's a bug.
It is Merged, perhaps it is a bug then.
If you still see timing shifts, MIDI input is not going the correct route yet.
Yes I still have timing issues. You can see and hear it towards the end of my video when I recorded in Synfire and Cubase at the same time.
I've also attached a GIF if it helps any further.
Wed, 2014-10-15 - 21:16 Permalink
pete,
why are you enabling the drone for input? I would suspect you are creating a midi loop although cubase would have to be somehow dealing with it as you arent seeing/hearing it.
In the first case you have
Midi keyboard -> synfire _> midi through -> synfire instrument -> midi drone -> vst -> sound
with midi input turned on for the drone you have (depening on how midi input drones work - Andre?):
Midi keyboard -> synfire _> midi through -> synfire instrument -> midi drone - (vsti - no sound)
^---------------------------------------------|
Is there anyway your timing signal could be looped as well? maybe you have some clock signal going to the midi interface which is affecting the midi data it is sending?
Have to say I know nothing about cubase so this is all probably crap info but maybe it might spark an idea for you to investigate?
Apologies if it sends you down a blind alley with incorrect info, just trying to help
Wed, 2014-10-15 - 22:23 Permalink
It seems to me that ? Cognitone midi drone out is the input for the drone when connected with synfire
The drone output can be chanced in a midi keyboard input to record in Cubase
Correct me if i am wrong ..
why are you enabling the drone for input? I would suspect you are creating a midi loop
Wed, 2014-10-15 - 22:46 Permalink
why are you enabling the drone for input?
Blacksun, I thought that's what Andre meant when he said
Please enable one of your Cubase drones for MIDI input
but I have probably misunderstood
Is there anyway your timing signal could be looped as well? maybe you have some clock signal going to the midi interface which is affecting the midi data it is sending?
I'm afraid I have no idea, that is all a bit technical for me!
What MIDI input port have you selected for the MIDI track "GI Piano" in Cubase?
Juergen, it seems I may be able to dismiss the no-sound issue because of my misunderstanding of what Andre said. So the good news is that I do get sound, but the timing issue is the big problem.
Wed, 2014-10-15 - 23:48 Permalink
Hi Pete, it might be me thats got it wrong....
'Is there anyway your timing signal could be looped as well? maybe you have some clock signal going to the midi interface which is affecting the midi data it is sending?'
What I meant by this is maybe you have midi out connected to your keyboards midi in? and maybe you are sending the midi clock out to the keyboard?
is the midi port only used by synfire, I mean its not configured in cubase at all?
Have you tried turning off the midi through in synfire although you wont hear sound then, but see if it helps with the timing?
Thu, 2014-10-16 - 00:07 Permalink
Hi blacksun,
By the way, I do appreciate you trying to help very much!
I only have one cable connected on my keyboard, it's just a dumb MIDI keyboard so there's no need to send anything back to it.
I think the port is used by both Synfire and Cubase, which is why I was able to record in both at the same time (shown towards the end of my youtube video).
I haven't tried turning off the midi thru but it's worth trying. I can't give it a go right now though but I'll try tomorrow.
Thanks again. It's truly great being part of a community where everyone helps and you don't have to wait a week or more for a response from 'support'!
Thu, 2014-10-16 - 00:11 Permalink
solving midi timing problems
http://www.soundonsound.com/sos/dec07/articles/cubasetech_1207.htm
http://www.soundonsound.com/sos/mar01/articles/pcmusician.asp
One of the biggest enemies to consistent timing is our old friend the background task, since anything that periodically cuts in while you're running your MIDI + Audio sequencer can disrupt its timing
Thu, 2014-10-16 - 00:16 Permalink
Ah, thanks Jan. I will have a read but it's all too much to take in at this time of night!
Although, I thought the 1st article was a bit old (2007) until I opened the 2nd one, 2001. I was still a child then (well, in my mind anyway) :)
Perhaps it proves that midi timing issues are a thing of the past!
Thu, 2014-10-16 - 00:28 Permalink
Maybe there is less midi timing issues these days, but probably not a thing of the past , because you are facing it
Perhaps it proves that midi timing issues are a thing of the past!
It certainly helps to minimise midi timing problems if you have a dedicated computer alone for music.
http://www.edugeek.net/forums/educational-software/15411-cubase-midi-latency.html
:-) Study this in your own pace
Thu, 2014-10-16 - 00:43 Permalink
Well it's getting better, that thread was only started six-and-a-half years ago!
Just to be clear, I have no problems with timing when recording directly in Cubase, or in Synfire when using the Audio Engine. It's only when using the transient drones that the problems occur.
Thu, 2014-10-16 - 03:08 Permalink
just a few more suggestions to help find where the problem might be...
set up an instrument with a fast attack in cubase driven by a transient drone.
Put a note on each beat of the bar in synfire
record the audio in cubase
start the playback in synfire
look at the audio transients recorded in cubase and see if they are delayed. If so then the problem may be at least in part, playback latency.
remove the midi keyboard input from cubase so its just plugged into synfire, then try what you were doing before. See if thats any help.
Check cubase to make sure its slaved to synfire for timing
Thu, 2014-10-16 - 10:56 Permalink
Thanks Blacksun, some great suggestions. I will hopefully be able to try them this evening.
I've just read back the following comment I made last night:
It's truly great being part of a community where everyone helps and you don't have to wait a week or more for a response from 'support'!
I just wanted to clarify that I was including Cognitone in the 'community where everyone helps' and the dig at waiting a week for a response from support was aimed at other sites, and certainly not this one!
Thu, 2014-10-16 - 12:32 Permalink
This may indeed be a bug. I suspect the drone to not forward its input to Synfire for some reason. I'll have a look.
why are you enabling the drone for input?
Because the data flow needs to go like this:
MIDI Keyboard -> DAW -> Drone -[TCP/IP]-> Synfire
The timing of the last step is irrelevant, as notes are already timestamped by the DAW. Audio feedback during recording must come from DAW -> Drone -> Guest Plug-in, which is the same situation as usual redording in the DAW.
Pagination