getAvailableMicrophones method
Gets the list of available microphone / audio input devices.
Implementation
@override
Future<List<AudioInputDevice>> getAvailableMicrophones() async {
try {
final list = await methodChannel
.invokeListMethod<dynamic>('getAvailableMicrophones')
.timeout(methodTimeout);
if (list == null) return [];
return list
.whereType<Map<dynamic, dynamic>>()
.map((map) => AudioInputDevice.fromMap(map))
.toList();
} catch (e, stack) {
debugPrint('AudioPicker: getAvailableMicrophones error: $e\n$stack');
return const [
AudioInputDevice(
id: 'builtin_mic',
name: 'Built-in Microphone',
type: AudioInputType.builtInMic,
isSelected: true,
),
];
}
}