Contribute
Register

Quick Sync hardware encode w/ nVideo card as primary

Status
Not open for further replies.
Joined
Feb 9, 2012
Messages
51
Motherboard
Gigabyte Z370 Gaming 3
CPU
i7-8700
Graphics
RX590
Mac
  1. MacBook Pro
  2. Mac mini
Mobile Phone
  1. Android
  2. iOS
Hardware info:
Gigabyte Aorus Z370 Gaming 3
Intel 8700 w/ UHD 630
nVidia GTx 980

Everything works, I can plug my monitors to any port on the GTx 980 and the motherboard, or all at once. But I have 2 monitors, naturally I would have them on the GTx 980. However, unless I have a display connected to UHD 630 as the only display, I don't get Quick Sync hardware acceleration for encode and decode. It's mighty annoying as I have to rearrange the monitors every time I want to encode HEVC or watch h.265 films ripped in 10 bit.

Any advice? Thanks a million in advance
 
You should be able to do this using a SSDT for your processor. I am by no means and expert on this but maybe @toleda can help.
 
Another thing to note is that Airplay Mirroring only work when a display is connected to UHD 630 as the primary and only display. The mirror option doesn't show up in any other configuration. With my Z77 i7-3770 GTx 980 system, I just need to enable HD4000, i.e. see it in system profiler, for Airplay Mirroring, even no monitor is connected to HD4000.

I also discovered that although MacX say you have hardware acceleration and Compressor let you choose HEVC, sometimes it doesn't mean you really have it. Sometimes it will just kernel panic as soon as you start the encode/decode. This behaviour has to do with ig-platform-id, I noticed it when I was experimenting with different ig-platform-id.
 
Last edited:
With i7-3770(K) and iMac13,2 system definition, you can use ig-platform-id "0x01620007"

With i7-6700(K) and iMac17,1 system definition, you can use ig-platform-id "0x19120001"

With i7-7700(K) and iMac18,3 system definition, you can use ig-platform-id "0x59120003"

With i7-8700(K) and iMac18,3 system definition, you can use ig-platform-id "0x59120003"

These ig-platform-ids are "headless" settings meaning that they will not work with a monitor plugged in to them. Remember to enable Inject Intel. This setting will enable Quick Sync.

*i7-7700(K) and i7-8700(K) also needed Lilu.kext and IntelGraphicsFixup.kext to be installed.
 
Last edited:
With i7-3770(K) and iMac13,2 system definition, you can use ig-platform-id "0x01620007"

With i7-6700(K) and iMac17,1 system definition, you can use ig-platform-id "0x19120001"

With i7-7700(K) and iMac18,3 system definition, you can use ig-platform-id "0x59120003"

With i7-8700(K) and iMac18,3 system definition, you can use ig-platform-id "0x59120003"

These ig-platform-ids are "headless" settings meaning that they will not work with a monitor plugged in to them. Remember to enable Inject Intel. This setting will enable Quick Sync.

*i7-7700(K) and i7-8700(K) also needed Lilu.kext and IntelGraphicsFixup.kext to be installed.

Ok, so I went and added "0x59120003" as my ig-platform-id and installed Lilu.kext and IntelGraphicsFixup.kext Still not having any luck. System will not recognize or use the IGPU. I even tried a 3min export from FCP and the system did not feel like it was using Quick Sync.

Attached is my config.plist and a screenshot of Intel Power Gadget during the export. Any ideas?

Thanks!
 

Attachments

  • Screen Shot 2018-01-04 at 11.29.18 PM.png
    Screen Shot 2018-01-04 at 11.29.18 PM.png
    225.6 KB · Views: 1,498
  • config.plist
    8.2 KB · Views: 515
Try adding shiki.kext with this config.plist. Also, is AirPlay enabled for you?
 

Attachments

  • config.plist
    8.4 KB · Views: 751
Thank you very much everyone! I used ig_platform_id 0x59120003 and part of pastrychef's config.plist to enabled Quick Sync.

After successful headless enable, IGPU won't be shown in System Profile, but if you open up MacX Video Convertor, hardware acceleration is supported. To confirm Quick Sync is really working, I play a HEVC 10 bit file with Quicktime, which I had trouble playing 100% smoothly before even the computer wasn't really doing anything else. Now I can play that file without any issues even if I use software encoding at the same time using Handbrake deliberately hogging all the CPU resources.

Airplay display mirroring is also available.

Attached is a screen shot of my kexts and my clover configs, config_20180106.plist is what didn't work, and config.plist is the current one.

Thanks again, and hope my files would help as well.

Cheers
Kenneth

With i7-3770(K) and iMac13,2 system definition, you can use ig-platform-id "0x01620007"

With i7-6700(K) and iMac17,1 system definition, you can use ig-platform-id "0x19120001"

With i7-7700(K) and iMac18,3 system definition, you can use ig-platform-id "0x59120003"

With i7-8700(K) and iMac18,3 system definition, you can use ig-platform-id "0x59120003"

These ig-platform-ids are "headless" settings meaning that they will not work with a monitor plugged in to them. Remember to enable Inject Intel. This setting will enable Quick Sync.

*i7-7700(K) and i7-8700(K) also needed Lilu.kext and IntelGraphicsFixup.kext to be installed.

Screen Shot 2018-01-06 at 6.07.34 AM.png
 

Attachments

  • config_20180106.plist
    7 KB · Views: 505
  • config.plist
    7.1 KB · Views: 698
It's also critical to apply the DSDT patch GFX0->IGPU

<key>Comment</key>
<string>Rename GFX0 to IGPU</string>
<key>Disabled</key>
<false/>
<key>Find</key>
<data>
R0ZYMA==
</data>
<key>Replace</key>
<data>
SUdQVQ==
</data>
 
Status
Not open for further replies.
Back
Top