an attempt to refactor recorderjs and recordermp3js