MediaHarmony - Media file interoperability for non-linear editors

MediaHarmony is a Samba VFS module which allows multiple editing clients to interoperate using low-cost commodity storage for media files. The two main features are:

Compiling MediaHarmony

To build MediaHarmony you must have the Samba source code installed. For SUSE Linux the easiest way is to install the src rpm using Yast so any missing dependencies are installed. Alternatively you can:
   rpm -i samba-3.0.23d-6.src.rpm

MediaHarmony depends on header files generated during compilation of Samba, so start building Samba from source. You can optionally stop this process with control-c after proto.h is created to save time.
   rpmbuild -bc /usr/src/packages/SPECS/samba.spec

Now that Samba's source is ready you can build MediaHarmony from the ingex source code:
   cd ingex/MediaHarmony
   make SAMBA_DIR=/usr/src/packages/BUILD/samba-3.0.23d/

The resulting *.so files need to be installed in Samba's vfs directory:
   sudo cp *.so /usr/lib/samba/vfs/
A SUSE 10.2 rpm is available here but may not work on other SUSE versions since Samba's internal APIs change occasionally.

Edit /etc/samba/smb.conf as described in the next section, then restart Samba.

Configuring Samba for MediaHarmony usage

To enable multiple Avid clients to use a media directory without conflict add a section like the following to /etc/samba/smb.conf (adjust path as necessary).
        comment = Multiple Avid client access to media files for Windows
        path = /video
        valid users = archive
        vfs objects = media_harmony
        veto files = /.*/
        delete veto files = yes
        writeable = yes
        browseable = yes
Add the avid_full_audit module to the vfs objects and the configuration options shown below to the section above to include a detailed log of the file I/O handled by the MediaHarmony module,
        vfs objects = avid_full_audit media_harmony
        avid_full_audit:prefix = windows|%u|%I
        avid_full_audit:success = all
        avid_full_audit:failure = all
To enable MXF unwrapping of DV essence for Final Cut Pro clients add a section like the following to /etc/samba/smb.conf (adjust path as necessary).
         comment = Exposes essence data in MXF files as virtual files
         path = /video
         vfs objects = mxf_harmony
         writeable = yes
         browseable = yes

Get Ingex - video capture and transcoding at Fast, secure and Free Open Source software downloads