TempoPlayer


Outputs the current tempo in beats per seconds.  All TempoPlayers share the same TempoBus, and so don't incur any additional resources.


Move the tempo slider.

(

Instr(\helpTempoPlayer,{ arg tempo;

Impulse.ar( tempo )

},[ 

\tempo 

]);

Patch(\helpTempoPlayer

,[

TempoPlayer.new

]).gui

)



A TempoBus belongs to a specific server for its whole object-lifetime.  A TempoPlayer is only told which server it is to play on when it is asked to prepare for play by its parent object.   A TempoPlayer can be saved in a larger musical structure and that structure is capable of being played on disparate servers.


the symbol \tempo is registered in Spec.specs as a TempoSpec


\tempo.asSpec.insp


whose defaultControl is a TempoPlayer


\tempo.asSpec.defaultControl.insp


so that the argname tempo in an Instr would by default result in a TempoPlayer for a Patch using that Instr.


Patch({ arg tempo;

Impulse.ar( tempo )

}).gui




execute this many times

(


Patch({ arg tempo;

Impulse.ar( tempo )

},[

TempoPlayer.new


]).play(atTime: 1)


)




see BeatClockPlayer