// for minim audio import ddf.minim.*; import ctext.*; CText ct; void setup() { size(300, 300); ct = new CText(this); ct.loadSample("beat.mp3").loop(); } void draw() { background(200); strokeWeight(5); float pos = getSamplePosition(); line(pos*width,0,pos*width,height); } float getSamplePosition() { int current = ct.sample.getCurrentFrame(); int total = ct.sample.getNumFrames(); //System.out.println("current="+current+" total="+total); return current/(float)total; } void mouseClicked() { float frame = mouseX / (float)width; frame *= ct.sample.getNumFrames(); ct.sample.setCurrentFrame((int)frame); }