There I was, all ready to jump on a call. It was a video conference, I had the computer setup at the perfect angle, my desk was clean, the lighting was set up just right, my connectivity was great — low latency and high bandwidth. And then it happened…
I disconnected the HDMI port on my laptop and sound output stopped working. I scrambled. I reconnected a headset, that didn’t do anything. I restarted the conference call software, that didn’t do anything. Finally, the only thing that made audio output work again was a computer reset.
Resource lockups suck.
From working on the Ubi and AVS implementations, our team had seen this many times. Some software will hog the microphone resource and not allow other devices to use it. In this case, it was the audio path that was locked to a particular output — maybe the HDMI port.
For voice first devices, this can be devastating. Essentially, the device ends up frozen to the end user requiring a hard reset.
The way that designers and developers can overcome this is by implementing watchdogs over the microphone and output resources. If multiple I/O Is not allowed at a system level, then processes have to check out and check back in resource. The watchdog could monitor for activity of these process and force the check-in of a resource if the process stops responding or reaches some predetermined time out.
When they voice first experience works well, it is magical. However, there are many things that can creep in the way and shut it down.