Check frame rate, duration and numbering before assembling
To assemble an image sequence, set its frame rate, verify that every expected number exists, then compare the calculated duration with the imported duration. For a video, add one question: are the frames evenly spaced in time? A displayed average value does not on its own describe a variable-frame-rate source. This check prevents sped-up motion, a truncated ending or progressively drifting audio. It comes before editing and before any proxy generation; it does not require re-rendering images that are already correct.
Write down the intended duration and the destination frame rate
Start with the destination: shot duration, required frame rate and any synchronized audio. Write the exact value, for example 24, 25 or 30000/1001 frames per second. The last value is close to 29.97, but must not be replaced by 30 in a precise calculation. Keep the convention passed on by the recipient rather than rounding to make a file name simpler.
Distinguish three settings on your sheet: source frame rate, interpretation frame rate and editing sequence frame rate. An export also has its own parameters. Making them visible helps explain a discrepancy. A silent animation may be intentionally sped up; a synchronized interview requires preserving its real duration and the link between speech and picture.
Count an inclusive range without losing the last frame
For a continuous range, the number of frames is the last number minus the first number, plus one. Illustrative example: plan_1001.png to plan_1240.png contains 1240 − 1001 + 1 = 240 frames. At a constant frame rate, the presentation duration is the number of frames divided by the frame rate. The table shows three interpretations of the same collection; no calculation creates an extra frame.
At 24 frames per second, the last frame starts at 239/24 seconds and stays displayed until the end of the 10 seconds. Confusing its start time with the total duration causes a one-frame discrepancy. A player that displays the position of the last frame may therefore show a value lower than the clip duration. Compare the same start and end convention in both tools.
| Interpretation frame rate | Calculation | Duration |
|---|---|---|
| 24 frames/s | 240 ÷ 24 | 10 seconds |
| 25 frames/s | 240 ÷ 25 | 9.6 seconds |
| 30000/1001 frames/s | 240 × 1001 ÷ 30000 | 8.008 seconds |
Audit names before import
Store each shot and each revision in a separate folder. Use a stable root and a constant numbering width, for example planA_v003_1001.png. Check the first number, the last number, the file count, then missing or repeated numbers. A correct total is not enough: a missing frame and an extra file can cancel each other out in the count.
Also check dimensions and format across the whole batch; a frame from another revision must not slip in mid-sequence. The FFmpeg image2 reader documentation provides for a numbered pattern, a start number and consecutive following numbers. It documents a default input frame rate of 25 frames/s: better to supply your value intentionally than to discover after assembly that a software default decided the duration.
Interpret a frame rate or convert a duration
Interpreting the same images at another frame rate changes their playback speed. In Premiere, Assume this frame rate changes the clip duration proportionally; Adobe also notes an effect on audio. In our example, going from 24 to 25 reduces a 10-second shot to 9.6 seconds. This operation can serve a creative choice, but it is not a simple label correction.
If the 10-second duration must stay fixed at 25 frames/s, the output contains 250 time positions. You then have to choose how to produce those positions from the source: repeats, removal in other cases, blending or interpolation depending on the software and the need. Motion interpolation requires checking edges and occlusions; do not accept it only because the motion looks smoother.
Handle a variable-frame-rate source with its clock
In a VFR source, the intervals between frames can vary. Preserve its timestamps during analysis: dividing the frame count by a rounded frame rate does not necessarily reconstruct its duration. Note the frame rate mode reported by a media inspector and check the audio and video durations. A missing or ambiguous value calls for a test in your software, not an automatic conclusion.
If your pipeline requires a constant frame rate, perform a dedicated conversion before editing, keeping the source. FFmpeg in particular distinguishes timestamp conversion from CFR mode, which may repeat or drop frames to reach the requested rate. After conversion, check an audiovisual event at the beginning, the middle and near the end. A match on the first second is not enough to rule out drift.
Do a test assembly before processing the batch
Import a complete shot and confirm its frame rate in the media properties. Compare the displayed duration with the expected calculation, then step through the motion frame by frame around fast gestures and cuts. If the sequence is silent, do not look for an audio track that does not exist: add the intended sound separately and document its sync point.
Check the endpoints. Is the first frame really the one at the start number? Is the last frame present for one frame's duration? Look for accidental black, a jump or a frozen frame. If the software imports only a still image, go back to its image sequence import option. Do not try to hide a gap with a global frame rate change; first find the missing frame or explicitly decide on its replacement.
Review the export in real time, then frame by frame
Before exporting, check the selected range, frame rate, dimensions and audio settings. Adobe groups these settings in its video and audio export flow. Write them down in the delivery note so the recipient can understand the expected duration. A name containing "25fps" does not prove the file's actual setting.
Then open the exported file in a player independent of the project. Watch the shot at normal speed, then examine the flagged sections. Compare the start and end content, listen for audio continuity and check for drift. Distinguish a playback issue on your machine from an encoded defect: recheck the frames in question before re-rendering. A documented review concerns the produced file, not just the settings chosen.
Keep a record that lets you pick the shot back up
For each retained sequence, note the identifier, revision, inclusive range, exact frame rate, expected duration and any timing treatment applied. Add the exported file name and any frame replacements. This record is short, but it lets you tell an artistic decision from a data defect several days later.
A contact sheet can help you find key views; it does not validate the regularity of motion or synchronization. If the edit still feels heavy, then prepare proxies from media that has been validated for timing. To hand off the project, use the export and handoff guide. Keep the sources and the transformation applied: a constant frame rate result alone does not explain how the frames were distributed.
Your questions.
Does an image sequence already have its frame rate?+
Its file names define an order, not necessarily a playback frame rate. Keep the frame rate in the shot record and set the import explicitly.
Can I replace 23.976 with 24?+
These values correspond to different rhythms. If the source uses 24000/1001, keep that exact value when the pipeline requires it; decide on and check any conversion.
Is checking a few frames enough?+
It helps diagnose endpoints and details, but it does not cover the full motion. Also watch the entire shot and check the sound throughout its duration.