getRecording
Gets the completed recording, if available.
This returns null while recording is in progress and becomes available after stop is called. The result is cached for efficiency.
This is a suspend function to safely collect the audio data.