- 1 What is MediaHarmony?
- 2 How does MediaHarmony work?
- 3 Creating a Network Share with MediaHarmony Enabled
- 4 Setting up Avid to use Network Storage
- 5 Setting up QuantaStor to automatically trigger Avid MediaComposer to update
- 6 Verifying that MediaHarmony is working
- 7 Merging MXF files
- 8 Related Topics
- 9 History
What is MediaHarmony?
MediaHarmony is an open source (GPL) VFS extension module for Samba that enables collaborative editing of media files using Avid Media Composer on shared storage (CIFS/SMB). In QuantaStor you can activate this feature on any given network share by checking the 'Enable Media Harmony' box when you create or modify a network share. Once enabled the module ensures that multiple editors do not collide by ensuring that each user of the network share gets their own dedicated copy of the Avid Media Composer metadata files.
How does MediaHarmony work?
MediaHarmony is a special VFS plug-in module for Samba which intercepts file and directory requests and adjusts them to enable collaboration. Specifically, MediaHarmony ignores all directories on the share except those that fall under the folders named 'Avid MediaFiles' and 'OMFI MediaFiles'. As such, after you connect your Windows workstation to a MediaHarmony enabled share, you must store your data files (*.mxf) in a sub-directory of 'Avid MediaFiles'. For example, you may have the network share assigned to X: and a project folder called '1' like so:
Inside the project subdirectory you'll have your mxf files and you'll also find two special files in there that Avid Media Composer creates called 'msmMMOB.mdb' and 'msmFMID.pmr'.
MediaHarmony recognizes these two specific files and stores them with a special suffix on the file server (QuantaStor) so that they're unique to the user. For example, let's say Bruce and Mary are working on editing the projectX media and both have a X:\ drive on their workstation mapped to the same MediaHarmony enabled network share on their QuantaStor storage system. Both users will see these files inside Windows explorer:
X:\Avid MediaFiles\MXF\1\msmMMOB.mdb X:\Avid MediaFiles\MXF\1\msmFMID.pmr
- Side note: Typically Avid will store the MXF and metadata files in a sub-directory called "1" (eg: X:\Avid MediaFiles\MXF\1\ ) but you can rename the directory whatever integer number you like.
On the storage system side within QuantaStor the MediaHarmony module maintains separate versions of these files (msmMMOB.mdb and msmFMID.pmr) for each user, in this case Bruce and Mary. So looking at the QuantaStor system side what you'll see is something like this:
/export/projectX/Avid MediaFiles/MXF/1/msmFMID.pmr_192.168.0.137_bruce /export/projectX/Avid MediaFiles/MXF/1/msmMMOB.mdb_192.168.0.137_bruce /export/projectX/Avid MediaFiles/MXF/1/msmFMID.pmr_192.168.0.115_mary /export/projectX/Avid MediaFiles/MXF/1/msmMMOB.mdb_192.168.0.115_mary
MediaHarmony is maintaining separate copies for Bruce who's logged in via 192.168.0.137 and Mary who's logged in via IP address 192.168.0.115. These metadata files ending in pmr and mdb are not designed for concurrent use by multiple editors so MediaHarmony's ability to maintain per-user copies of these Avid metadata files acts as a work-around. All the other files in the share are handled normally by Samba and are ignored by the MediaHarmony module.
The following screenshot outlines the procedure for creating a new network share with the MediaHarmony feature enabled. You start by right clicking on the section marked 'Network Shares' and then you create a new network share with CIFS enabled and the 'Media Harmony' option checked.
If you have already created a network share you can right-click on it and choose 'Modify Share...' to enable MediaHarmony on it.
That's all there is to enabling the use of MediaHarmony for use with Avid. It is also possible to configure MediaHarmony for use with Avid on OS/X systems but it currently requires that you manually edit the /etc/samba/smb.conf file to enable it. For more information on that please contact us at firstname.lastname@example.org.
Setting up Avid to use Network Storage
To use Avid with network storage you have to make a couple of configuration changes. We found this great article on Skye's Book blog which outlines the process. Here it is in summary:
- Start Media Composer
- Open the console (Tools->Console or Ctrl+F6)
- Type in “alldrives” (no quotes) and hit Enter. The console should respond that all drives are now active whereas only “true” drives were available.
- Note: The alldrives command works as an on/off switch. Entering the command again will disable the use of network drives
Setting up QuantaStor to automatically trigger Avid MediaComposer to update
By itself Avid won't update when new mxf files are added to the bin but you can activate a script within QuantaStor to assist with this.
sudo avidupdate --cron
You can also run 'avidupdate' at any time to trigger this update process. What this script does is updates the time-stamps on files in your MediaHarmony enabled shares. Avid will discover that the timestamps on the file(s) have changed and will in turn update itself by importing the new files from disk.
To view the logs to see the activity from the avidupdate script just type 'avidlog' at the console and hit Ctrl-C when you're done viewing the log. In some instances we've used the 'Clear Bin Memory' option to clear the cache in Avid Media Composer which can help preemptively update the bin.
Verifying that MediaHarmony is working
This step requires logging into your QuantaStor system at the console or via ssh. Once logged in you'll change directories to the network share directory for which you've enabled MediaHarmony. Next run the 'du' command like so to search for the metadata files which both contain 'msm' in their name.
qadmin@qs-testing:/export/projectX$ du -a | grep msm 4 ./Avid MediaFiles/MXF/1/msmFMID.pmr_192.168.0.137_bruce
You can see here that the user 'bruce' is logged into this share via IP address 192.168.0.137 and that MediaHarmony has redirected his writes to the file 'msmFMID.pmr' to this unique file with the special suffix 'msmFMID.pmr_192.168.0.137_bruce'. If you don't see this suffix with the IP address and username in it then MediaHarmony is not active or you have your files under some directory other than 'Avid MediaFiles/MXF'.
Merging MXF files
Note that MediaHarmony does not merge media files so you'll need to coordinate with the other artists and editors to avoid making changes to the exact same mxf file at the same time. After editing files there is a script you can use which will force Avid to refresh and discover newly edited files from other editors which have been stored in the shared MXF folder. This script simply modifies the time stamp on the mxf files to force rediscovery.
MediaHarmony and several other Samba VFS modules were developed several years back and then revised and updated by Andrew K. for Samba 3 and Samba 4 and released under the GPL license.