Contribute
Register

Radeon Compatibility Guide - ATI/AMD Graphics Cards

Is there a reason why you're not using iMac 19,1 instead with iGPU enabled? Seems like a better choice for your config. I know it might be due to the Radeon VII you stuck with iMac Pro 1,1.

DRM on my end works perfectly on Amazon Prime, Netflix, etc. both in Chrome and Safari, fwiw.

There were multiple reason...
  • It seemed like there were no compromises when using iMacPro1,1.
  • None of the iMac17,x-19,x system definitions had consistent, working DRM.
  • Booting was easier with IGPU disabled on my Z390. (issue related to lack of NVRAM on Z390 which has improved drastically.)

I am currently booted in with iMacPro1,1 system definition and IGPU enabled. I can confirm that:
  • DRM continues to work. (Apple TV app streaming, Amazon Prime streaming in Safari)
  • IGPU is indeed enabled and seen with IORegistryExplorer. (self configured ig-platform-id is 3E91003)
  • VideoProc shows H.264 and HEVC available and working.
 
Last edited:
I am currently booted in with iMacPro1,1 system definition and IGPU enabled. I can confirm that:
  • DRM continues to work. (Apple TV app streaming, Amazon Prime streaming in Safari)
  • IGPU is indeed enabled and seen with IORegistryExplorer. (self configured ig-platform-id is 3E91003)
  • VideoProc shows H.264 and HEVC available and working.

I already tested iMacPro1,1 with iGPU enabled before and everything worked fine including TV+ app. Anyway, I disabled iGPU to see if iMacPro1,1 will use the RX 580 encoder to encode 300MB video and here are the results. I used Handbrake to encode the video.

h.264 encoder (VideoToolbox):
- Time from 8:24:42 to 8:27:10
- 2 minutes 38 seconds to complete
- GPU is 10% and CPU is 45-50%

h.264 encoder
- Time from 8:30:53 to 8:36:56
- 6 minutes 3 seconds to complete
- GPU is negligible while CPU is at 95%

The left graph is GPU and the right graph is CPU.
Screen Shot 2019-11-12 at 8.44.39 AM.png
Screen Shot 2019-11-12 at 8.44.56 AM.png


Is there anyway to get encoder to use full RX power?
 
here you are.
Z390 - 9900K - RX580 - SMBIOS 19.1
 

Attachments

  • Screenshot 2019-11-12 at 16.22.07.png
    Screenshot 2019-11-12 at 16.22.07.png
    53.7 KB · Views: 84
  • Screenshot 2019-11-12 at 16.22.43.png
    Screenshot 2019-11-12 at 16.22.43.png
    584.8 KB · Views: 74
Is there anyway to get encoder to use full RX power?


@remington,

The latest version of FCPX (10.4.7) allows you to select which GPU you want to use for rendering.
Adobe CC2020 Apps also now allow you to select both GPU and API to use for rendering.

Apps such as VideoProc and Handbrake use the Apple VideoTool box API and in most cases will attempt to use IQS or T2.

Cheers
Jay
 
The latest version of FCPX (10.4.7) allows you to select which GPU you want to use for rendering.
Adobe CC2020 Apps also now allow you to select both GPU and API to use for rendering.

They're pricey and more suited for professional videographers. Are there other apps that are free or not too expensive that takes full advantage of RX?
 
I already tested iMacPro1,1 with iGPU enabled before and everything worked fine including TV+ app. Anyway, I disabled iGPU to see if iMacPro1,1 will use the RX 580 encoder to encode 300MB video and here are the results. I used Handbrake to encode the video.

h.264 encoder (VideoToolbox):
- Time from 8:24:42 to 8:27:10
- 2 minutes 38 seconds to complete
- GPU is 10% and CPU is 45-50%

h.264 encoder
- Time from 8:30:53 to 8:36:56
- 6 minutes 3 seconds to complete
- GPU is negligible while CPU is at 95%

The left graph is GPU and the right graph is CPU.
View attachment 435633 View attachment 435634

Is there anyway to get encoder to use full RX power?

I don't know of any way to force Handbrake to use more GPU.
 
They're pricey and more suited for professional videographers. Are there other apps that are free or not too expensive that takes full advantage of RX?

@remington,

Unfortunately no, Apps such as Handbrake, VideoProc .. etc all pass the video encode/decode function straight to the Apple VideoToolBox API/Framework, that API then decides which device it will use. This simplifies things greatly for the App developer as they do not have to write their own rendering engines. Thats why most of the free/low cost video apps all basically have the same features.

You can find more about the VideoToolBox API/FrameWork on the Apple Developer Web Site :-

https://developer.apple.com/documentation/videotoolbox

If your CPU has a IGPU and you configure it as "Headless" in most cases MacOS will use IQS to do H264/H265 encoding and decoding (H265 is only supported on Skylake and later). IQS is an integral feature of MacOS and is used by the system at a low level for many other things such as Airplay, SideCar .. JPG previews in Finder ..etc.

It is important to use a SMBIOS that supports "Headless" IGPU configuration if you want to do this.

IQS generally does a very good job of encoding, it will be faster and better quality than using the RX 580.

Pro Level Apple Hardware such as the iMac Pro and more current MacBook Pro models move H264/H265 encode/decode on to Apple's custom T2 chip.

Cheers
Jay
 
Last edited:
here you are.
Z390 - 9900K - RX580 - SMBIOS 19.1
which software is this which shows Bothe igpu and dgpu? with my i7800k and rx570 SMBIOS 19,1 No DRM contents works in Safari but Chrome it works also only H265 encode works with videotoolbox codec h264 freezes Handbrake ifI use videotoolbox codec. what is the correct ig platform id that will solve this for my system? I have tried using 0x3E920003 or 0x3E910003 or 0x3E980003
 
One thing to note: 10.15 added configuration keys to the VideoToolbox decoder/encoder sessions that lets you specify which hardware device to use. I need to do some experimentation to see how it works with headless iGPU setups (since it seems to be based on Metal registry ids) but in theory apps can now let you choose which device to use.

I'm sure it'll take a good while before software is updated to take advantage of it, especially since it seems Apple just silently added it without really mentioning it.
 
One thing to note: 10.15 added configuration keys to the VideoToolbox decoder/encoder sessions that lets you specify which hardware device to use. I need to do some experimentation to see how it works with headless iGPU setups (since it seems to be based on Metal registry ids) but in theory apps can now let you choose which device to use.


@zakklol,

Thats very interesting news ... will have a look into it myself when i get time ...

Cheers
Jay
 
Back
Top