Photography, Reviews

KeyFlow Pro, a personal Media Asset Management system with limited workgroup capabilities

KeyFlow Pro interface

Several years ago, Apple had a professional-grade, server-based media asset management system (MAM). Unfortunately, Apple decided to kill Final Cut Server and instead incorporate some of its management functionality into Final Cut Pro X. Managing your media files from within an editor is not quite the same as managing them in a MAM, so the door was wide open to third party developers. One of them developed a nice alternative under the name KeyFlow Pro. It targets individual users as well as small workgroups.

KeyFlow Pro remote library

Last year I reviewed CatDV, a British scalable MAM system. I found CatDV a very powerful system, but the interface wasn’t a real pleasure to work with and some features required you to think through your workflow with regards to metadata, sharing, archiving, etc. That’s not criticism, that’s how asset management works. For all its power, CatDV proved to be wonderfully user-friendly but it inevitable came with the complexity of an enterprise ready system.

In contrast, although KeyFlow Pro is somewhat scalable, it is not meant to be used by broadcast companies or large studios. It’s aimed at individual users and small workgroups. It manages images, video, audio, documents (PDFs, Word documents, etc) and even Adobe Illustrator files. Out of the box, it does not support REDCODE files, nor XMF or XAVC. However, and except for REDCODE, those formats that AVFoundation (used by default) does not support can be added by installing FFmpeg.

An alternative to installing FFmpeg is to transcode files using Apple Compressor or a third-party transcoding app such as Sorenson Media Squeeze 10 or Telestream Episode prior to ingesting into KeyFlow Pro, use the resulting files in your Library and archive the originals on offline storage.

If you own Squeeze or Episode Engine, you can even use watch folders to integrate this step into the KeyFlow Pro watch folder functionality. By doing so, you could automatically ingest the files KeyFlow Pro and your NLE can read (e.g. ProRes or DNxHD files).

Ingesting a file can be done by copying the file into the Library or virtually, by leaving the file in place. KeyFlow Pro’s management concept uses collections, called Libraries, to manage assets that belong together. Libraries can be sub-divided into Projects and Groups. They can be stored locally, on a DAS (Direct Attached Storage) device or a NAS (Network Attached Storage). I assume it can be stored on a SAN (Storage Area Network) as well. The network connection can be anything. Shared Libraries can be used the same way as local, non-shared ones. However, you can’t browse (or search) across Libraries, although you can across Groups and Projects.

KeyFlow Pro toolbar, New option

The interface follows the design of Apple Mail, i.e. at the left a sidebar with project, media categories, Smart Mediaboxes (saved searches) and registered camera devices. One tab in the right sidebar lists metadata in EXIF and Final Cut Pro X formats. In addition, you can create new metadata fields and views, edit views by dragging existing metadata fields into the view list or removing fields from the list, etc.

In the metadata area, I would have liked to see support for IPTC. Steve Shim, Malgn Tech’s CEO whom I had a brief email conversation with, made me understand IPTC would be added in a future update.

KeyFlow Pro metadata customisation

The other tab lists asset information, tags, colour labels, star ratings and “workflows”. The latter are conditional actions (“If the assets match these criteria, then do this”) that can either be attached to a Project — and then execute automatically as you ingest assets — or be launched from the Workflows panel.

Workflow conditions as well as actions are currently very basic and limited to what you find in the Information tab — tags, ratings, dates, etc. There is no option to create workflows that allow you to automate metadata field population, for example. The Workflow concept and its interface are good, but in order to become really useful it should support much deeper functionality. However, the developers are pondering the addition of scripting capabilities, which should allow for some very powerful automation capabilities.

KeyFlow Pro workflow

Working with KeyFlow Pro

I imported 3,214 video and sound clips (mainly effect clips, if you’re curious) into KeyFlow Pro to start my testing. KeyFlow Pro lets you create previews at import time. A preference setting allows you to choose a frame size. The asset thumbnails are auto-generated. As soon as you unmount a volume with assets while KeyFlow Pro is running, the Info panel will show you a nice red “Media Offline” warning. You can generate previews after importing by selecting that option from the context menu for one or multiple clips, but for this feature to work, the media obviously must be online.

KeyFlow Pro metadata customisation

To preview an asset you can either QuickLook the file or select the Preview view from the toolbar. The KeyFlow Pro context menu for assets seems to suggest you can send items to your NLE through the “Open” and “Open With” options. However, that’s not the case. You can launch a viewer application to view the asset, but opening a clip in Final Cut Pro X won’t work using either option. By the way, viewing clips commonly opens QuickTime Player, but if you have Telestream Switch on your system, it makes sense to associate clips with Switch in the Finder (Inspector > Open With). If you do, clips will always open with Switch, which gives you plenty more power than QuickTime Player.

If you want to open clips directly in Final Cut Pro X or Premiere Pro, you’ll drag the clip from KeyFlow Pro to the editor. Thinking in terms of KeyFlow Pro being a small workgroup capable MAM, this came across as a strange sort of workflow to me.

Workgroup capabilities

Using an asset from within a MAM should check it out and block its use so no two users can work on the same asset simultaneously — and potentially corrupt the entire file in the process. It appears KeyFlow Pro has no locking mechanism to prevent this from happening and when I asked the developer, he didn’t mention it as being part of the app’s access control.

connecting keyflow pro to remote installation

However, I learned that KeyFlow Pro has been conceived from the bottom up — centring the app on the individual user. This has benefits in terms of ease-of-use, simplicity and management. The cost or disadvantage is that you cannot readily scale KeyFlow Pro for use in large workgroups.

Where fully scalable MAMs require a check-in/check-out mechanism to prevent assets from being corrupted, KeyFlow Pro doesn’t need one. It is focused on you, sharing Libraries with your co-workers who gain permission to read assets, not write them back to your Library nor to the original files you manage. To see how that works out, I installed a second KeyFlow Pro app on my Mac Mini and enabled a fictitious Mac Mini user to access a Library on my iMac.

When I allowed access to a Library that left files in place, the remote user saw the assets as being on offline media and could not view previews. The only thing he could do was download the files to the Mini.

When I allowed remote access to another Library that had assets copied to it, the only difference was the remote user could preview the asset. This modus operandi gets rid of the complexity a check-in/check-out mechanism inevitably brings along, simply because there is no risk as files must be downloaded before you can work with them outside of KeyFlow Pro.

KeyFlow account creation

It also avoids Library owners having to fiddle with granular — often role based — access control. User access control in KeyFlow Pro basically means you can add users to a Library so they can access it remotely. In the Preferences > Libraries panel, you can set up user accounts with a password and add users to each Library as required. These users can then log-in remotely and access assets.

This does leave one vulnerability in place, though, which is when remote users gain access to a shared Library on shared storage. The CEO confirmed they would probably add the ability for Library owners to block drag-and-drop and enforce asset downloading in this case to prevent file corruption.

One important feature KeyFlow Pro doesn’t support yet is versioning. And again, Malgn Tech’s CEO confirmed this was already planned to be included with a future release.

Ingestion of assets in KeyFlow Pro and search capabilities

The drag-and-drop method works great for files that you want to use in Final Cut Pro X or Premiere Pro project. Dragging an asset into Final Cut Pro X makes it automagically appear in the Event browser of the Library you happen to be in. Remote users too will send a clip to their copy of Final Cut Pro X by dragging it out of KeyFlow Pro.

Another way of importing assets into KeyFlow Pro is by inserting a SD-card or other camera memory device to the Mac. KeyFlow Pro will recognise these — as well as iPhones and iPads — as cameras you want to offload. However, there’s only a thumbnail and the ability to import some or all files, but no preview capability. This makes it rather hard to evaluate clips before ingesting and skipping those that are simply worthless.

On the upside, KeyFlow Pro does recognise your GPS data if your files have it and will integrate with Apple Maps. The GPS functionality doesn’t just show you a map; it’s basically a location-based search method. If you select the Map category in the left sidebar, KeyFlow Pro will show you the Apple map and change its viewing mode to Map. The Search field will change to “Address, City”.

But when you switch to another media view category, like for example “Audios” (sic), you expect the app to change back the viewing mode to thumbnails or lists. It doesn’t. It remains stuck at the Map view until you manually change that view. This should be improved as it’s mildly confusing.

KeyFlow Pro extending search

The application’s search capabilities are user-friendly. By default, they are as limited as Workflow conditions, but in the Preferences you can add metadata fields to search for. In addition, you can search file paths, if you set up your libraries with the option “Leave Files in Place”. This has its own benefits if you give your folders significant names, e.g. “Airshow 2015” — in this example, you could just search for “Airshow 2015” and get the full list of files contained in that folder. This also works when media is offline.

KeyFlow Pro smart mediabox

Furthermore, you can create Smart Mediaboxes, which are saved searches. While the normal Search is a simple field, the Smart Mediabox dialogue window does offer support for basic Boolean searches. If you now think the extended search capabilities that you set in Preference > Search will work with Smart Mediaboxes, you’re wrong.

They are limited to the default fields, so if you added metadata to search for in your Preferences panel, you will only be able to search using the simple search field. You can’t create Smart Mediaboxes from the results of searches launched with the Search field, either.

KeyFlow metadata groups

Transcoding files and sending Final Cut Pro X timelines or clips

KeyFlow Pro comes with its own transcoding capabilities, so you can transcode files from one format to another. For low-budget amateur users, this is probably fine. However, I am not so sure any MAM should incorporate transcoding functionality. I’m not questioning the quality of the transcoding results.

But transcoding using Episode or Squeeze — and up to a point Compressor too — has many advantages that are not available in a MAM. For example, with Episode and Squeeze you can apply load balancing on the transcoding process, speeding up the process considerably and freeing your computer’s processor. There are more “exotic” codecs included with Episode and Squeeze, etc.

On the bright side, it’s fairly easy to have your local KeyFlow Pro system integrate with Episode or Squeeze through the use of Watch folders. If you set your transcoding app’s output folder to be your KeyFlow Pro Watch Folder, you should be all set.

Keyflow pro fcp x agent

Sending files to KeyFlow Pro depends on a Final Cut Pro X companion plug-in. The developer is currently thinking about offering such an agent for Premiere Pro as well. It’s an agent plug-in that enables you to send Final Cut Pro X timelines to KeyFlow Pro by using the editor’s Share dialogue. With the FCPX Agent for KeyFlow Pro, you can either send the timeline as a rendered clip including its XML file, or just the XML file.

A few options allow you to ensure the shared footage ends up in the Library and Project of your choice.


KeyFlow Pro is great for individuals, but is a bit lacking in the search area. The app looks great and is quite fast, even when over 3000 clips have been ingested. It is available in the Apple App Store and costs €299.99. KeyFlow Pro will be at IBC 2015 in Amsterdam, at stand 7.G03.