speaker property
Returns the AudioSpeakerKind of these MediaDeviceDetails.
Only meaningful, if these MediaDeviceDetails are of MediaDeviceKind.audioOutput.
Implementation
AudioSpeakerKind get speaker {
return switch (audioDeviceKind()) {
AudioDeviceKind.earSpeaker => AudioSpeakerKind.earpiece,
AudioDeviceKind.speakerphone => AudioSpeakerKind.speaker,
AudioDeviceKind.wiredHeadphones => AudioSpeakerKind.headphones,
AudioDeviceKind.wiredHeadset => AudioSpeakerKind.headphones,
AudioDeviceKind.usbHeadphones => AudioSpeakerKind.headphones,
AudioDeviceKind.usbHeadset => AudioSpeakerKind.headphones,
AudioDeviceKind.bluetoothHeadphones => AudioSpeakerKind.headphones,
AudioDeviceKind.bluetoothHeadset => AudioSpeakerKind.headphones,
null => switch (deviceId()) {
'ear-speaker' || 'ear-piece' => AudioSpeakerKind.earpiece,
'speakerphone' || 'speaker' => AudioSpeakerKind.speaker,
(_) => AudioSpeakerKind.headphones,
},
};
}