|
8 | 8 |
|
9 | 9 | # FFEncoder
|
10 | 10 |
|
11 |
| -FFEncoder is a cross-platform PowerShell script and module that is meant to make high definition video encoding workflows easier. FFEncoder uses [ffmpeg](https://ffmpeg.org/), [VapourSynth](https://www.vapoursynth.com/doc/), [Mkvtoolnix](https://mkvtoolnix.download/), [ffprobe](https://ffmpeg.org/ffprobe.html), the [x264 H.264 encoder](https://x264.org/en/), and the [x265 HEVC encoder](https://x265.readthedocs.io/en/master/index.html) to compress, filter, and multiplex multimedia files for streaming or archiving. |
| 11 | +FFEncoder is a cross-platform PowerShell script and module that is meant to make high definition video encoding workflows easier. FFEncoder uses [ffmpeg](https://ffmpeg.org/), [VapourSynth](https://www.vapoursynth.com/doc/), [Mkvtoolnix](https://mkvtoolnix.download/), [ffprobe](https://ffmpeg.org/ffprobe.html), the [x264 H.264 encoder](https://x264.org/en/), and the [x265 H.265 HEVC encoder](https://x265.readthedocs.io/en/master/index.html) to compress, filter, and multiplex multimedia files for streaming or archiving. |
| 12 | + |
| 13 | +Dynamic Metadata such as Dolby Vision and/or HDR10+ is fully supported. |
| 14 | + |
| 15 | +--- |
12 | 16 |
|
13 | 17 | - [FFEncoder](#ffencoder)
|
14 | 18 | - [About](#about)
|
@@ -125,7 +129,10 @@ FFEncoder will automatically fetch and fill HDR metadata before encoding begins.
|
125 | 129 | - Maximum Content Light Level
|
126 | 130 | - Maximum Frame Average Light Level
|
127 | 131 | - HDR10+ Metadata
|
| 132 | + - **WARNING**: Depending on the source, the metadata ordering may be incorrect after extraction. Evaluate the generated JSON file manually and use the `-HDR10PlusSkipReorder` parameter if necessary to correct this |
| 133 | + - Read [the author's documentation](https://github.com/quietvoid/hdr10plus_tool) to learn why this parameter might be required and when to use it |
128 | 134 | - Dolby Vision Metadata
|
| 135 | + - Automatically edits the generated RPU file to ensure the metadata is accurate |
129 | 136 | - Requires `x265` (mods are fine) to be available via PATH because ffmpeg still doesn't handle RPU files correctly, even in version 5. If there is more than one `x265*` option in PATH, the first option returned is selected
|
130 | 137 | - Currently, only profile 8.1 is supported due it it's backwards compatibility with HDR10
|
131 | 138 | - It is recommended to have `mkvmerge`/`mkvextract` available. The script will multiplex tracks back together after encoding
|
@@ -232,15 +239,16 @@ FFEncoder can accept the following parameters from the command line:
|
232 | 239 |
|
233 | 240 | ### Encoder Config
|
234 | 241 |
|
235 |
| -| Parameter Name | Default | Mandatory | Alias | Description | |
236 |
| -| --------------------- | ------------ | --------- | --------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | |
237 |
| -| **Encoder** | x265 | False | **Enc** | Specifies which encoder to use - x264 or x265 | |
238 |
| -| **FirstPassType** | Default | False | **PassType**, **FTP** | Tuning option for two pass encoding. See [Two Pass Encoding Options](https://github.com/patrickenfuego/FFEncoder/wiki/Video-Options#two-pass-encoding-options) for more info | |
239 |
| -| **SkipDolbyVision** | False | False | **NoDV**, **SDV** | Switch to disable Dolby Vision encoding, even if metadata is present | |
240 |
| -| **SkipHDR10Plus** | False | False | **No10P**, **NTP** | Switch to disable HDR10+ encoding, even if metadata is present | |
241 |
| -| **TestFrames** | 0 (Disabled) | False | **T**, **Test** | Integer value representing the number of test frames to encode. When `-TestStart` is not set, encoding starts at 00:01:30 so that title screens are skipped | |
242 |
| -| **TestStart** | Disabled | False | **Start**, **TS** | Starting point for test encodes. Accepts formats `00:01:30` (sexagesimal time), `200f` (frame start), `200t` (decimal time in seconds) | |
243 |
| -| **VapourSynthScript** | Disabled | False | **VSScript**, **VPY** | Path to VapourSynth script. Video filtering parameters are ignored when enabled, and must be done in the vpy script | |
| 242 | +| Parameter Name | Default | Mandatory | Alias | Description | |
| 243 | +| ------------------------ | ------------ | --------- | --------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | |
| 244 | +| **Encoder** | x265 | False | **Enc** | Specifies which encoder to use - x264 or x265 | |
| 245 | +| **FirstPassType** | Default | False | **PassType**, **FTP** | Tuning option for two pass encoding. See [Two Pass Encoding Options](https://github.com/patrickenfuego/FFEncoder/wiki/Video-Options#two-pass-encoding-options) for more info | |
| 246 | +| **SkipDolbyVision** | False | False | **NoDV**, **SDV** | Switch to disable Dolby Vision encoding, even if metadata is present | |
| 247 | +| **SkipHDR10Plus** | False | False | **No10P**, **NTP** | Switch to disable HDR10+ encoding, even if metadata is present | |
| 248 | +| **HDR10PlusSkipReorder** | False | False | **SkipReorder** | Switch to correct improper HDR10+ metadata ordering on some sources. **You must verify yourself if this is required or not** | |
| 249 | +| **TestFrames** | 0 (Disabled) | False | **T**, **Test** | Integer value representing the number of test frames to encode. When `-TestStart` is not set, encoding starts at 00:01:30 so that title screens are skipped | |
| 250 | +| **TestStart** | Disabled | False | **Start**, **TS** | Starting point for test encodes. Accepts formats `00:01:30` (sexagesimal time), `200f` (frame start), `200t` (decimal time in seconds) | |
| 251 | +| **VapourSynthScript** | Disabled | False | **VSScript**, **VPY** | Path to VapourSynth script. Video filtering parameters are ignored when enabled, and must be done in the vpy script | |
244 | 252 |
|
245 | 253 | ### Universal Encoder Settings
|
246 | 254 |
|
|
0 commit comments