Play Avid MXF for Free

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:

This ZIP file containing:

  • – 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:

  1. 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.)
  2. 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!

29 Comments

  1. Janet:

    Sweet Trick! Thanks for sharing.

  2. Adam:

    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!

      • fe:

        What does “Front end” for the app mean for those challenged to be working on a mac. I am confused by this. Can there be more detail in how to use this for Mac users?

        • Imagine if I gave you the engine – but no car frame. Or a can of paint with no brush. This tool has the “guts” to work, but has no (free) way of implementing it on a Mac. Someone would have to write a free “skin” for this to work.

          Otherwise there are several other ways to do it, and some for less than $100.

  3. Carlos:

    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

      • Carlos:

        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

  4. Kåre Nejmann:

    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

  5. 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.

  6. Jeppe Svendsen:

    “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…?

  7. Andi Loor:

    Another easy way to watch mxf files is to install the free Avid MetaFuze utility and scan the mxf folders
    Andi

  8. fe:

    Can there be more information for Mac users. I am confused by the term “Front End” app for FFmpeg. How will this work for people who use macs?

  9. Mark:

    When I do this a dialog box opens up that says C:\Windows\system32\cmd.exe with a blinking cursor. Is there another step?

    • No, the ffplay window should open up as well with the video playing automatically – no extra step needed. You’ve installed the Avid DNxHD codecs, right? Is your media DNxHD? I haven’t tried all other flavors of Avid MXF wrapped media (XDCAM, AVC-Intra, etc.)

      ~Michael

  10. Mehel Ghonas:

    Gentlemen,
    Avid offers a *free* API called AMT (Avid Media Toolkit). All it takes is a programmer to pick it up an properly hook it into any of the favorite players. Easily done I assume. Just nobody is going for it or realizing that this is in fact possible? Avid has spent quite some effort to open up – just nobody is realizing it.

    • Hey Mehel:

      I don’t this is a secret for many people – it’s well documented. The common complaint I hear is that it’s not as easy as one thinks. That’s another reason why you typically don’t find encoders that encode / transcode into and from it on the consumer end – it’s tough. No one one wants to write a free-ish app to do so.

      ~Michael

  11. manuel morales:

    Hello and thanks for sharing such a nice trick!
    A question do you get to play back video and audio ?? because I just get the video with no audio.
    if you get audio can you please share the instructions to do it.

    thanks again
    Manuel

    • Avid usually splits audio and video into different files during media creation. Avid’s database is what tracks what audio files go with what video files…inside the Avid editing application. Can’t do that with this trick.

  12. Jeppe Svendsen:

    This trick never worked out for me, but I just found out today that DaVinci Resolve can do the trick for me. It’s a stupid way to do it – but not as stupid as Avid not giving us a free MXF (OP-Atom) preview player!!! And it’s free.
    I navigate to my AvidMediaFiles folder inside the browser in Resolve and from here I can play the MXF’s just fine.

  13. Adin Dell:

    I can’t get this to work. I placed the contents in the correct folder but all I get is a quick cmd prompt window that says ‘ffplay.exe’ is not recognized as an internal or external command, operable program or batch file.
    Help?

  14. Adin Dell:

    nvm figured it out :P

  15. AbcdAvid:

    hi, can’t seem to get this to work. I extracted everything to c-proghrame files-avid-utilities. Is that correct? I can’t find c/utilities.

    • You need to create the folder “utilities” (mine is at “c:\utilities”)

      If you unzip the files there, the batch file will be looking at that folder. If you decide NOT to use c:\utilities, then change the bat file to reflect your folder of choice.

  16. Johan Bjorkdahl:

    Hello. I only get a crash, with the following details:
    Problem signature:
    Problem Event Name: APPCRASH
    Application Name: ffplay.exe
    Application Version: 0.0.0.0
    Application Timestamp: 49f6aa8d
    Fault Module Name: ffplay.exe
    Fault Module Version: 0.0.0.0
    Fault Module Timestamp: 49f6aa8d
    Exception Code: c0000005
    Exception Offset: 000b551e
    OS Version: 6.1.7601.2.1.0.256.48
    Locale ID: 1053
    Additional Information 1: 0a9e
    Additional Information 2: 0a9e372d3b4ad19135b953a78882e789
    Additional Information 3: 0a9e
    Additional Information 4: 0a9e372d3b4ad19135b953a78882e789

Post a Comment

*
* (will not be published)

Random Posts

LOAD MORE