Time-aware merging of two Event Pattern streams

The standard way to do this is data sharing with parallel Patterns / EventStreamPlayers

http://doc.sccode.org/Tutorials/A-Practical-Guide/PG_06g_Data_Sharing.html

(
x = Pbind(
	\instrument, Pseq([\a, \b], inf).collect(~i=_), 
	\dur, 1,
	\type, \rest
);

y = Pbind(
	\instrument, Pfunc { ~i }, 
	\degree, Pseq([1, 2, 3, 4], 1), 
	\dur, 0.5
);
)

u = Ptpar([0, x, 0.0001, y]).asStream.nextN(6, ());

u.select { |e| e.type.isNil }

Time-shifting is necessary and can be compensated if wanted. See the discussion on this in a thread a few days ago: