Production Expert

View Original

Apple Announce End Of Native Support For Avid DNx Codecs - Avid Respond. Why This Matters For Pro Tools Users

With the release of a major Final Cut update Apple also took the opportunity to warn users that a future macOS will NOT support a number of commonly used video codecs including Avid’s DNxHD, which Avid recommend as the best video format for Pro Tools and a lot of video camera formats built around the Cineform codec.

Is This Flash All Over Again?

In a support article Apple released on November 15th 2018 they say…

“To prepare for future macOS releases, complete Final Cut Pro projects that contain legacy media. In Final Cut Pro, you might see an alert that legacy media files won't be compatible with future macOS releases. Legacy media files are compatible with macOS Mojave, but they won't be with future macOS releases. Legacy media can include footage recorded with cameras like Sony HDCAM-SR cameras, footage from GoPro cameras recorded in the CineForm format, video files in the Avid DNxHD/DNxHR format created with software, footage shot with many other older cameras, or files modified with older software.”

It’s Not Just About Video Codecs

Some people have interpreted this announcement from Apple as a FCP only issue. We don’t believe this to be the case. Based on our research this is an OS related issue and so will affect all 32-bit applications and a future version of the macOS.

At first glance, it does seem strange that a number of very commonly used and current codecs will no longer be supported in the Apple but the problem is that these codecs are built around 32-bit code and all modern operating systems are dropping-32 bit code, not just for video codecs but for all applications. For more details read the section on 32-bit applications in our article - macOS Mojave Compatibility - The Ultimate Pro Audio Guide. Check It Out Today To See If The Software And Plug-ins You Use Support Apple's 10.14 Yet.

Goodbye QuickTime

But all of this has been known about long before macOS Mojave was released in September this year. Apple has been working for 15 years to get rid of QuickTime as it is a 32-bit app. They replaced the QuickTime 7 player with a QuickTime X, which is now just called the QuickTime player. It’s all part of the dropping of QuickTime API which is 32-bit code and replacing it with AVFoundation which is 64-bit and is at the core of the current QuickTime player. Note that Apple is NOT killing the QuickTime Movie File format. That is still alive and well.

2 years ago we asked Non Lethal Applications, makers of Video Slave Pro about this when the QuickTime Windows security storm blew up and back in 2016 Flo Loferer the developer and owner of Non Lethal Applications shared his thoughts on the wider story of QuickTime...

The original QuickTime framework is 24 years old now [in 2016] which are a couple of centuries in computer time.  While it was and still is a great engine, they never made the move to 64 bit.

Probably because the only people knowing all the innards of QuickTime are either dead or are no longer working for Apple. QuickTime really was MASSIVE! You could literally do EVERYTHING with it but as many parts were really old, it was a real pain!

Apple introduced a new platform called AVFoundation as a successor in OS X 10.6. Since OS X 10.9, QuickTime has been officially deprecated and might disappear in a new OS X release. [We now now this will be the next macOS after Mojave. Mike]. Although Apple is still extending AVFoundation, it’s still not as powerful as QuickTime. Especially regarding new codecs. AVFoundation can only handle a few codecs and there are no codec packs you can install to change that.

As far as I am aware, AVFoundation never made the jump to Windows. Probably because Windows now has powerful frameworks itself and there’s just no need to port the platform.

That’s probably also the reason why AVID moved to their own engine in Pro Tools (they used QuickTime before). Apple moved Logic’s video engine to AVFoundation with Logic 9 (I think) and they had to drop features like external video output which many users really hate.

A common confusion among many OS X users is QuickTime 7 versus QuickTime X on OS X. QuickTime 7 (Pro) uses the original QuickTime engine while QuickTime X uses the new AVFoundation framework. In my experience most users don’t know this and are always confused when they hear that.  Who would think that an app called “QuickTime X” doesn’t use the original QuickTime engine.

All this deprecation does not include the QuickTime MOV file format by the way. This still is supported and is also used by AVFoundation. 

In fact Apple initially warned that High Sierra would be the last OS to support 32 bit apps, but with the release of macOS Mojave they pushed that back to the OS to come after Mojave. Although Apple have not given specifics of which future macOS will drop support for these ‘legacy’ codecs, with the announcement that the replacement to macOS Mojave will drop support for 32-bit applications and QuickTime, it makes sense to plan towards the next macOS release, likely to be in September 2019, based on the release schedules for both High Sierra and Mojave. It all looks like Apple are closing more of the gates and protecting their own systems.

The Work Is Going To Need To Be Done In Apps Like Pro Tools And Media Composer

Although Apple have moved functionality from the 32-Bit QuickTime API and the Quicktime 7 player to AVFoundation and the QuickTime Player, both of which are 64-bit, the other major difference between them is that we understand that post macOS Mojave, the Apple OS will NOT support 3rd party codecs AT ALL, which ties in with this recent announcement from Apple. This will mean that producing 64-bit codecs for AVFoundation won’t fix the problem, as AVFOundation will not support any non-Apple video codecs.

We understand that one of the reasons that the AVFoundation is fast is because it can be much more efficient as it isn’t getting bogged down by ‘slow and inefficient’ 3rd party codecs that also might be power hungry too. This is key to Apple as they are crazy about power efficiency especially as more and more of their products are portable where battery life is very important.

So thanks to this Apple ‘development’ producing one piece of central code, like the Avid DNxHD codecs, as well as others like Cineform that GoPro cameras use, won’t be any good in a post macOS Mojave world. Every individual application, like Media Composer, Premiere Pro and Pro Tools will now need its own version of the codec code built into each app.

Some developers have already done some work on this like Adobe with Premiere Pro and Blackmagic Design with DaVinci Resolve. What is more worrying is that Apple has nailed their colours to the mast and simply won’t support 3rd party codecs in Final Cut and that is likely to further isolate FCPX in multi-user workflows, and there is speculation in a number of quarters that this is all part of a longer term plan by Apple to merge iOS and macOS and to drop Intel processors in Mac computers and replace them with a dedicated Apple processor, probably based on the ARM chips. All in all this could make the whole Flash issue on iOS a walk in the park when it comes to video production workflows on the Apple platform.

What About Avid?

Avid has released this statement today

Apple has released an article related to the future of codec support with Apple FCP X and identified that DNxHD and DNxHR will not be supported in future releases of that product. DNxHD and DNxHR within the QuickTime wrapper have been traditionally supported by various products on the MacOS platform  either through native integration by various MacOS based applications, or through the plugin mechanism that the QuickTime 7 ™ libraries provided.
 
With the deprecation of the QuickTime 7 libraries, support for these formats is now based on each media application supporting these codecs natively using 64 bit compliant and performance-tuned libraries available through Avid, or each application vendors own implementation using the SMPTE VC-3  standards specifications that the DNx family of codecs are based on. 
 
As such, for customers using Apple Computers and MacOS, this announcement does not affect Pro Tools and Media Composer, any other products that have chosen to implement DNxHD and DNxHR natively in the aforementioned manner, or, DNxHD/HR supported through MXF wrappers.  DNxHD, DNxHR, Pro Tools and Media Composer will continue to be supported and will be compatible with the current and future release of Mac OS. We will continue to improve or introduce new features for DNxHD and DNxHR, proven by the recent release of DNxUncompressed option, and will support these new features on various operating systems, including MacOS.

What Should We Do About It?

The new Apple support document goes onto explain what FCP users can finish their projects that include ‘legacy’ media and also how to update FCP projects that have already been exported but that doesn’t help Pro Tools users. So what do we need to do?

In another Apple support document they advise users that their QuickTime Player may convert legacy media files before playing them and that you might see a progress bar showing that your file using certain older or third-party compression formats is converting, although I have never seen this so far.

Community member Adam Daniel saw this and has produced this short demo video, which I have annotated that shows what happens when you try to play an Avid DNxHD file in the current QuickTime player…

We understand that the current QuickTime Player uses Apple ProRes to convert legacy formats used in video workflows, such as those encoded with the Animation codec. It uses H.264 to convert other older or third-party media formats and Adam’s demo confirms that Apple considers an Avid DNxHD file in this second category. But be aware that this will only convert media to Apple friendly codecs like ProRes and H264.

But as we have already identified, the current 64-bit QuickTime player will never support codecs like Avid’s DNxHD and so when we need to convert content into DNxHD, we have turned to applications like MPEG Streamclip, VLC or Switch. So where will pps like these be in a most macOS Mojave world?

MPEG Streamclip is no longer being developed, the last ‘beta’ version was released in August 2012. It is also a 32-bit application and so will definitely no longer work when Apple drops 32-bit support when they release the next version of the macOS.

VLC from the VideoLAN Organization is a free and open source cross-platform multimedia player and framework that plays most multimedia files as well as DVDs, Audio CDs, VCDs, and various streaming protocols. VLC has supported DNxHD since v2.0 and from what we have been able to establish does NOT depend on the OS hosted codecs so could be a free replacement for Apple’s QuickTime player for Pro users who will continue to need to play video files using codecs that Apple have announced will no longer be supported in the next OS.

Switch from Telestream lets you play a variety of web and professional media formats, inspect and adjust the properties of the file, and then export a new file. Switch enables visual file inspection, single file transcoding and is an affordable software solution for professional media Quality Control. You will need Switch Plus which costs $199 to handle video file conversion and Switch cannot convert to DNxHD. It can only convert from DNxHD. For me the combination of the price and that it cannot export into Avid DNx formats rules Switch out as being a useful solution.

What About FFmpeg?

There is one other app I would like to highlight. It is a free command-line open source application and that is FFmpeg, which enables us able to decode, encode, transcode, mux, demux, stream, filter and play pretty much anything. It supports the most obscure ancient formats up to the cutting edge. FFmpeg runs on Linux, Mac OS X and Microsoft Windows. It contains libavcodec, libavutil, libavformat, libavfilter, libavdevice, libswscale and libswresample codec libraries, which can be used by applications. As well as ffmpeg, ffplay and ffprobe can be used by end users for transcoding and playing, but the big disadvantage for us creatives is that it is a command-line application. You have to type lines of commands to tell it what to do and typos etc are very problematic. However, all is not lost. You can get a GUI interface for FFmpeg enabling users to be able to click and drag as you would expect.

On the Mac platform one that seems to be kept up to date is ffWorks. Be aware that this is only the graphical frontend for FFmpeg. You will still need to download the latest version of of the free open source FFmpeg and point ffWorks at it. The price for ffWorks is just 20 Euros.

Use A Separate Video Player App

Another option to consider is a separate video playback solution like Video Slave 3 from Non Lethal Applications. A growing number of people have stopped using the Avid Video Engine and use Video Slave Pro and have found that it has solved their video problems. Some use a separate computer to run Video Slave Pro and lock them together over a network. We have also seen reports that Video Slave Pro works well with Pro Tools 10, 11 and 12.

Check out our review by Alan Sallabank of Video Slave 3 By Non Lethal Applications and also our nnews article on the new features added in v3.2 as well as new features added in version 3.3.

Our Advice

Whatever you do don’t leave it. Whilst tools like MPEG Streamclip are still working, consider converting files to Apple friendly codecs to be safe especially if you are working on the Mac platform and if your video editing colleagues are using FCP. If you leave it until after you have upgraded to the next macOS release, transcoding and conversion will be much harder. If you have a lot of media you might want to look at batch converting over the next 9 months, so you are safe and not dependent on video codecs that Apple won’t be supporting.

Spare a thought for the video world who are staring at a mammoth transcoding project to convert catalogues of archive material to codecs that will continue to be supported by Apple. By and large it would appear that Apple’s ProRes format is being proposed but that is a closed proprietary format and so for some may not be a good choice.

All of that said we cannot imagine a scenario where Avid will allow the DNxHD format to be sidelined by a decision by Apple. Although a similar war was fought on web browsers over Flash and we know how that played out. Time will tell…

We still think there are some questions that need to be answered to fully reassure Pro Tools users. What do you think? How will this affect your workflows?

See this gallery in the original post