add timing functions
synchronised playback
add delay function