vis exec waits for user init; audio.js cleaner