Kuuvik Capture 4.5 : CR3 and M6 II Support

Version 4.5 of Kuuvik Capture, my premium Canon tethering app, is now available on the Mac App Store. Besides the usual camera support updates (this time for the M6 Mark II and EOS Ra), there are a few noteworthy things.

RAW Histogram and Exposure Warnings for CR3 Files

Proper support is finally here for Canon’s new RAW format. Initially I wasn’t a fan of the new format as it wastes a lot of space for unnecessary things (like duplicated metadata parts and an embedded, smaller resolution RAW image), but there’s one single feature that changed my view entirely. And this is the actual organization of the RAW image data.

My biggest gripe with the CR2 format is that the RAW data must be processed serially, on a single processor. No matter how many cores you have in your machine. But CR3 allows parallel processing! My very first CR3 decoder is roughly 2.3x faster compared to a same megapixel CR2 (EOS R vs 5D Mark IV, 0.22s vs 0.51s on my 8-core 2019 MacBook Pro). And I’m investigating architectural changes in Kuuvik Capture to allow extracting even more of the inherent parallelism in the new format.

Please note that like with sRaw/mRaw CR2, Kuuvik Capture doesn’t support the RAW histogram and exposure warnings for lossy compressed C-RAW CR3 files. I don’t think that in the age of dirt cheap storage, trading a little space for increased processing time and lower quality does worth it.

New Sequence Controller

Until now, exposure sequences were controlled by a variant of the original Kuuvik Capture 1 controller. But we had recently discovered a situation where actual exposure values could slip, resulting in two identical frames. Unfortunately the cause was the app’s architecture interfering with Canon’s exposure control mechanism, and the only solution was to completely rewrite the sequence controller.

The new code also allowed to resolve a long-time issue with the inability to stop sequences while the app waits between intervalometer shots. And there’s another pretty neat thing coming in a future release!

Tethering on macOS Catalina 10.15.2 and Later

Simply put: Apple made a huge mess, so we added extensive in-app guidance about what (seemingly unrelated Photos and Removable Volumes) access permissions you have to grant to ensure that macOS lets the app communicate with USB connected cameras. Failure to do so will prevent the app from doing its job.

Of course we had filed a bug report to Apple, proposing the way that it should be done: macOS should ask for a Tethering access permission. Their current solution is not just misleading, but poses a security risk as users must grant much wider permissions than it would be necessary, grossly violating the principle of least privilege. This is a prime example that security done the wrong way actually results in a less secure system… Just sayin’… If anyone at Apple happens to listen.

Availability

The update can be downloaded from the Mac App Store free of charge for existing Kuuvik Capture 2+ users. My eBook was also updated to reflect the changes in this release.

There’s one thing you must be aware of, though: the app now requires macOS 10.12 or later. This change allowed us to modernize parts of the code, and to get rid of the OpenCV dependency, which was only used for one purpose: resizing the RAW exposure warning layer on some old Macs. Removing it reduced the app’s size by 35%, to a mere 5.3MB. In comparison, Canon’s EOS Utility is a 75MB behemoth.