startRecorder()
The τ Recorder API
startRecorder()
- Dart API: startRecorder
You use startRecorder()
to start recording in an open session. startRecorder()
has the destination file path as parameter.
It has also 7 optional parameters to specify :
- codec: The codec to be used. Please refer to the Codec compatibility Table to know which codecs are currently supported.
- toFile: a path to the file being recorded or the name of a temporary file (without slash ‘/’).
- toStream: if you want to record to a Dart Stream. Please look to the following notice. This new functionnality needs, at least, Android SDK >= 21 (23 is better)
- sampleRate: The sample rate in Hertz
- numChannels: The number of channels (1=monophony, 2=stereophony)
- bitRate: The bit rate in Hertz
- audioSource : possible value is :
- defaultSource
- microphone
- voiceDownlink (if someone can explain me what it is, I will be grateful ;-) )
path_provider can be useful if you want to get access to some directories on your device. To record a temporary file, the App can specify the name of this temporary file (without slash) instead of a real path.
Flutter Sound does not take care of the recording permission. It is the App responsability to check or require the Recording permission. Permission_handler is probably useful to do that.
Example:
// Request Microphone permission if needed PermissionStatus status = await Permission.microphone.request(); if (status != PermissionStatus.granted) throw RecordingPermissionException("Microphone permission not granted"); await myRecorder.startRecorder(toFile: 'foo', codec: t_CODEC.CODEC_AAC,); // A temporary file named 'foo'
Lorem ipsum ...