About Improved App Compatibility in macOS Monterey 12.3

If you’re using Cascable Pro Webcam with an older version of macOS, you’ll see a message in the app notifying you that you can get better app compatibility if you upgrade to macOS Monterey 12.3 or higher.

macOS 12.3 and higher allows Cascable Pro Webcam to work with an expanded set of applications, including FaceTime, Safari, QuickTime Player, and many more.

You can download macOS Monterey for free from the App Store.

In-Depth Discussion

Prior to macOS Monterey 12.3, apps (including Cascable Pro Webcam) that supply “virtual” webcams to other applications on macOS used a plug-in system that’s been part of the operating system for a long time.

This plug-in system works just fine, and Cascable Pro Webcam uses it if you’re running it on macOS versions prior to 12.3. However, the model it uses is increasingly incompatible with modern macOS security principles. Since the plug-in has to be loaded directly by the application that wishes to use it, the plug-in can have direct effects on the host application. If it crashes, the application will crash. And, if it wishes, it can access anything else in the host application’s memory — which can be things like your contacts list, usernames and passwords, and anything else the host has in memory.

In the old system, webcam plugins were loaded directly
into the host application’s memory space.

High quality software from legitimate vendors plays nicely with host applications (and doesn’t harvest your personal data!). However, security practices need to be based on the intentions of a malicious actor — and this plug-in system was increasingly deactivated by applications in the name of stability and security. Some applications implemented their own systems to securely load virtual webcam plug-ins, but it was up to each individual application developer to do this (and wasn’t an easy task). This is why, on macOS versions prior to macOS Monterey 12.3, Cascable Pro Webcam was visible as a camera in some applications and not others.

There are ways of bypassing these built-in macOS security protections, and some other vendors in this space built tools to make it easy for the user to reduce security. We prototyped such a tool for Cascable Pro Webcam, but were never quite happy with the idea of reducing the security of our users’ computers — especially behind a couple of easy clicks.

Thankfully, macOS Monterey 12.3 introduced a new, modern plug-in system (now called a system extension) that loads the virtual webcam extension in its own process, completely separate from the host application.

In the new system, webcam extensions are loaded into
their own, dedicated memory space.

This model means that if the extension crashes, it doesn’t take down the host application with it. It also means that the extension doesn’t have any access to the host application’s memory, avoiding the rather large security concern that the old model had.

Due to these factors, the modern extension system introduced in macOS Monterey 12.3 is available for use in all webcam-using applications, including Apple’s own apps like FaceTime, QuickTimer Player, Safari, and lots more. Unfortunately, due to the rather massive shift in under-the-hood details, this extension can’t be used in versions of macOS prior to 12.3.

Cascable Pro Webcam will continue to use the old plug-in system on older versions of macOS, and will migrate to the new extension system when you upgrade to a version of macOS that supports it.