Apologies for the delayed response. You might want to look at my Masters thesis here:
Specifically, take a look at this figure:
If I remember correctly, the total time delay depends on: 1) the buffer length in FieldTrip buffer, 2) the buffer size of the data requested by the FieldTrip buffer client in MNE-Python, and 3) the processing speed. If you precompute the forward, 3) may not be a bottleneck. I would recommend measuring the time with
or some such tool. 1) usually depends on the vendor. For Elekta systems on which I tested, I think 28 samples is the minimum buffer length. Now, depending on the timing of the start of the buffer and query from MNE-Python, the actual delay may have a distribution as shown in the figure above. Note that
requests only the last
, so you do get pseudo-realtime at the expense of missing some samples. If on the other hand, you’d like to get all the samples corresponding to a trigger, you should use
Hope that helps!