in FamilyNotes/Speech/SpeechManager.cs [318:351]
private async Task<bool> IsMicrophoneAvailable()
{
bool isMicrophoneAvailable = false;
try
{
var captureDevice = new MediaCapture();
await captureDevice.InitializeAsync();
// Throws if no device is available.
var audioDevice = captureDevice.AudioDeviceController;
if (audioDevice != null)
{
#if VERBOSE_DEBUG
Debug.WriteLine( "SpeechManager: AudioDeviceController found" );
#endif
isMicrophoneAvailable = true;
}
else
{
Debug.WriteLine("SpeechManager: No AudioDeviceController found");
}
}
catch (COMException ex)
{
Debug.WriteLine(ex.Message);
}
catch (Exception ex)
{
Debug.WriteLine(ex.ToString());
}
return isMicrophoneAvailable;
}