Become a MacRumors Supporter for $50/year with no ads, ability to filter front page stories, and private forums.
Status
The first post of this thread is a WikiPost and can be edited by anyone with the appropiate permissions. Your edits will be public.
Oh I am so sorry. I discovered the cause of the problem now. After the installation and update of Catalina I switched the VMM flag off and the SMBIOS spoofing on as recommended. But I made a little typo in the SMBIOS spoofing setting. So the spoofing was still off. After I discovered and fixed this everything was fine. Acceleration works nicely. :) Thank you so much. Great work!

Still wondering if the SIP still has to be disabled?
SIP only need to be disabled when you run the bless tool. After that, it's the user's choice to keep it off, or turn it back on.
 
  • Like
Reactions: saltarob
That’s back.
Yes! when updated to beta 10, hardware encoding resume to normal.
But I have problem that update said I need the full installer to update and there is snapshot mount to my system and the disk show unmount...
System is successful to beta 10 and work normally but only this happen...

Attached is what I see in disk utility. I am use imac pro simulation to update
Screenshot 2020-10-17 at 6.15.05 PM.png
 
Yes! when updated to beta 10, hardware encoding resume to normal.
But I have problem that update said I need the full installer to update and there is snapshot mount to my system and the disk show unmount...
System is successful to beta 10 and work normally but only this happen...

Attached is what I see in disk utility. I am use imac pro simulation to updateView attachment 967845
I am a bit confused. So, you successfully install beta 10, but just need to use the full installer. Is that correct?

Anyway, for non HWAccel related Big Sur beta issue, better to discuss at the Big Sur forum.
 
Using the Swordsmith Demo video through QuickTime to verify my hardware acceleration. I'm seeing a mix of smooth playback and choppy playback, even on first playback after a reboot. My machine is a dual processor cMP 5,1 running 10.15.7 with a Vega 64 on OpenCore 0.6.2 with VMM flag off. VideoProc shows both H264 and HVEC enabled. VTDecoderXPCService is not spiking in Activity Monitor. Config plist is attached.
 

Attachments

  • config.txt
    12.2 KB · Views: 142
My Mac Pro 5.1 with RX580 does HW accelerated encoding and decoding H264. But the quality of encoding is much, much less than with x264 double pass, variable bitrate at the same bitrate, especially at lower bitrates. Makes sense, because my videos are very double-pass friendly with a lot of steady shots with little noise and I think HW accelerated is 1 pass and constant bitrate.

But how about decoding? Is there also a 'better' (software) way to decode h264 or can it only be decoded in 1 way, so HW accelerated quality is the best you can get?
 
My Mac Pro 5.1 with RX580 does HW accelerated encoding and decoding H264. But the quality of encoding is much, much less than with x264 double pass, variable bitrate at the same bitrate, especially at lower bitrates. Makes sense, because my videos are very double-pass friendly with a lot of steady shots with little noise and I think HW accelerated is 1 pass and constant bitrate.

But how about decoding? Is there also a 'better' (software) way to decode h264 or can it only be decoded in 1 way, so HW accelerated quality is the best you can get?
AMD hardware encoding can only do 1 pass, but variable bitrate. It's quality is like somewhere between the fast and very fast preset of X264. And no way near the carefully tuned 2-pass X264 encoding.

If the video favour HEVC encoding, then using HEVC hardware encode may able to improve the quality quite a bit.

However, there is nothing can replace 2-pass X264, especially at low bitrate.

For high bitrate, I found that NVENC do quite well, AMD VCE not that far away, but usually can still see the quality difference at the same bitrate. However, there is no NVENC support in macOS, what a pitty.

For decoding, there should be no quality difference between hardware / software decode.
 
Last edited:
  • Like
Reactions: roobarb!
For decoding, there should be no quality difference between hardware / software decode.

Thanks! That was the important question for me, because I got some UHD MP4 shots at just 60 Mbit/sec and they really can't use any 'decoding' degrading during editing...
 
Hi Gents,

I'm really sorry to come across like a thicko, but this this is confusing me. Martin, your advice has always been spot-on, but in this particular instance, I'm not sure what is the best and easiest way to sort this one my machine, which is using a Samsung NVME as boot volume, and Crucial MX300 2tb for most of the storage. I've previously managed to do everything to get my machine to the spec it is now (144 boot rom, Mojave, etc), but the options on doing the hardware acceleration I find so daunting, I'm not sure where to start... :(
 
Hi Gents,

I'm really sorry to come across like a thicko, but this this is confusing me. Martin, your advice has always been spot-on, but in this particular instance, I'm not sure what is the best and easiest way to sort this one my machine, which is using a Samsung NVME as boot volume, and Crucial MX300 2tb for most of the storage. I've previously managed to do everything to get my machine to the spec it is now (144 boot rom, Mojave, etc), but the options on doing the hardware acceleration I find so daunting, I'm not sure where to start... :(
Start with a supported GPU, which graphic card you are using now?
 
  • Like
Reactions: Ausdauersportler
I have a dual GPU setup (aMD NVIDIA) 10.15.7 .Following are my system specs:

CPU- Ryzen 5 3600


GPU1 - GFX0 - (NVIDIA RTX 2070) primarily for booting into windows

GPU2 - GFX 1 - (RX 580) for MACOS.
iMac Pro 1,1

Problem - GPU acceleration not working in any apps. Video encoders(Videoproc). System recognises the AMD GPU but m not getting Hardware acceleration.

Tried methods listed in this thread Not working for me

Netflix, Appletv, etc working properly. Shows Acceleration supported as per VDADecoderchecker.

Disabled Nvidia GPU via device properties method. But Audio was lost and still no GPU acceleration. Hence reverted to original setting..

My EFI folder can be viewed here :https://drive.google.com/drive/folders/1sgu1ACcS7sklrv-nUnXJ84zLvijoumUe?usp=sharing

Please Help!
 
Last edited:
I have a dual GPU setup (aMD NVIDIA) and I have installed macOS Catalina 10.15.7 as per OpenCore guide (Dortania).Following are my system specs:

CPU- Ryzen 5 3600

Motherboard - Reg strip X570-e gaming

RAM**:** Corsair Vengeance LPX 32 GB (2 x 16 GB) DDR4-2133 CL13 Memory. DOCP(3000MHz)

Guide followed - Opencore (Dortania)

GPU1 - GFX0 - (NVIDIA RTX 2070) primarily for booting into windows

GPU2 - GFX 1 - (RX 580) for MACOS.

SMBIOS - iMac Pro 1,1

SSDT - prebuilt SSDT used from Dortania guide

Problem - GPU acceleration not working in any apps. Video encoders(Videoproc). System recognises the AMD GPU but m not getting Hardware acceleration.

Tried methods listed in the thread https://forums.macrumors.com/threads/activate-amd-hardware-acceleration.2180095/ - Not working for me

Netflix, Appletv, etc working properly. Shows Acceleration supported as per OpenCore tool checker VDADecoderchecker.

Disabled Nvidia GPU via device properties method. But Audio was lost and still no GPU acceleration. Hence reverted to original setting.

Full disclosure . M a noob. I have tried all I could find online and understand.

My EFI folder can be viewed here :https://drive.google.com/drive/folders/1sgu1ACcS7sklrv-nUnXJ84zLvijoumUe?usp=sharing

Please Help!
This thread is not about hackintoshes, so I’m not sure it’s the best place to ask for help with your issues.
Good luck!
 
[For existing users, you can download the latest OpenCore 0.6.2 package at post #1314 for update]

Full HWAccel achieved now!
View attachment 892675

Everything are covered in the OpenCore threads. The step by step tutorial is at here, but I strongly recommend you go through the whole thread before you do anything.


The same method works in both Mojave and Catalina. HOWEVER, for dual processor cMP user, please stick with Mojave at this moment. (Update: please stick to Mojave for ALL who want HWAccel. CMMChris advised Apple removed HEVC HWAccel for all Polaris GPU in the latest Catalina beta. Which means you may not upgrade the OS to get any security fix, unless this is an error in beta. Stay with Mojave, get HWAccel, and keep your OS up to date seems will be a better choice at this moment)
View attachment 897287

Sidecar (and AirPlay Display) should also work, but I have no iPad to test it yet. The latest config.plist in post #594 and #1314 will now keep the cMP ident as 5,1. Therefore, will NOT activate Sidecar by default now.

------ The procedure below is depreciated, just keep in this post as a record (but I will still maintain the FAQ section to keep that up to date. Please read through the FAQ before you ask anything. Any question that already covered in FAQ won't be answered by me.). For those who don't need HEVC hardware encode, and prefer not to install OpenCore. You may still follow the procedure below to activate HWAccel ------

10.14.5 is now official. And I can confirm that AMD card users (Polaris or above) can enjoy H264 hardware encode / H264 hardware decode / and HEVC hardware decode.
View attachment 836830

The procedure is as follow: (please read through the entire Q&A section BEFORE you do anything. You should know how to recover, or may need to use alternate procedure, etc)

1) Keep SIP disabled

2) Download Lilu.kext

3) Download WhateverGreen.kext

4) open Lilu.kext (right click -> show package contents)

5) enter Contents

6) create folder "Plugins" (N.B. This folder is INSIDE Contents, please do NOT miss step 5)
View attachment 836833

7) Copy the WhateverGreen.kext into Plugins

8) Copy the whole modded Lilu kext to /Library⁩/Extensions/

9) Open terminal

10) Enter
Code:
sudo chmod -R 755 /Library/Extensions/Lilu.kext

11) Enter
Code:
sudo chown -R root:wheel /Library/Extensions/Lilu.kext

12) Enter
Code:
sudo touch /Library/Extensions

13) Enter
Code:
sudo kextcache -update-volume /
(you may get some strange return with this command, don't worry about it)

14) Enter
Code:
sudo nvram boot-args="shikigva=96 shiki-id=Mac-7BA5B2D9E42DDD94"
For Catalina, you may need to enter the no compat check boot argument as well, otherwise, you may stuck at the no boot situation until you fix the boot argument in recovery partition.

15) Reboot


FAQ, please read through this section BEFORE you ask. I won’t answer anything that already covered in this section.

Q1: Is this safe?
A: Tested since 10.14.5 beta 4, so far, no system damaged by this mod. (Update: OpenCore may write something into the cMP's firmware. So, if you want to stay safe, avoid OpenCore. And only use Lilu + WhareverGreen, or hex edit method)

Q2: Is there any down side?
A: Yes, for Lilu or hex edit method, iTunes, TV+, and Safari Netflix DRM streaming may not work, but fully download DRM movie should not be affected. And Netflix on Chromium base browsers (Chrome, Brave, Edge, etc) are OK.

DRM streaming can work flawlessly with the OpenCore method.

Q3: Any other known issue?
A: Photos app crash if HDMIAudio.kext is also installed. Besides, few more users reported system freeze. It seems only Polaris GPU is affected e.g. RX580. So far, all freeze only occur in Apple apps. e.g. FCPX, Photos, Compressor, etc. 3rd party apps such as PP, DV, VideoProc are not affected. However, Polaris GPU hwaccel seems perfectly stable in 10.14.6 beta by hex editing the AppleGVA file. Beside, Adobe Media Encoder seems will cause the video engine stall. Not system freeze / crash, but the video engine simply like stop working, perform extremely bad. Normal performance can only recover by reboot. (Update: 10.14.6 official release seems fixed most of these issue. At least, I have no way to reproduce any freeze with my RX580)

Q4: If my system crash after the mod, how to fix it?
A: For Lilu / OpenCore 0.5.5 method, NVRAM reset will remove the boot argument, and disable the kexts / OpenCore. So, will effective revert your system back to the original state. Once your system boot again, you can remove the kext / OpenCore.

For Hex edit method, I ran lots of tests, no way to crash the system. But if there is any instability, please restore the original file from your backup.

For OpenCore 0.5.6, you have to re-mount the EFI partition -> remove the BOOT and OC folder -> reset NVRAM

Q5: What's the benefit?
A: Able to play some very demanding HEVC video (e.g. this one)
https://4kmedia.org/sony-swordsmith-hdr-uhd-4k-demo/

This is how my cMP can play this video now. Smooth playback with very low CPU usage (please use a browser that support VP9 to watch all the following Youtube videos in 4k, otherwise, you may not able to read the details)

Able to edit H264 directly smoothly, no need to transcode to ProRes anymore, greatly reduce the storage speed and capacity requirement. Most likely can improve productivity as well

Able to edit HEVC directly smoothly, no need to transcode to ProRes anymore, greatly reduce the storage speed and capacity requirement. Most likely can improve productivity as well

Can greatly improve H264 export speed with low CPU usage (depends on your CPU / GPU spec)

Able to record the screen at 4k smoothly. As you can see from the above link. My cMP now can do those stuff and still record the screen smoothly at the same time.

Able to play VP9 video smoothly. My cMP now can play this 8K 24FPS youtube video with zero frame drop. (VP9 hardware decode is NOT supported in macOS up to Catalina.)

Q6: Can this work in 10.14.4 or before?
A: One user reported that latest 10.13.6 with Vega also work with Lilu mehtod. But RX580 will cause GPURestart fault, which freeze the display and make the OS unusable. (update: users reported hardware decode works, but H264 hardware encode will cause the crash)

Q7: Can this work in 10.15?
A: Not as good as 10.14. Only Lilu method, or OpenCore method work. Also, in 10.15.2, Polaris (e.g. RX580) HEVC HWAccel support is removed by Apple (WhateverGreen should fix this Polaris supportability issue. But I haven’t test it personally)

Q8: Can this work for Nvidia GPU?
A: NO

Q9: Can this work for flashed 7950 etc?
A: I don't know. Please test it for me. (Update: The answer is NO, thanks bazza5938 to perform the test)

Q10: Which software can benefit from this mod?
A: This will provide hardware acceleration at system level. So far, all my tested software works (e.g. FCPX, iMovie, Handbrake, Compressor, VideoProc, DVDFab, DV, AE, PP, FFMpeg, QuickTime Player, VLC, IINA......)

Q11: If I do a NVRAM reset due to other reason, how to regain these functions?
A: For Lilu method, repeat step 14 and reboot.

Hex edit method / OpenCore 0.5.6 (post #1314) is not affected.

For OpenCore 0.5.5 (in post #594), depends on your setup, you may need to re-bless to boot via OpenCore again.

Q12: What's the recommended GPU?
A: RX560, RX580, Vega 56, Vega 64, Vega FE. As long as that card can work on cMP, brand / model doesn’t really matter (Update: for this particular purpose, Vega is definitely better than Polaris card. There is zero crash / freeze report from Vega users yet).

Q13: Why not recommend the Radeon VII or RX570, etc.
A: AFAIK, all Polaris, Vega, Navi GPU works, I just not sure how mature the overall support is. (Update: I upgraded my GPU to Radeon VII, perfectly stable, and hardware encoding is about 100% faster than RX580. Navi's HWAccel also confirmed can be activated.)

Q14: Is this QuickSync?
A: NO, QuickSync is the hardware acceleration for Intel iGPU, not the generic term for GPU video hardware acceleration. AMD GPU use UVD (Unified Video Decoder) for decoding, and VCE (Video Coding Engine) for encoding. All this will be controlled by VideoToolBox automatically in macOS, virtually transparent to users. It's the same concept as QuickSync, but not QuickSync.

Q15: I can see that my GPU is working in Compressor before this mod (on a cMP). Is that mean I already have hardware acceleration?
A: NO, we are talking about H264 / HEVC hardware acceleration here. Not the general compute hardware acceleration. They are completely different.

Q16: How's the quality of the hardware encoded video?
A: Not as good as software encoder in general. But if at high bitrate, the difference isn't that noticeable.

Q17: When will we able to get HEVC encoding as well?
A: I don't know. But you can always boot to Windows and use HEVC hardware encode. (Update: FULL HWAccel including HEVC encoding can also be achieved by using OpenCore. Not sure how safe, but it works stably on my cMP)

Q18: How much improvement can I expect?
A: Well, depends on usage. But a quick iMovie 4K H264 export test shows a Vega 64 can reduce the export time from 6:19 to 1:25, which means reduced the export time by ~77% (on a dual X5680 cMP).

Q19: Why VideoProc shows no HEVC decode after the mod?
A: I don't know why, but this is normal in this case. My recommendation is to download demo HEVC video from the above link, and play it via QuickTime (or simply via Finder preview). As long as the CPU usage only stay around 20% (but not 800%), that means HEVC decoding is working properly.

For those who use OpenCore method, you should able to see HEVC HWAccel avail. If not there, please click the little reload icon.

Q20: Should I install the newer version of Lilu and WhateverGreen?
A: NO. Despite the newer version can work, but provide no extra function in this case, and I have no idea if the newer one has poorer stability. If I found a better way / kext to use. I will update the post accordingly. (Update: For Catalina, please install Lilu 1.4.0 and WhateverGreen 1.3.5. And so far, all newer Lilu and WEG only provide better result due to bug fix. Users should be OK to install the latest version)

Q21: I experienced system freeze, Console log shows "GPU Restart" event, what should I do?
A: PRAM reset will bring your system back to normal. If you are with Polaris GPU (RX560, RX570, RX580, etc), it seems some people are affected by this bug. What I found is an alternate method by directly hex edit the AppleGVA file seems more stable for these GPUs. Initial test shows very safe to do so, even I completely destroy the AppleGVA file, the OS can still boot to desktop. If you prefer to go this route, please make sure you know how to restore the file (or even completely recover from an unbootable OS). The info is at post #205. (update: 10.14.6 shows extremely good stability, highly recommended for RX580 users)

Q22: How do I know if hardware acceleration is really working?
A: My suggestion is by using Terminal. Detail info in post #273. You may also use OpenGL Driver Monitor to observe the UVD / VCE activities (link).

Q23: Can I use this mod with MVC flashed RX580?
A: I can't test it, and no report yet, but should work. Since this mod won't touch the ROM, safe to try anyway.

Q24: Is it possible to turn OFF hwaccel without reboot. So that I can enjoy DRM streaming anytime?
A: Only the alternate method allow ON/OFF on the fly. If you don't want to use terminal / Finder to do that every time, you can make two simple apps to do that, procedures at here. (Update: My OpenCore package should allow you to play DRM streaming video by default)

Q25: Does background rendering still works in FCPX?
A: Background rendering still works for both methods. This is completely independent to hwaccel. I turned that off in the above demo is just to illustrate the real time timeline editing performance. Not because of it can't work.

Q26: I tried the hex edit method many many times, it doesn't work, but I am sure I did everything right. What should I do?
A: May be you should try open a new user profile, and see if it help (reference link)

Q27: Why the "Graphics" in VideoProc HWAccel page shows N/A?
A: No idea, but it's just a cosmetic error in this case. (Update: It seems VideoProc looking for the key word "AMD". e.g. If the card ident as AMD Radeon VII, VideoProc can show it properly. But if the card ident as Radeon VII, then VideoProc can't show its name)
View attachment 944349
View attachment 944350

Q28: Why VideoProc shows that I am use "Intel "HWAccel when converting videos?
A: Also no idea, but again, it's just a cosmetic error in this case.

Q29: Why VideoProc shows nothing activated but everything seems working as expected?
A: As long as you can see this tick, which mean HWAccel is activated. From my observation, this tick always change automatically.
View attachment 891504

For the Hardware Info Detected page, please click the little reload icon in order to let VideoProc to show you the latest status.
View attachment 891505
Q30: will this work on 6,1?
A: Only via eGPU (Polaris or higher).

Q31: will this work on 3,1?
A Yes (link)

Hi I did the method to the letter but only manage to get H264 acceleration and not HEVC. I’m using Mac Pro 5,1 (flashed from 4,1) two 3.46 xeons 96gb ram, boot drive nvme on Mojave and Radeon VII. Any suggestions on how to get HEVC to work?

many thanks
 
Hi I did the method to the letter but only manage to get H264 acceleration and not HEVC. I’m using Mac Pro 5,1 (flashed from 4,1) two 3.46 xeons 96gb ram, boot drive nvme on Mojave and Radeon VII. Any suggestions on how to get HEVC to work?

many thanks
q19 there
 
Hi guys. Following post #1314 and get to step in the video to bless the opendore efi file and I get this error. Any idea what I've done wrong?
Can't statfs /Volumes/EFI/EFI/OC/OpenCore.efi
Thanks

The EFI folder in question is on an NVMe drive / one previous attempt worked fine but wouldn't boot. Reset NVRAM, booted from backup drive (sata ssd) then turned off SIP again and deleted EFI folder and started again)
(5,1 dual/Mojave .6)
 
Well, I've decided I need to 'grow a pair' and do this today! I'm nervous, and wish to clarify a few points...

To disable SIP, do I need to boot from recovery mode on a memory stick?
Do I need to put my old GTX580 graphics card back in, in order to see whats going on during the boot process, and to select the boot drive / recovery mode?
Where can I find ROMtool?
I've installed the Opencore software on my Time Machine drive, as previously suggested by Martin.
Assuming I've disabled SIP, do I then reboot normally from the NVME boot drive, and then run the Opencore software?

Sorry if some of these questions are daft, but some of the instructions in post #1314 leave me wondering about the above questions.

Many thanks,

Mike.
 
Well, I've decided I need to 'grow a pair' and do this today! I'm nervous, and wish to clarify a few points...

To disable SIP, do I need to boot from recovery mode on a memory stick?
Do I need to put my old GTX580 graphics card back in, in order to see whats going on during the boot process, and to select the boot drive / recovery mode?
Where can I find ROMtool?
I've installed the Opencore software on my Time Machine drive, as previously suggested by Martin.
Assuming I've disabled SIP, do I then reboot normally from the NVME boot drive, and then run the Opencore software?

Sorry if some of these questions are daft, but some of the instructions in post #1314 leave me wondering about the above questions.

Many thanks,

Mike.
1) You do do that in recovery partition, no need to create another USB installer

2) No, recovery partition has its own GPU driver. Boot screen isn’t required.

3) Google “ROMTool Dosdude”

4) If you have my OpenCore package running. You should see a boot picker on every boot, and you can pick the OS you want from there. OC will obey your selection in system preferences -> startup disk. You can select you default boot drive at there, but it’s not mandatory.
 
Thank you Martin, it all seems to have worked fine! :)

Only thing is, VideoProc displays the hardware as being 4K enabled, and HVEC enabled, so all looks great there. But, exporting in FCP still seems to be really slow in exporting 4K videos. I'm running FCP 10.4.1

Thanks again though!! Seems I was scared for no reason.

EDIT... It seems to me that perhaps the FCP version is too old?? I tried exporting a movie from iMovie, and that was extremely fast!
 
Last edited:
  • Like
Reactions: h9826790
Register on MacRumors! This sidebar will go away, and you'll see fewer ads.