Itemlume
Sign inCreate account

PRODUCT CREATIVE / PRODUCTION AND HANDOFF

Does an Empty FFmpeg Freeze Log Prove an Ad Moves Correctly?

No. An empty freezedetect log means no freeze event met the configured detection conditions. It does not prove that every product action moved correctly. A freeze shorter than the minimum duration may produce no event, while an intentionally static closing card may legitimately trigger detection.

01 / DOES AN EMPTY FFMPEG FREEZE LOG PROVE AN AD MOVES CORRECTLY?

Understand What Freezedetect Measures

FFmpeg's freezedetect compares the mean average absolute differences across frame components against a configured noise tolerance. It identifies sufficiently unchanged image content, not whether the advertised product behaves correctly.

The default minimum duration is two seconds. The default noise tolerance is -60 dB, equivalent to 0.001.

A freeze must satisfy both the difference threshold and duration condition. An empty log can therefore mean that the apparent freeze was too short, the tolerance was unsuitable, or no qualifying freeze occurred.

Decision branch: Before accepting an empty result, inspect the duration and noise settings alongside the intended video content.

OptionMeaning and unitsDefault
noise / nDifference tolerance, expressed in dB or as a ratio from 0 to 1-60 dB, equivalent to 0.001
duration / dMinimum qualifying freeze duration, in seconds2 seconds

Use the FFmpeg freezedetect reference to check the threshold units and event definitions.

02 / DOES AN EMPTY FFMPEG FREEZE LOG PROVE AN AD MOVES CORRECTLY?

Interpret Event Timestamps Correctly

freeze_start is reported when a qualifying freeze has lasted for the configured minimum duration. Its value identifies the beginning of that interval. The reporting frame and the reported start time are different timestamps; the duration threshold is not an absolute position measured from the beginning of the entire video.

Hypothetical timeline, not an additional executed test: if a qualifying freeze begins at timestamp 5.0 seconds and d=0.5, notification becomes possible once the interval has lasted 0.5 seconds. The reported freeze_start describes the onset near 5.0 seconds, rather than treating 0.5 seconds as the video's freeze start. Frame timing determines the actual reporting frame.

freeze_end and freeze_duration appear on the first frame after the freeze ends. If the input ends while still frozen, that following frame may not exist, leaving a start-only event. Record the event as open at end-of-file rather than inventing an end time or interpreting it as a zero-duration freeze.

03 / DOES AN EMPTY FFMPEG FREEZE LOG PROVE AN AD MOVES CORRECTLY?

Examine the Actual Synthetic Measurements

The recorded local FFmpeg 7.1 tests used three-second synthetic 160×90 inputs at 10 fps. The table reports those metadata observations; it does not establish product-motion correctness or network playback quality.

For the static input with d=0.5, the notification was recorded at frame 5, pts_time=0.5, while freeze_start was 0. This measured distinction illustrates why the notification time must not replace the interval's start time.

The static input with d=4 never reached the required duration. The moving input's result changed when n changed from -60 dB to the ratio 1, showing why an empty log or a start event must be interpreted together with the configured tolerance.

Recorded synthetic inputSettingsRecorded events
Solid blue, 3 secondsn=-60dB; d=0.5freeze_start=0; reported at frame 5 / pts_time=0.5; no freeze_end
Solid blue, 3 secondsn=-60dB; d=4No freeze events
Moving testsrc2, 3 secondsn=-60dB; d=0.5No freeze events
Moving testsrc2, 3 secondsn=1, a ratio; d=0.5freeze_start=0; no freeze_end
04 / DOES AN EMPTY FFMPEG FREEZE LOG PROVE AN AD MOVES CORRECTLY?

Illustrative Exercise: Two Merchant Review Cases

Illustrative exercise — fictional advertisement scenarios, not executed product tests.

Input A ends with an approved static product-and-price card. A detected freeze may reflect the intended hold rather than a defect.

Input B shows a product mechanism that unexpectedly stops moving before its demonstration finishes. Compare the detected interval with the approved action sequence.

Decision branch: For Input A, confirm the hold is intentional. For Input B, investigate the affected interval even if the configured detector reports nothing.

Record detection settings, metadata events, and editorial decisions separately. Automated freeze detection is supporting evidence, not a substitute for semantic review.

When an interval needs editorial repair, the short-clip edit-handles guide explains a separate check before extending an edit.

05 / DOES AN EMPTY FFMPEG FREEZE LOG PROVE AN AD MOVES CORRECTLY?

Inspect the actual measurement data

These data describe the synthetic checks scoped in the article, not real-product, publishing-platform or subjective-quality acceptance.

06 / DOES AN EMPTY FFMPEG FREEZE LOG PROVE AN AD MOVES CORRECTLY?

Freeze Review Record — Complete With Actual Observations

These are illustrative exercise rows. Save a copy and record your own observations; the example is not an executed acceptance test.

Review caseInput and settingsSuspected intervalMetadata recordPlayback observationEditorial decision
A: Intended closing hold[Fill: file/version, n with units, d in seconds][Fill: intended hold start/end][Fill: reporting timestamp, freeze_start, freeze_end/duration or open at EOF][Fill after playback: card content and observed hold][Fill: retain or change, with reason]
B: Interrupted product action[Fill: file/version, n with units, d in seconds][Fill: suspected stop start/end][Fill: actual events, including none][Fill after playback: missing or complete action][Fill: investigate, repair or retain; an empty log is not approval]

Download review worksheet (CSV)

Published by ItemlumePublished Updated Evidence and editorial policy
SOURCES & SCOPE

Sources and further reading

Recorded source-review dates are listed individually below. An undated source does not inherit the article’s publication date. Software and platform rules can change; check the current original before acting.

QUESTIONS, ANSWERED

Frequently asked questions

Why does a completely static three-second input produce no event with a four-second threshold?

The required minimum duration was not reached. An empty result under that configuration does not prove the input contained motion.

Does freeze_start without freeze_end mean a zero-duration freeze?

No. The ending metadata appears on the first frame after the freeze. If the sequence ends while frozen, that frame may never occur.

PREPARE ASSETS FOR YOUR NEXT STEP

Create supporting product assets in Itemlume.

Create new product creative assets in the workspace, then continue in your chosen tools. Third-party software procedures described in this guide take place in those applications; this workspace link does not imply an integration. Check current capabilities, account access and credit quotes.

Explore asset creation tools Check pricing and credits