BitrateCraftHandBrake reference

BitrateCraft · Presets and operations · bitratecraft.org

Disclaimer: Independent technical documentation and configuration guide. Not affiliated with The HandBrake Team. No software downloads hosted

Troubleshooting Output and Errors

Most encode failures fall into a handful of families: an unreadable source, a settings conflict, an audio or timing problem, or an output that plays badly somewhere other than the machine that made it. The activity log is the primary instrument for all of them. This page explains how to read it and walks through the common cases, from sync drift to oversized files and playback compatibility.

Reading the activity log

HandBrake writes a running account of every stage: source scan, title selection, filter chain, encoder initialisation, and per-frame progress. Read it top to bottom. The first lines report the container and the streams found. Next comes the filter chain, which reveals whether deinterlace, crop, or scaling filters were applied at all. Then the encoder block reports the chosen codec and rate-control settings. Progress lines follow, and the failure, if any, appears where the stream stops.

Three things are worth watching. A frame rate that collapses after a few minutes points to thermal throttling or a competing process. A repeated warning about dropped frames points to a slow source device. A clean finish followed by a failed mux points to the destination, not the encoder.

Diagnostic instrument displaying a signal waveform
Diagnostics are about reading the trace, not guessing. The activity log is that trace for an encode.

Common encoder errors

Encoder initialisation failed

The selected hardware encoder is not available or the driver rejected the settings. Confirm the codec is supported by the adapter, then fall back to a software encoder to finish the job while you investigate.

No title found

The scanner could not identify a playable stream. The source may be a fragment, an incomplete copy, or a format the demuxer does not recognise. Verify the file opens in another player.

Output file is zero bytes

The job aborted before the first keyframe was written, or the destination volume filled or lost its connection. Check free space and the drive health.

Encoding stalls at a fixed percentage

Usually a stalled read from a network share or an external drive that spun down. Copy locally and re-run.

Sync and audio problems

Audio running ahead of or behind the picture is a timing problem, not an encoder problem. Causes, in rough order of frequency: a variable frame rate source treated as constant; an edit list that the container records but the encoder ignores; a source with a broken first timestamp; and a frame rate mismatch between the video stream and the container header. Fixes follow the cause. Normalise the frame rate, force the correct rate instead of detecting it, or remux to correct container metadata before encoding.

Missing audio is usually a track selection issue. Re-check that the intended audio track is enabled and that its codec is one the container supports. A channel-layout mismatch, such as a downmix that collapses surround to a single channel, is visible in the log and audible immediately.

Oversized output

An output larger than expected almost always indicates that rate control did not engage. If the quality value was set very low, the encoder will spend whatever bitrate it needs and ignore the file-size expectation, because constant-quality mode does not target a size. If a target size or average bitrate was set, confirm the value reached the encoder and that the duration reported by the scanner matches the real duration. A duration misread by a factor of two doubles the file.

SymptomLikely causeFirst check
Huge fileQuality mode used instead of size modeRate-control setting
Soft pictureBitrate starved by a targetAverage bitrate value
Blocky motionRate control reacting too slowlyLookahead and buffer

Playback compatibility

A file that plays perfectly in one player may fail everywhere else. Profile and level compliance is the usual culprit: hardware decoders enforce them strictly and will refuse a stream that a desktop player tolerates. Choose a mainstream profile such as H.264 High or HEVC Main, keep the level within the range the target device advertises, and use a container and audio codec that the device lists.

Reproduce before you repair. Re-run one short segment with the suspected setting changed. A single controlled comparison beats a dozen speculative changes.