Skip to main content

Video probe

Claude
Authored by Claude · Last updated AI generated documentation written by reading the source code
self-hosted

The video_probe job reads your movie and TV files with ffprobe, the part of FFmpeg that describes what is inside a media file, and records what it finds.

What it reads​

FactUsed for
HDR format: HDR10, HDR10+, HLG or Dolby VisionThe version label, such as 2160p HDR10, when the file name has none
Bit depthKnowing an 8-bit file from a 10-bit one
Exact codec of every track, such as hvc1.2.4.L150.B0Asking your browser whether it can play the file before it tries
Frame rateEvery container, not only Matroska
Chapters, with their start and endChapter markers in the player
Every track's language, title, and default, forced and hearing-impaired flagsThe audio and subtitle menus

Titles, descriptions, genres and embedded artwork are not part of it. Those are read the same way with or without ffprobe, so the job never changes them.

Why it exists​

Your Media Server reads video files in two ways. When ffprobe is available, indexing uses it directly. When it is not, the server reads each file's header itself, which covers everything playback needs, but not HDR, bit depth, or a frame rate for mp4 files.

The job upgrades the videos that were read the second way: a library indexed before ffprobe was installed, or a file ffprobe could not read at the time. It also re-reads videos whenever a server update changes what the job records.

When it runs​

The job starts on its own at the end of any indexing run that covered movies or TV, but only when ffprobe is available and at least one video still needs it. On a server without ffprobe it never starts, and nothing else is affected. It can also be started by hand from the Jobs page of your Media Server's Admin Dashboard.

A few files are read at the same time. Only a small part of each file is read, so a large library on a network share is upgraded quickly.

ffprobe​

The Docker image includes ffprobe. To use a different build, set FFPROBE_PATH. The job reads your files and never modifies them.

Was this article helpful?