Contribute
Register

Quick Sync hardware encode w/ nVideo card as primary

Status
Not open for further replies.
Now another question, h.264 hardware encode works, but Compressor thinks that I don't have the hardware for HEVC 8-bit encode (10-bit is software and is painfully slow). I tried changing my Mac model from 13,1 to 18,3, board-id and other stuffs like serial number (which is a pain for me, many paid softwares are registered to that Mac Pro serial) to no avail. Anyone know what Compressor is using to determine my hardware capabilities?

Here is some console log when I select HEVC 8-bit in compressor, not sure if that helps:

Edit: I removed other logs, since I found that only the following entry is relatival.

Error loading /System/Library/Video/Plug-Ins/VCPHEVC.bundle/Contents/MacOS/VCPHEVC: dlopen(/System/Library/Video/Plug-Ins/VCPHEVC.bundle/Contents/MacOS/VCPHEVC, 262): no suitable image found. Did find:

/System/Library/Video/Plug-Ins/VCPHEVC.bundle/Contents/MacOS/VCPHEVC: no matching architecture in universal wrapper

/System/Library/Video/Plug-Ins/VCPHEVC.bundle/Contents/MacOS/VCPHEVC: no matching architecture in universal wrapper

Double click VTEncoderXPCService from Activity Monitor, if only found VCPHEVC means that software encoding, if AppleGVAHEVCEncoder also show up then HW HEVC encoder is ready but may or may not used by apps.

Don’t expect IQSV HEVC encoding have very good performance, export a 123 minutes 1080p H264 to 1080p HEVC from QuickTime, basically, performance is poor, need more than 2 hours, may be AppleGVAHEVCEncoder is immature.

See attached png, pure QSV HEVC encoding result.
 

Attachments

  • KBL HEVC encoding.png
    KBL HEVC encoding.png
    1.2 MB · Views: 386
Are you guys trying to activate Quick Sync because you just want to enable everything possible for the completist endorphin rush, or do you really wish to use Quick Sync for FCPX exporting? Because Quick Sync was designed to be fast and decent, not high quality. It’s meant for real-time video calls, where quality is happily traded off for less lag. For FCPX exporting, Quick Sync results in significantly lower quality video than letting your real GPU handle the encoding. I keep seeing FCPX guys here trying to get Quick Sync working even when they have a killer GPU like an RX580 — please tell me what I’m missing here.
 
Quick Sync is also needed to enable AirPlay.
 
Are you guys trying to activate Quick Sync because you just want to enable everything possible for the completist endorphin rush, or do you really wish to use Quick Sync for FCPX exporting? Because Quick Sync was designed to be fast and decent, not high quality. It’s meant for real-time video calls, where quality is happily traded off for less lag. For FCPX exporting, Quick Sync results in significantly lower quality video than letting your real GPU handle the encoding. I keep seeing FCPX guys here trying to get Quick Sync working even when they have a killer GPU like an RX580 — please tell me what I’m missing here.

Ok if thats the case they why is FCP so dependent on Quick Sync for decently fast exports? Is there a way to make FCP use the GPU as the encoder? I have a GTX 960 (thinking of upgrading to a 1060/1070 at some point) would it make a difference to have FCP using it over Quick Sync?
 
Maybe PCIe NVME play a big part? I have a small NVME for my fusion drive, and if I put a master file there and use compressor to encode immediately, it's about 30% faster than my usual SATA SSD scratch drive. I am tempting to get another NVME just for that purpose.

It's possible but when my MacBook Pro with the NVME was doing the export It also has the massive bottle neck of accessing the data from over the network. I think that would make a bigger difference then if the SSD was NVME or not, but I could be wrong.
 
Thanks for the advice, now back to the drawing board. The hardware acceleration available was GTx driver all along, no AppleGVAHEVEncoder anywhere.

Interesting though, my Airplay display mirroring is working fine, and h265 films do play smooth with Quicktime and use minimal CPU resources.

To be honest, I am just trying to be complete.

Double click VTEncoderXPCService from Activity Monitor, if only found VCPHEVC means that software encoding, if AppleGVAHEVCEncoder also show up then HW HEVC encoder is ready but may or may not used by apps.

Don’t expect IQSV HEVC encoding have very good performance, export a 123 minutes 1080p H264 to 1080p HEVC from QuickTime, basically, performance is poor, need more than 2 hours, may be AppleGVAHEVCEncoder is immature.

See attached png, pure QSV HEVC encoding result.
 
Thanks for the advice, now back to the drawing board. The hardware acceleration available was GTx driver all along, no AppleGVAHEVEncoder anywhere.

Interesting though, my Airplay display mirroring is working fine, and h265 films do play smooth with Quicktime and use minimal CPU resources.

To be honest, I am just trying to be complete.

Nvidia GPU does not have build in GVA encoder/decoder in macOS, if you have try 4k@60 75.8Mbps bitrate HEVC clip, you will know the different.

AppleGVAHEVEncoder will show up when apps perform HW HEVC encoding.
AppleGVAHEVDecoder will show up when apps implement HW HEVC decoding.
VCPHEVC show up means apps use OpenGL or Metal driver to perform decoding / encoding.
 
I keep seeing FCPX guys here trying to get Quick Sync working even when they have a killer GPU like an RX580 — please tell me what I’m missing here.

IQSV is very useful for NV GPU user, it does not have build in GVA decoding/encoding in macOS. For RX 4XX user like me, AMD build in GVA HEVC decoding/ encoding are very good, therefore most of time I disable IGPU, IQSV is not so useful for me.

BTW, Have you enable your RX580 HW HEVC decoding/ encoding feature?
 
Ok if thats the case they why is FCP so dependent on Quick Sync for decently fast exports? Is there a way to make FCP use the GPU as the encoder? I have a GTX 960 (thinking of upgrading to a 1060/1070 at some point) would it make a difference to have FCP using it over Quick Sync?

FCPX is optimized for ATI/AMD GPUs because they are typically superior to Nvidia GPUs when it comes to OpenCL (and now with High Sierra, Metal) performance. If FCPX plays a big role in your life, you are better off with an ATI/AMD GPU, which will give you all the exporting speed you need along with the professional grade video quality which is missing from Quick Sync.

I'm not saying everyone with an Nvidia GPU made a mistake. I'm just saying that Nvidia cards don't work as well with FCPX as ATI/AMDs do, so that's why you're seeing poor performance. The remedy isn't Quick Sync, it's swapping out your GPU for the hardware FCPX was designed to best work with. FCPX is capable of state of the art video, why throw all that quality way with Quick Sync exporting?
 
Status
Not open for further replies.
Back
Top