AudioRecorder easier to extend and with better error handling