private void offhandTick()
{
if( !rt_valid ) return;
final SessionCollection collTrns = doc.getActiveTransmitters();
final int numTrns = Math.min( rt_trnsLocX.length, collTrns.size() );
final long pos = Math.min( timelineLen - 1, timelinePos );
if( pos < 0 ) return;
try {
for( int trnsIdx = 0; trnsIdx < numTrns; trnsIdx++ ) {
final Transmitter trns = (Transmitter) collTrns.get( trnsIdx );
final AudioTrail at = trns.getAudioTrail();
at.readFrames( trnsBuf, 0, new Span( pos, pos + 1 ));
rt_trnsLocX[ trnsIdx ] = trnsBuf[ 0 ][ 0 ];
rt_trnsLocY[ trnsIdx ] = -trnsBuf[ 1 ][ 0 ];
}