• Become a Premium Member for $25/year with no ads to improve your community experience.

GUIDE How to Enable H.264 and HEVC/H.265 encoding on macOS

Your results are as expected since in the Compressor settings, you did NOT UNCHECK the "Allow Frame reordering" as I had suggested.
That box should have no check mark (see my screenshot in post #63 above).
Ah, my bad. This is my screenshot taken before you came in and reply in this thread. I reused that.
But I already uncheck that box when testing
 
Ah, my bad. This is my screenshot taken before you came in and reply in this thread. I reused that.
But I already uncheck that box when testing
OK. From your last PR files from #38, it looks like your iGPU was still enabled. The IOREG file clearly shows the IGPU device...that is, you have a Sandybridge HD2500 device in macOS and it has NOT been disabled.
Because it has not been disabled, macOS will first try to use that for HEVC but HD 2500 does not support HEVC.
The iMacPro1,1 model ID that you are using does not have an IGPU.

Your motherboard supports i5 3450 and is "modern enough" so should support switching OFF the IGPU in BIOS.
EDIT:
If you cannot disable the IGPU from the BIOS, then add to the boot-args -wegnoigpu
 
Last edited:
  • Like
Reactions: KVyDavid
OK. From your last PR files from #38, it looks like your iGPU was still enabled. The IOREG file clearly shows the IGPU device...that is, you have a Sandybridge HD2500 device in macOS and it has NOT been disabled.
Because it has not been disabled, macOS will first try to use that for HEVC but HD 2500 does not support HEVC.
The iMacPro1,1 model ID that you are using does not have an IGPU.

Your motherboard supports i5 3450 and is "modern enough" so should support switching OFF the IGPU in BIOS.
EDIT:
If you cannot disable the IGPU from the BIOS, then add to the boot-args -wegnoigpu
Thanks for your instructions. I’ve disabled my iGPU using boot-args (my BIOS doesn’t give me the option to disable it :)))) as you’ve told but I don’t know why it still uses my CPU for HEVC encoding 😤
 
Thanks for your instructions. I’ve disabled my iGPU using boot-args (my BIOS doesn’t give me the option to disable it :)))) as you’ve told but I don’t know why it still uses my CPU for HEVC encoding 😤

Post the latest PR files after making the suggested changes.

What make is the motherboard/system ?
It may not have an explicit setting to switch off the IGPU and may have another setting which switches off the IGPU indirectly.

What version of FCPX/Compressor are you using ?
 
What make is the motherboard/system ?
What do you mean? 🤔

It may not have an explicit setting to switch off the IGPU and may have another setting which switches off the IGPU indirectly.
I don’t know why my Dell Vostro 270s doesn’t have any settings related to iGPU in the BIOS so I have to turn in off using boot-args

What version of FCPX/Compressor are you using ?
I’m using the latest version of FCPX and Compressor

I’ll post my PR files once I get home
 
Here're my PR files
 

Attachments

  • PR.zip
    7.3 MB · Views: 1
Here're my PR files

Looks better.
OK so you have a Dell Vostro 270 system.
Adding boot-args -wegnoigpu has now disabled the IGPU so no need to worry about disabling it from the BIOS.

But you also need to add unfairgva=5 to boot-args
Try it.
 
Looks better.
OK so you have a Dell Vostro 270 system.
Adding boot-args -wegnoigpu has now disabled the IGPU so no need to worry about disabling it from the BIOS.

But you also need to add unfairgva=5 to boot-args
Try it.

I tried adding that boot-args and Compressor now uses my GPU to encode HEVC when I choose export settings as below. Thanks!

But Compressor doesn't use my GPU when I choose encoder type as slow or tick "Allow frame reordering" box. is there a way to fix that also?
 

Attachments

  • Screen Shot 2023-01-04 at 9.26.48 PM.png
    Screen Shot 2023-01-04 at 9.26.48 PM.png
    59.1 KB · Views: 2
I tried adding that boot-args and Compressor now uses my GPU to encode HEVC when I choose export settings as below. Thanks!

But Compressor doesn't use my GPU when I choose encoder type as slow or tick "Allow frame reordering" box. is there a way to fix that also?

Setting "Encoder Type" to any setting should work as long as "Allow frame reordering" is not checked.
HEVC Encoding only works with "Allow frame reordering" disabled and I do not know of any work around.

As I said before, the file size of HEVC output is actually MUCH larger than H.264 so as far I am concerned (even though encoding works) it is not practical is real world use.

HEVC Decoding works very well.
 
Setting "Encoder Type" to any setting should work as long as "Allow frame reordering" is not checked.
HEVC Encoding only works with "Allow frame reordering" disabled and I do not know of any work around.

As I said before, the file size of HEVC output is actually MUCH larger than H.264 so as far I am concerned (even though encoding works) it is not practical is real world use.

HEVC Decoding works very well.
I tried exporting a video to H.264 and HEVC with the same bitrate (50000kbps) and the file size is the same. I don't know why H.264 output a file with slightly lower bitrate, so its file size is a little smaller

But HEVC can use half the bitrate and still output the same quality as H.264 with double the bitrate. So I export that video again in HEVC with 25000 kbps bitrate. Its file size is smaller by almost 50%

But I don't know why choosing encoder type to Slower just use my GPU by a few %, while my CPU is at 100%. So I have to choose Fast
 

Attachments

  • Screen Shot 2023-01-05 at 8.08.51 AM.png
    Screen Shot 2023-01-05 at 8.08.51 AM.png
    58.1 KB · Views: 2
  • Screen Shot 2023-01-05 at 8.09.12 AM.png
    Screen Shot 2023-01-05 at 8.09.12 AM.png
    57.8 KB · Views: 2
  • Screen Shot 2023-01-05 at 9.16.08 AM.png
    Screen Shot 2023-01-05 at 9.16.08 AM.png
    65.9 KB · Views: 2

Forum statistics

Threads
1,518
Messages
14,474
Members
22,003
Latest member
Szejmass