Plugin.AudioRecorder
Plugin.AudioRecorder copied to clipboard
Use custom stream to record audio
Hello, This code change allows you to use your own stream when recording audio. The StartRecording function now accepts a stream object:
public async Task<Task<string>> StartRecording (Stream recordStream = null, bool writeHeaders = false)
If recordStream is null the old behavior is used where a file is written on the device. The writeHeaders flag can be used to write the WAV headers to the beginning of the stream.
Example usage:
var memoryStream = new MemoryStream();
var audioRecordTask = await recorder.StartRecording (memoryStream, true);
I added this change for my scenario where I don't want data to be stored on the device or use an internal memoryStream like #48. This change will also allow scenarios mentioned in #12 and #13 by reusing the stream. It also supports the scenario of #48, using a memory stream instead of filestream.