2014-02-16

Kdenlive, Kubuntu, and the Contour ShuttlePRO v2 Jog Dial

Cuts the video, as well as the mustard:
ShuttlePRO v2 by Contour Inc.
While today computer mice are almost ubiquitous input devices at least for the larger personal computers, it is sometimes much better to (additionally) go for a special-purpose input device. Such specialized devices are much more convenient when working, for instance, with video and audio. (Re)Winding forth and back through the footage is easy, while mice are not exactly the best tool, erm, at hand.

And so I got myself a video «jog dial», made by Contour Inc.: its ShuttlePRO v2. Contour markets its input device as a «multimedia controller».

Their specialized input devices seem to be really recognized by many users, be it professionals or laymen. In addition, Kdenlive directly supports the ShuttlePRO v2 and this USB device works well with Linux.

And so I ordered my device from a large European mail order company that specializes on musical instruments and also has a lot of technical equipment often required in this context. A big plus was that this mail order company usually has the ShuttlePRO v2 on stock, as they run their own big logistics center. The next but one day I got my ShuttlePRO delivered at my doorsteps.

Kdenlive, Linux and the ShuttlePro


Thanks to USB, installing the ShuttlePRO v2 is a breeze. Recent Linux kernels properly detect this input device. In particular, no special kernel module is required. The downside is at this time that there is no special tool software for using the ShuttlePRO with arbitrary Linux programs, as it is with Linux or OS-X. But since Kdenlive (as well as a few others) directly supports this device, I can live with that.

Update: getting Kdenlive to see the ShuttlePRO v2 finally has become much easier, see this new blog post.

Yet getting Kdenlive to work with the ShuttlePRO v2 is somewhat tricky for the first time. After you've managed to get past this initial stumbling block, you won't need to care about initial hiccup anymore. Kdenlive still expects input devices, such as the ShuttlePRO, to get assigned a device name in the form of /dev/input/inputX. However, recent Linux kernels for quite some time use /dev/input/eventX instead.

The trick here is to set up your own udev rule ... if you don't know what this is, it doesn't matter. Just follow the description and you are done. For Debian-based Linux distributions, such as Kubuntu, create (as user root of course) the text file 9-shuttlepro.rules in the directory /lib/udev/rules.d. This file contains just one line of text:
ATTRS{name}=="Contour Design ShuttlePRO v2" MODE="0666" SYMLINK+="input/input%n"
That's it. Next, restart the udev daemon by issuing the following command from the command line (again, do this as root):
#udevadm control --reload
Now you can plug in your ShuttlePRO v2. Kdenlive should now properly detect the ShuttlePRO v2 and offer it in its settings, section jog dial. You need to do some final fix, however. In the jog dial settings in Kdenlive you should notice an input text box containing the full device name of your ShuttlePRO v2. Replace this with the following (static) device name, and you don't need to think about this installation again:

/dev/input/by-id/usb-Contour_Design_ShuttlePRO_v2-event-if00

What is this thing good for?


Jog dial: frame-by-frame movement.
Shuttle:shuttle forth and back in your footage at
different speeds.
Somehow the design of the ShuttlePRO v2 reminds me of a piece of pizza that has stranded on my desk and is now sticking there. And it really sticks to its place, thanks to its six rubber pads.

Central elements of the ShuttlePRO are the inner dial as well as the outer shuttle around the dial. You can operate the dial and the shuttle independently of each other. However, they both serve the same basic purpose of winding forth and back, so you won't ever operate them simultaneously. But then, isn't one of the dial and shuttle then unnecessary? Let's see...

The (silver-colored) inner dial works similar to the well-known scroll wheel of mice. In Kdenlive, you use the dial to position the playhead exactly to the frame. The dial gives comfortable tactile feedback, so it is a pleasure to quickly navigate to exact cut positions, transition ins and outs, and so on.

The (black) shuttle around the dial can be turned clockwise and counterclockwise only up to a quarter turn. As soon as you take your hand off the shuttle, it returns to its center position. In Kdenlive, you use the shuttle to, well, shuttle around your footage or project at varying speeds, forth and back. The further you turn the shuttle, the faster you go. The shuttle supports seven different speeds.

It really is a breeze to shuttle through the raw footage and to exactly set cut positions, in and out positions, and so on. The shuttle is for the coarse work, while the dial is very convenient for positioning up to the individual frame. By assigning the commands for setting in and out positions to the buttons the ShuttlePRO features, working with Kdenlive becomes of much more ease. You typically operate the ShuttlePRO with one hand, so you have your other hand free for more complex tasks. Erm, well, never mind...

As far as I know, it is possible to use more than one ShuttlePRO simultaneously.

Assigning ShuttlePRO Buttons


Configuring the ShuttlePRO buttons in Kdenlive.
In its settings, Kdenlive offers you to assign certain editing functions to the 15 buttons of the ShuttlePRO. Simply open the «settings» menu, then «Configure Kdenlive...»

In the settings category «JogShuttle» you first have to activate your ShuttlePRO v2 by checking «enable Jog Shuttle device».

Next, assign functions to the 15 buttons the ShuttlePRO comes with. Please note that you cannot change the function of the dial and shuttle in Kdenlive, as these are hardwired. The buttons of the ShuttlePRO are numbered from left to right, and from top to button. The only exception are the black buttons next to the shuttle: they are numbered as buttons 14 and 15, and not as 9 and 10, as one might expect. The reason probably is that these black buttons were only added with the second version of the ShuttlePro and numbering the existing buttons was kept for good reason. In my opinion, a good decision.

I've assigned the ShuttlePRO v2 buttons in Kdenlive as follows:
  • top most button row
    • 1: Selection tool
    • 2: Spacer tool
    • 3: Pause
    • 4: Switch monitor (between clip and project monitors)
  • second button row
    • 5: Clip in Project Tree
    • 6: Insert zone in timeline
    • 7: Play Zone
    • 8: Rewind 1 Second
    • 9: Forward 1 Second
  • black button row
    • 14: Set Zone In
    • 15: Set Zone Out
  • lower silver-colored button row
    • 10: Go to Clip Start
    • 11: Go to Clip End
  • lowest silver-colored button row
    • 12: Go to Zone Start
    • 13: Go to Zone End