MBP i9 and Handbrake w/VideoToolbox

Discussion in 'Mac Apps and Mac App Store' started by Allistah, May 1, 2019.

  1. Allistah macrumors member

    Allistah

    Joined:
    Apr 19, 2019
    Location:
    Bay Area, CA
    #1
    Hey all --

    Question for other people that have a 2018 i9 MBP and the latest versions of Handbrake v1.2.2. On a 2017 MBP with a 2.2 i7 and 560X, I got two options for video encoders. One was the H.264 (VideoToolbox) and the other is H.265 (VideoToolbox).

    On this i9 with a Vega 20, I only get the H.265 (VideoToolbox) option. Is this expected? I was hoping to use the H.264 option for some encoding but it's not showing up.

    Any info, tips, or pointers would be appreciated!
     
  2. Allistah thread starter macrumors member

    Allistah

    Joined:
    Apr 19, 2019
    Location:
    Bay Area, CA
    #2
    I'm wondering if the H.264 (VideoToolbox) option is not showing up because it is not supported on the Vega 20.

    What is also confusing is that I thought it was there T2 chip in the MBP that was doing the hardware encoding, not the GPU. Who knows, maybe there is a problem with this laptop and I need to return it for another one.
     
  3. treekram macrumors 68000

    Joined:
    Nov 9, 2015
    Location:
    Honolulu HI
    #3
    H.264 (VideoToolbox) is available on non-T2 Macs so I think it's using Intel QuickSync? And maybe the Vega 20 configurations don't use the Intel iGPU at all? I think I read that - it should be easy enough to find out doing a web search. H.265 (VideoToolbox) is the one that uses T2. Interestingly enough, H.265 (VideoToolbox) does show up on one of my computers without the T2 (has error in trying to do it) but in earlier versions it didn't.

    The Apple VideoToolbox isn't very flexible. HandBrake when using the other encoders will typically have constant quality and vary the bitrate. It can't do that with the VideoToolbox encoders. So while you get very fast encoding, what I found for 132 videos that I encoded using H.265 x265 vs. VideoToolbox was that the VideoToobox file was on average, over twice the file size with the quality being very slightly better with VideoToolbox (quality RF=21, which can be increased using the x265 encoder). These were 1080p videos. So just test out the videos you want to encode and check the file sizes. To compare quality, I used psnr and ssim using the ffmpeg software. For me, trying to subjectively judge quality between the two encoders at default settings was an exercise in futility as I would try too hard to spot differences and I would get confused as to whether saw was better quality or not.
     
  4. Allistah thread starter macrumors member

    Allistah

    Joined:
    Apr 19, 2019
    Location:
    Bay Area, CA
    #4
    Thanks for the reply. I just returned the i9 MBP with the Vega 20. I need to rethink what I need and buy when I know I’m ready. Couldn’t stomach keeping a $4k MBP that didn’t have the value there. I have a mid 2012 2.6 i7 w/16gb and 1tb that runs fast and great - it’s just heavy.

    Thanks for the reply! I’ll just encode the regular way for now. Sounds like Apple screwed up a potentially great thing by limiting its use so much. Really unfortunate.
     
  5. leman macrumors G3

    Joined:
    Oct 14, 2008
    #5
    I have i9 with Vega Pro 20 and I see both options in Handbrake.
    --- Post Merged, May 2, 2019 ---
    What exactly are they limiting?
     
  6. Allistah thread starter macrumors member

    Allistah

    Joined:
    Apr 19, 2019
    Location:
    Bay Area, CA
    #6
    Wow, I wonder why the machine I had wouldn’t show the H.264 (VideoToolbox) option then. I wonder if there was a problem with that machine. It doesn’t matter at this point as I returned the machine last night.

    What is Apple limiting? From what I’ve read in other threads and this one, Apple doesn’t let people change many options at all with its hardware encoder and people are finding out that even though it is lightning fast, it doesn’t do a good job at all with file size - really unfortunate. I would rather the process take longer to get a good quality with a smaller file size than the same quality encoded much faster that has a much larger file size.
     
  7. leman macrumors G3

    Joined:
    Oct 14, 2008
    #7
    Do other platforms allow more flexibility with hardware encoders? lack of flexibility is a general thing of hardware encoders, as far as I know. You gain speed but you lose flexibility.
     
  8. Allistah thread starter macrumors member

    Allistah

    Joined:
    Apr 19, 2019
    Location:
    Bay Area, CA
    #8
    I can’t say I know the answer to that question. It would be a really cool thing if they let you have some control over the hardware encoder though.
     
  9. treekram, May 2, 2019
    Last edited: May 2, 2019

    treekram macrumors 68000

    Joined:
    Nov 9, 2015
    Location:
    Honolulu HI
    #9
    For the main encoders in HandBrake - the H.264 and H.265 (and the higher-bit variations), you can keep the quality (a measure of the fidelity to the original) but vary the bit rate. So in sequences where not much is happening in the video (if the video is showing a photograph for a few seconds), the bit rate decreases (not a problem if you're showing a static image). Currently in VideoToolbox, you can vary the bitrate, but the bitrate applies to the whole video - there is no algorithm to vary it. The former scenario results in a smaller file for the same quality (again, that means fidelity to the orignal). For H.265 and VideoToolbox, they're both Apple-proprietary so there are no other options there. For H.264 and VideoToolbox, if I recall correctly (if you want to do a web search to confirm or correct, please do so), the Apple OS controls access to the Intel QuickSync encoder available for the past few years in Intel iGPU's and what Apple allows a developer to do is less than what is available in other OS's (Windows is best in this regard, Linux has some limitations, not as much as macOS).

    So yes, generally hardware encoders are less flexible, but Apple makes it even less so.

    You really need to test out the video(s) that you want to encode to see how it works out. My H.265 encoding adventure mainly involved 1080p videos. I noticed for lower-resolution videos, somewhat for 720p but very much so for 540p, the size discrepancy got even worse with the VideoToolbox. It may be that for higher resolution videos, it works better - I don't know.
     
  10. leman macrumors G3

    Joined:
    Oct 14, 2008
    #10
    Thanks for the explanation! It sounds like Apple should really improve their APIs there. I hope you guys are submitting support tickets :)
     

Share This Page

9 May 1, 2019