Skip to content
Lisa Melton edited this page Jul 5, 2024 · 4 revisions

Video encoder and decoder configuration

The other-transcode.rb tool automatically selects a platform-specific hardware video encoder and determines target video bitrate based on the size of the input, so using it can be as simple as this:

other-transcode.rb C:\Rips\Movie.mkv

If no hardware video encoder is available, the x264 software video encoder is selected as a fallback.

The default video format is H.264 because it's available on all supported hardware encoders. It's also usually faster than encoding in HEVC format.

Encoder options

Providing your hardware supports it, you can select HEVC format with the --hevc option:

other-transcode.rb --hevc C:\Rips\Movie.mkv

Using the --hevc option with the Nvidia NVENC, Intel Quick Sync Video or x265 encoders will automatically select 10-bit output.

The 10-bit HEVC format is superior in quality to H.264 because it significantly reduces the risk of color banding.

An additional quality improvement, temporal AQ (Adaptive Quantization), is available for HEVC encoding when using Nvidia GeForce GTX 1660 or later video cards by adding the --nvenc-temporal-aq option:

other-transcode.rb --hevc --nvenc-temporal-aq C:\Rips\Movie.mkv

Because more than one hardware video encoder is often available and because software video encoders are usually available, these options can override automatic selection:

Option Encoder
--vt Apple VideoToolbox
--nvenc Nvidia NVENC
--qsv Intel Quick Sync Video
--amf AMD Video Coding Engine
--vaapi Video Acceleration API
--x264 x264 software H.264
--x265 x265 software HEVC

The x264 software video encoder has two other useful options available which can also be used together:

Option Purpose
--x264-avbr Use average variable bitrate (AVBR) ratecontrol
--x264-quick Increase encoding speed with no perceptible loss in video quality,
avoiding quality problems with some encoder presets

Decoder options

By default, hardware video decoding is only leveraged to accelerate the processing of input video formats like VC-1. Use the --decode all option and argument to process all video input formats. However, be aware that using --decode all may actually slow things down, depending on the format and the hardware available.

Clone this wiki locally