In the spirit of the season, I have a holiday geek treat for you: The ability to freely play Avid MXF Media.
It’s all happened to us what time or another – we find our storage drives are overflowing with media goodness. This limits the amount of media we can put on the drive for another project; as well as decreasing the performance of said media drives.
Avid’s ability to track media is excellent, and this ability is partly responsible for it’s pseudo proprietary format – the Avid flavor of the MXF wrapper (a tweaked Op-Atom MXF, in case you were wondering). This wrapper prevents most media players (Quicktime, VLC, for starters) from being able to play the media. Avid’s tracking of the file during import also alters the file name to the point where sometimes you cannot identify the media by file name alone. This means you have to open up Avid, and view each clip. This is time consuming and quite frankly, a pain in the ars.
Sure, you can fork out a few bucks for codecs which allows these files be played (Calibrated Software, for example), but wouldn’t you like the ability for *free*?
It turns out, the ability to view these files can be found at the core of several popular application that *prevents* you from doing so – VLC Media Player, Handbrake, and MPlayer.
The VLC Media Player is based off the open source, cross platform project known as FFmpeg. This highly customizable code base is a step below a basic GUI, and has usually only found usage by coders. However, with a few tweaks, it can play Avid MXF files, on your PC desktop.
The trick revolves around forcing FFmpeg to play the file. See, most players, upon encountering a file they don’t immediately understand – simply abort the process. FFmpeg has a switch (a command line argument) which forces the application to play the file. Since Avid MXF is an MXF variant, the ability to read the MXF file is inherent to the application.
Things you’ll need:
- - Avid Codecs (FREE – http://www.avid.com/dnxhd)
- – FFmpeg EXE file (ffplay.exe)
- – Batch file, providing the command line switches to play the file (ffplay2.bat)
- – DLL Driver (sdl.dll)
The batch file launches the FFmpeg application and forces the application to play the MXF file, while being told what codec the media file should be played back with. (DNxHD).
Assumptions:
A) You’re running on a PC. (although, FFmpeg is cross platform, so you could write an equivalent on the Mac…)
B) The file you wish to view is an Avid MXF file, using the DNxHD Codec (what Avid has used as standard for a few years now)
C) There is no support for this trick. In fact, I wish I could take credit for this. This trick was shared with me by one hellova guy (Bob Kertez – bluescreen guru and great storyteller), who massaged the trick from Jamie Parry.
Directions:
- All the files contained within the ZIP file are placed into the c:\utilities folder (easy to change as a command line switch in notepad. You can also alter the -X and -Y parameters to resize playback.)
- Right-click on an MXF file, choose Open with… and point it to ffplay2.bat. To streamline things further, click on Always Use This File or Default Program, and from then on, double clicking on an MXF file will play it immediately.
Watch your media come to life!
Ho Ho Ho and happy editing, err, cleaning!





Sweet Trick! Thanks for sharing.
Definitely an awesome trick and something that I’ve been after for years… However, any chance of a solution for Mac users?? Please!?!
FFmpeg is cross platform. So, the ability to play the file is there, you just need a “front end” for the the app!
Nice!!! My question is if this method only works when we have a dnxHD wrapped with a mxf. What about if we have a mpeg2(hdv) wrapped with the mxf? I’m not able to open it from anywhere that is not avid media composer.
That’s a bit harder – especially when you get into cross platform codec issues (i.e. HDV not playing natively on a PC). Thus, this may not be a FFmpeg limitation.
With the above trick, you can try to alter the command line switch to the codec you *think* the file is. FFmpeg.org has an FAQ which may help with codec choices.
However, I am curious – what created the HDV files and put thme into an MXF wrapper? Media Composer? Are they simply transfers from a camera that did the MXF wrapping for you?
~Michael
Thank you Michael. You are right, I have many files already archived following the previous structure hdv wrapped with mxf from Media Composer.
Since now everything is stored in DnxHD with MXF and I’m able to reproduce it using your trick above. Thank you again!!!
The problem is that all the contents that I already had in HDV-MXF op atom from Avid are not possible to be opened by ffmpeg. I already try using the switch -f and the codec for HDV but it is not working.
Anyway, your trick help me a lot!!!
Carlos
Nice trick! It will play DVCPRO25 as well with -f dv but ffplay crashes if I try to skip forward or backwards in the video (with the arrow keys on the keyboard). Does that work for the rest of you?
And I’ve found a little trick to make the .bat more portable. The variable %~dp0 always points to the directory path of an executing batch file. So the script can look like this:
@echo off
cd /d %~dp0
ffplay.exe -f dv -x 360 -y 288 %1%
That way you can have the three files on an usb stick and drag’n'drop .mxf files on the ffplay2.bat without having to edit the .bat if the drive letter changes.
I haven’t had success with seek or scanning, unfortunately – then again, I haven’t been actively trying to program it – I just share the trick
I’ll certainly add your variable to the batch file – great addition!
Thanks!
~Michael
Are you guys running this on a x64 windows 7?
Didn’t work for me.
Yup, running Win 7 64 here with no issue at all.
Perhaps one of the steps listed above was missed?
As I mentioned, I didn’t come up with this trick or write the code, but I haven’t heard of any problems from several associates who have tried this on a Windows platform.
“All the files contained within the ZIP file are placed into the c:\utilities folder (easy to change as a command line switch in notepad. You can also alter the -X and -Y parameters to resize playback.)”
Sorry but, no such folder on my computer…?
You must create this folder and place the files within it. The batch file is looking for this path.
~Michael
Another easy way to watch mxf files is to install the free Avid MetaFuze utility and scan the mxf folders
Andi