Jump to content

[GUIDE] Video Decode Acceleration on NVidia or Intel Cards (AMD Unknown)


All Kand
 Share

1 post in this topic

Recommended Posts

Hi guys

 

Video Decode Acceleration is the framework provided by Apple to allow programs to accelerate H.264 media through hardware. There has been currently no known way to achieve this, but it has been found!

 

ALERT!

If you already have VDA, don't even bother reading this, unless you have another machine waiting.

Go here to download a tool to check:

http://www.insanelymac.com/forum/topic/261104-check-for-hardware-video-acceleration-capabilities/

 

Guide for GPUs:

 

There are three things your setup must satisfy to achieve VDA.

 

1. Hardware Support

Not all graphic cards have a video decoder that can accelerate H.264 decoding. Because OSX only provides H.264 decoding and no other codecs, these cards cannot accelerate the decoding of any video at all. (That does not mean they cannot QE/CI)

 

2. Software support

Your graphic card must already be set up with QE/CI running. This can be the AppleIntel****** drivers, NVDAN***/Natit/NVEnabler or AMD***. If your card is one of those unfortunate ones without QE/CI, you cannot achieve VDA at all. Examples: Intel 4500mHD, Intel HD Graphics 2000, Intel HD Graphics 2500

 

3. The correct version of OSX

Starting point: Using 10.4 or 10.5 cuts you off VDA entirely. VDA was introduced with Snow Leopard, and I recommend you use 10.6.6 and beyond. The other part is that each OSX version has a slightly different Video Acceleration driver depending on the times of release. i.e. Snow Leopard's driver does not contain MacBookPro8,1 which was released after it, but Mountain Lion's driver has it.

 

4. The right SMBIOS

This is the key to achieving VDA. How so? The Video Acceleration driver bases the need to accelerate based on the Mac models which contain certain VDA-approved cards, such as the NVidia GeForce 9400M or NVidia GeForce 320M. In the VDA reference document, approved cards range from certain NVidia cards, AMD Radeon HD cards and Intel HD Graphics. For the NVidia cards, I have confirmed that VDA is not restricted to the ones listed.

 

Now to point 4:

The Video Acceleration driver is not a kext, but a bundle. It is known as AppleVADriver.bundle.

THE FIRST STEP TO THIS IS TO DOWNLOAD (from the App Store or otherwise) AN APP KNOWN AS MacTracker.

 

If you have an NVIDIA (Fermi/Titan ones unknown, these are mainly the four/three digit models e.g. 9300 GE) card:

You are extremely lucky. Just open up MacTracker, look for a model that has a 9400M, and simply use that SMBIOS. This works even with my desktop card 9300 GE. Examples are iMac9,1, Macbook5,1.

 

If you have a GMA 950 or GMA X3100:

These cards only contain a MPEG2 decoder which can only be used in Windows (maybe Linux). OSX only provides a framework to accelerate H.264.

 

If you have an Intel HD Graphics 3000:

The right way to use this card is to use a MacBookPro8,1, 8,2 or MacMini 5,1 or 5,2 SMBIOS. Also, stay away from Snow Leopard.

 

Anything Intel card beyond Intel HD Graphics 3000:

You should use Mavericks. Or a very updated version of Mountain Lion. Try to stay away from Lion.

 

AMD Cards:

Not sure about this at all. However, it is recommended that you use the absolute latest OSX available (10.8.5 at writing time). See below.

 

Non-supported cards:
Intel cards after X3100 and before Intel HD Graphics (Arrandale first-gen i5). For first-gen i5 HD Graphics, there is a guide on this forum about getting QE/CI and there are some framebuffer patches. The AppleVADriver.bundle also lists the MacbookPro6,1 and 6,2 that contained this cards. As H.264 decoding in dual-GPU Macs occurs on the weaker GPU, use these SMBIOSes.

 

S3 Graphics, VIA. As I said, no QE/CI entirely negates VDA.
 

 

What SMBIOSes are VDA-supported?

Go Into the Info.plist of AppleVADriver.bundle (in S/L/E) and see the System Support dictionary. Then, use MacTracker and find a model that best suits your card. The cards that were dropped as OSX progressed from 10.6 to 10.9 were ones that could not decode H.264. As such, using the latest OSX possible allows for more models with supported cards to be included in AppleVADriver.bundle.

 

Note!

I do not know how AppleVADriver works and when doing this, I swopped my SMBIOS rather than add the one I was using to the Info.plist. If your model is really impossible to find, or is a newer card, as long as you have obtained QE/CI, just use one from the same brand.

  • Like 2
Link to comment
Share on other sites

 Share

×
×
  • Create New...