Skipping in pbind to a later event

Hello maybe an easy question but cant seem to find the solution.
I’m trying to write longer patterns now and i feel the need to skip the pattern to some certain point. Is there any way in doing so?

Basically i want to set an offset when playing the entire Pbind for all its inherent pattern methods. preferably this is configured somewhere at the play method. I hope this becomes clear in my example:

(
Pbind(
	\degree, Pseq([1,3,1,2],inf),
	\amp, Pseq([1,0.5,0.6],inf),
	\dur, Pseq([0.1,0.2],inf),
).play // how to make this skip 2?
)
//i can set to offset the pattern, but need to target each pattern individually. A pbind wide solution would be great
(
Pbind(
	\degree, Pseq([1,3,1,2],inf,2),
	\amp, Pseq([1,0.5,0.6],inf,2),
	\dur, Pseq([0.1,0.2],inf,2),
).play
)

thank you very much and merry Jesus day!

Check out Pdrop. You should be able to wrap it around your Pbind to achieve what you’re looking to do.

https://doc.sccode.org/Classes/Pdrop.html

1 Like

Cool thank you very much! The Solution is then quite simple!

(
Pdrop(1,Pbind(
	\degree, Pseq([1,3,1,2],inf),
	\amp, Pseq([1,0.5,0.6],inf),
	\dur, 2*Pseq([0.1,0.2],inf),
)).play;
)

Also check out Stream:fastForward, which can move Event streams forward in a time-based way.

2 Likes