Kuuvik Capture 2.5 with 5D IV Support Available

The latest update to Kuuvik Capture is now available on the Mac App Store. It brings complete Canon EOS 5D Mark IV support, including the ability to shoot and display Dual Pixel RAW files. I’d recommend to check out my former notes on 5D Mark IV RAW files.

This release also boosts RAW decoding and camera communication performance – you can find more details on these improvements in my previous post.

A new preference

As a first step toward JPG support, you can now shoot RAW+JPG (Large/Fine) in the camera. Since Kuuvik Capture works from the RAW file only to display the histogram and highlight/shadow warnings, just the RAW files are downloaded even if you shoot RAW+JPG. JPG files are saved to the memory card.

The new "Image quality" preference

The new “Image quality” preference

You can switch between RAW (the default) and RAW+JPG Large/Fine in Preferences.

Notes on macOS 10.12 Sierra

Usually I’m not doing this, but this time I highly recommend NOT to upgrade to macOS 10.12. At the time of writing the new OS has way too many bugs, two of which affecting Kuuvik Capture users specifically.

1) Connecting the 5D Mark IV via USB to an app, and then quitting the app will leave the camera in an inconsistent state, and no app will be able to connect to the camera until the USB cable is disconnected and plugged in, or the camera is turned off and back on, or the memory card door opened and closed.

This only happens with the 5D Mark IV and on macOS 10.12 with the USB connection. The same camera on 10.11 works fine, all other cameras we’ve tried on 10.12 work fine. Even the Wi-Fi connection works fine – well, it’s not a surprise since it doesn’t use the flaky macOS PTP/IP stack.

It seems that macOS forgets to close the session with the camera. There is no workaround to the issue, other than the things mentioned above that actually break the session on the camera side.

2) On some computers (MacBook Pro 15″ Retina Mid-2012 for example) 5DS/R files are not displayed at all.

Update 10/30/2017: The new display engine in Kuuvik Capture 3.3 is immune to this issue.

Availablity

The update is free for existing Kuuvik Capture 2 customers. New users can download Kuuvik Capture 2 from the Mac App Store.

For more information about the app, please visit it’s microsite, or check out my posts.

Performance is a Key Kuuvik Capture Feature

Since I took over Kuuvik Capture last year, one of my top priorities is to provide the fastest, highest performance tool possible. While the original company arrangement did not allow for costly, time consuming optimizations required to reach the speed I wanted, now I can spend all my spare time on it. And the results are stunning. Just think the brutal improvements version 2 brought to the table…

These days I’m doing some groundwork that will make exciting new features possible in Kuuvik Capture (and also serve as a base for upcoming products). And improving performance along the way.

Kuuvik Capture 2.5 Beta

Kuuvik Capture 2.5 Beta

No more Windows leftover

Originally Kuuvik Capture was designed to be able to run on both OS X and Windows, and we used a bunch of readily available software components (Canon’s own SDK and libraw for example), which turned out to be a bag of ugly worms. I had spent several long days on wrapping those components to make them usable and reliable.

This “wrapper” was able to run on both operating systems. On top of this, the operating system specific “engine” connected the “wrapper” to the user interface and provided services to the “wrapper” (such as proper asynchronous camera communication – something that Windows completely lacks).

With version 2 I had already replaced these problematic components with my own code, but parts of the “wrapper” and the “engine” were still present. Since we decided to drop any and all Windows plans, there was no need for them – my Digital Camera Library and the user interface could talk directly. So I started to gradually remove them, which task is finished by now.

During the removal I had not just eliminated several thousand lines of code, but since there’s less machinery involved, camera communication became faster and consumes less battery. Image download from the 5DS R is 1% faster compared to version 2.4, and overall communication is up to 5% faster compared to 2.0 (measured on my mid-2012 15″ Retina MacBook Pro). This seems a small number, but think about it this way: you can take 1-5% more shots on a charge.

Even faster RAW decoding

I’m using a lossless jpeg decoder based on dcraw‘s routines to open the RAW files. This had one drawback: dcraw was not designed to be able to work on multiple images simultaneously – something I need for my future plans. Not to mention that I also had to work around this limitation in Kuuvik Capture.

Fortunately I found and fixed the issue, and my decoder not just works parallel on multiple processor cores, but also crunching numbers faster. I measured 5-6% faster file opens (with 50 megapixel files on my MacBook Pro).

When?

These improvements will be available in Kuuvik Capture 2.5 later this fall.

Preventing Photos Auto-Start

If you are a photographer using anything but an iPhone for your work, chances are that the Photos app drives you nuts. I mean its aggressive nature to jump on any media or camera connected. Although you can disable this auto-start for cameras one by one, CF and SD cards are still an issue, as there’s no way to disable the auto-start for them on the user interface.

So here’s the trick: disable it globally. Open Terminal and copy & paste the following commands:

On OS X 10.10 (Yosemite):

defaults -currentHost write com.apple.ImageCapture2 HotPlugActionPath -string ""

defaults -currentHost write com.apple.ImageCapture2 LastHotPlugActionPath -string ""

On OS X 10.11 (El Capitan):

defaults -currentHost write com.apple.ImageCapture disableHotPlug -bool YES

You may need to log out and back on for the changes to take effect.

Creating a Wi-Fi Access Point on OS X

With Kuuvik Capture 2.2 around the corner, I’m going to post a few short tutorials on wireless “tethering” setups. Yes, the wireless connection option will make a return in version 2.2!

So let’s start with a solution to one of the most aching issues.

Imagine the following situation: you are out in the field, photographing an old castle. You want to place the camera on a crane to photograph from a high vantage point. The crane is higher than your longest USB cable can reach, so wireless connection would be the most appropriate solution.

First obstacle: all Canon Wireless File Transmitters (both built-in ones and external bricks) require an existing network to connect to in EOS Utility mode. Yes, it’s utterly stupid, since in other modes they can operate as an access point and create their own network. But other modes simply suck in terms of remote control features.

Back to our example: there’s no phone coverage (for the Personal Hotspot trick), there are no nearby networks of any kind to connect to. You could create an ad-hoc wireless network on your Mac, but setup is complicated and error prone (needs manual TCP/IP configuration on both the computer an on the camera), and in the last few versions of OS X there’s no way to create a secure Wi-Fi network (another utter stupidity). The lack of security is a total showstopper, so this isn’t the appropriate way to make the connection work.

There’s a neat trick, however. OS X has a built-in Internet Sharing feature that practically creates a Wi-Fi access point to share an existing network connection. The next obstacle is that you need the network you want to share to be in the “connected” state (think cable plugged in both to the computer and into a router). Unfortunately the built-in loopback interface (which is always connected and provides access to the local computer only) is not accessible from the Network preference pane in System Preferences (one more stupidity).

The key to the trick is to make the loopback interface appear in the Network pane. Actually, it’s pretty straightforward: launch the Terminal app and copy & paste the following two commands (working on both Yosemite and El Capitan):

sudo networksetup -createnetworkservice Loopback lo0
sudo networksetup -setmanual Loopback 172.20.42.42 255.255.255.255

Enter your password to allow these modifications if OS X asks for it.

Now your Network preference pane should list the brand new Loopback service:

network-loopback

It’s still listed as “not connected”, but don’t worry, that’s just a bug.

Side note: if you use multiple “network locations”, you need to repeat the above commands for each location. If you just use the Automatic location, then you can move to the next step.

Go to the Sharing preference pane, and on the list of services click Internet Sharing. If the service is already on, turn it off. Choose the Loopback service as the one you want to share your connection from. And share to computers using Wi-Fi.

sharing-1

You can set up the shared Wi-Fi network (the network we’ll connect the camera to) by clicking the Wi-Fi Options button. Here is the Wi-Fi Options screen:

sharing-2

The network name is your computer’s name by default, but I’d recommend to enter a simple alphanumeric name (containing no special characters), as Canon cameras have issues with displaying characters outside of the simple letters and numbers range.

All other options are the usual Wi-Fi setup options. A few notes though. Channels 1-11 use the 2.4 GHz band, while 36-48 use the 5 GHz band. Transmitters in the 70D and 6D only operate on the 2.4 GHz band, while the external WFT-E7 brick operates on both. The 5 GHz band is faster and generally has less interference from other networks and appliances operating in the crowded 2.4 GHz band. For security, choose WPA2 Personal (the other option is None, which is unacceptable).

Once the Wi-Fi options are entered, you can start the sharing service. To do it, click the check box in front of its name in the list. OS X may ask to turn on your Wi-Fi radio if it was off, and will ask your confirmation to start the sharing service. After the service has been successfully started you’ll see a screen similar to the one below:

sharing-3

IMPORTANT: due to an OS X bug, your selection in the share from list may change to another (random) network service. So you must check whether it still shows the Loopback service after each start!

The Wi-Fi icon on the menu bar will change to the sharing icon once the sharing service is ready to accept connections.

sharing-on

And that’s it! Your personal access point is now ready. The steps to configure your camera will be discusses in an upcoming post.