WebRTC Community Update - PWAs, MacOS Ventura, Safari and more!

daginge Moderator, Daily Alumni

Hello, and welcome to a new edition of our WebRTC Community update!

In this post, we’ll look at some new exciting bugs when using MacOS Ventura, new PWA features for incoming call notifications, Safari updates, and more! Hold on to your hats!

If you have questions, please ask in the comments!

More MacOS Ventura woes, beware virtual camera software!

It’s been eerily quiet since the release of MacOS Ventura, but no major OS release from Apple is without its share of action. This time around, it’s virtual camera software that’s causing issues for WebRTC in the new OS.

If you’re using Mersive Solstice, which is apparently what WeWork uses in their conference rooms, you might encounter issues on MacOS Ventura. This should be visible as a NotFoundError from getUserMedia.

The root cause seems to be the AVFoundation APIs in MacOS in combination with “MacOS Hardened Runtime” which is presumably a security feature, where the virtual camera plugin at the OS level crashes on Ventura when Chrome tries to load it. More details can be found in this Chrome bug report comment.

Sadly we can’t expect a fix anytime soon from the Chrome team, and the ball seems to be in Mersive Solstice’s court for now. Chrome also can’t block these virtual devices from loading, so system administrators are advised to disable the offending plugins (or just not upgrade to Ventura like the rest of the world for another three months) until a fix is rolled out.

Incoming call notifications for PWAs?

I can’t begin to tell you how excited I am for this next one. Ever since Confrere was founded in 2017 (and later acquired by Daily) I’ve dreamed of a PWA capable of accepting incoming calls without needing a native app.

Microsoft just announced an intent to prototype a new notification type for PWAs that would allow an incoming call UI to show from a PWA. Needless to say this will be huge for the web-part of WebRTC apps to close the feature gap towards native implementations.

However, note this is just in the prototyping phase. We’re most likely to see this land in Microsoft Edge on Android first, but there are some security and privacy implications that need to be addressed before then. Shipping this feature is likely some years out, and who knows what Apple will do, who have historically not been too welcoming of PWAs.

Safari Tech Preview comes with an important bug fix

We have for the longest time been plagued by a very hard bug to track down, which would make the MediaStream capture fail after around 30 seconds of a call. In the latest release of Safari Tech Preview there was a bug fix mentioned which addresses this issue when a bluetooth device is used as audio input.  

Note that the bug hasn’t been updated yet, or confirmed fixed, so let’s hold off on cheering just yet. Nevertheless, we like it when these capture issues are fixed, as it creates a lot of issues which are very hard to debug.

Fix on the way for missing devices in enumerateDevices?

We’ve been observing for some time now that in certain cases enumerateDevices would return 0 devices, which it now turns out to be because of a crash in the underlying service used in ServiceVideoCaptureProvider in Chrome.

This would cause issue for applications as it would appear a device had no active video devices, which would leave users confused and frustrated. There is no current workaround to this without restarting the browser, luckily it’s not all too common.

There is a bugfix out for review, and it seems the Chrome team is aiming to release this in the upcoming M110 release.

We hope these updates are useful for you! Is there anything in particular you would like to see us talk about next time, or do you have any questions? Let us know below!

This tech update is based on information from WebRTC Insights, a biweekly newsletter that provides information on things happening in the WebRTC ecosystem. Learn more about WebRTC Insights.