From 2d5a43d1836ba902b15524913139fe6b68559662 Mon Sep 17 00:00:00 2001 From: Damiano Galassi Date: Tue, 28 Dec 2021 13:25:17 +0100 Subject: [PATCH] docs: en: Add VideoToolbox options. --- .../technical/video-videotoolbox.markdown | 39 ++++++++++++++++++- 1 file changed, 37 insertions(+), 2 deletions(-) diff --git a/source/docs/en/latest/technical/video-videotoolbox.markdown b/source/docs/en/latest/technical/video-videotoolbox.markdown index cf13e2d7..8d974aba 100644 --- a/source/docs/en/latest/technical/video-videotoolbox.markdown +++ b/source/docs/en/latest/technical/video-videotoolbox.markdown @@ -18,7 +18,7 @@ Apple VideoToolbox ## Supported hardware -- Most 2015 and later Macs +- Most 2011 and later Macs Please note, these are not hard limits. Hardware encoding via VideoToolbox *might* work on older series GPUs and older operating systems, but this is not officially supported. @@ -28,6 +28,7 @@ If your computer is supported you will see one or more of the following video en - H.264 (VideoToolbox) - H.265 (VideoToolbox) +- H.265 10bit (VideoToolbox) Choice of the underlying hardware encoder (AMD VCE or Intel Quick Sync Video) is not available. The highest quality option will typically be chosen. @@ -39,4 +40,38 @@ It is common, particularly on lower-end hardware, for the CPU to be a bottleneck ## Advanced options -There are no advanced options available for VideoToolbox encoders. +The VideoToolbox encoder has a limited set of advanced encoder options. Generally speaking, it is not recommended to change these parameters, as the built-in presets offer a good range of options for common uses. + +If using HandBrake’s graphical interface, you can set the options in the `Advanced Options` field on the `Video` tab in the following format: + + option1=value1:option2=value2 + +If using HandBrake’s command line interface, use the `--encopts` parameter as follows: + + --encopts="option1=value1:option2=value2" + +### Option value types + +The following value types are supported (each option only accepts one value type): + +- integer + A number that can be written without a fractional or decimal component. + +- boolean + 0 means off (or disabled). + 1 means on (or enabled). + +- string + An alphanumeric string of characters. See the option’s comments for acceptable values. + +### Options list + +| Option | Type | H.264 | H.265 | Detail | +|------------------|-------------|:-----:|:-----:|-----------------------------------------------------------------------------------------------------------| +| gpu-registryid | int | ✓ | ✓ | GPU selection. If set, the VideoToolbox will only use a hardware encoder running on the GPU specified by the provided GPU registryID. | +| bframes | boolean | ✓ | ✓ | Set to `1` to enable Reference B-Frames (default), `0` to disable. | +| cabac | boolean | ✓ | | Set to `1` to enable cabac, `0` to disable. Note the hyphen for H.264. | +| slice-max-size | boolean | ✓ | | Set the maximum slice size for H.264 encoding in bytes. | +| vbv-bufsize | boolean | ✓ | ✓ | Sets the size of the VBV buffer in bytes per second. | +| vbv-maxrate | boolean | ✓ | ✓ | Sets the maximum rate the VBV buffer should be assumed to refill at, in bytes per second. | +| max-frame-delay | int | ✓ | ✓ | The maximum frame delay count is the maximum number of frames that a compressor is allowed to hold before it must output a compressed frame. |